すみません、すみません、2ギガ越えに関する回答は終了かと思い、週末は掲示板に目を通しませんでした。。。 遅れ馳せながら、>>3064様、>>3061様、丁寧なご回答ありがとうございます。 ご教授いただいたOSのバージョンですが早速試してみたところ、下記の様に表示されました。 「SunOS xxxxxx 5.8 Generic_108528-13 sun4u sparc SUNW,Sun-Fire-280R」 一般的に5.8を指してソラリス8と呼んでるようですが(聞きかじりです。間違っていたらすみません)、下記は68usr様がおっしゃる「Solaris なら 7 以降 」に該当するのでしょうか? これより新しいのはソラリス9と聞いています。 ご教授ください。 山田 |
>>3064 68user > UNIX上のシェルからリモートシェルによってWindows上のbat > コマンドを実行(Windowsサーバは全て同一ディレクトリ構成・ > かつ同一batコマンドを実行) > 上記条件において、Windowsサーバをパラで動作させたいのです。 UNIX 側で rsh host1 command rsh host2 command rsh host3 command などとしているのですよね? ならば rsh host1 command & rsh host2 command & rsh host3 command & が一番簡単だと思います。 >>3066 山田 > 一般的に5.8を指してソラリス8と呼んでるようですが そうです。 >「Solaris なら 7 以降 」に該当するのでしょうか? 該当します。 Solaris の 2GB 超ファイルの扱いは、man largefile で見ることが できる largefile(5) に載っています。 http://www.freebsd.org/cgi/man.cgi?query=largefile&apropos=0&sektion=0&manpath=SunOS+5.8&format=html Solaris8 の largefile(5) には large file aware なコマンドとして compress はありますが、zip は載っていません。よって、compress なら OK、zip は NG でしょう。 >>3064 68user > Solaris なら 7 以降 (2.6 なら -largefile オプションで > 可能らしい) 手もとの Solaris 2.6 で試してみましたが、2GB 超ファイルを 作成することができました。現在のマウント状況を表す /etc/mnttab は /dev/dsk/c0t0d0s5 /opt ufs suid,rw,largefiles,... などとなっているので、Solaris 2.6 のデフォルトは 2GB 超 OK なのかな? |
はじめまして。 コマンドヒストリについてご教授願いたいことが出来まして投稿させていただきます。 ユーザがUNIXサーバへログインしたあとに実行したコマンドはヒストリファイルに記録されていると思いますが、コマンドが実行された時刻はどのファイルに記憶されるのでしょうか? 記録するための設定などがありましたらぜひご教授ください。 よろしくお願いいたします。 OS solaris 5.8 |
>>3068 児嶋 csh・tcsh なら、~/.history に #+1043136351 ls などと時刻込みで記録されています。bash なら .bash_history。 |
>>3069 68user > bash なら .bash_history。 一応確認してみましたが、bash はヒストリに時刻を記録しないみたいですね。 |
>>3070 68user csh,bash環境で確認しました。 ls等のコマンドを実行してから一度ログオフし、再度ログインしました。 そこでホーム配下の.historyおよび.bash_historyを確認しましたが何も書かれておりませんでした。 .historyの権限は644になっております。rootアカウントで実行していますので権限は問題ないかと思います。 何か、出力要否のフラグの設定があるのでしょうか? |
>>3071 児嶋 csh なら、シェル変数 history・savehist がセットされているか確認。 % set | grep hist history 1000 savehist 2000 セットされていなかったら % set history = 1000 % set savehist = 2000 など。 bash なら % set|grep -i hist HISTFILE=/home/user/.bash_history HISTFILESIZE=500 HISTSIZE=500 ここらへんですかねぇ (常用していないのでよくわかりませんが)。 |
>>3072 68user 早速実行してみました。 結果、コマンドラインは出力されましたが、時刻までは出力されませんでした。 何とか、時刻も出力させる方法はないものでしょうか? |
>>3073 児嶋 またまた誤解してました。csh は時刻を記録しないみたいですね。 というわけで、「tcsh を使う」が解でしょうか。 |
はじめまして。 考えても考えてもわからないことが ありますのでご教授下さい。 あるファイルに aaaaああああaaaa いbbbbbbbbbbbい のような行があって、 各行から2バイトの文字だけを 抜き出したいのですがどうすれば できるのでしょうか? イメージとしては上のファイルを このように出力したいのです。 ああああ いい どうしてもわからないので よろしくお願いします。 |
>>3067 68user 私もcompress→uncompressと試してみました。 解凍後のファイルサイズも一致しており、上手くいっているようです。 とても助かりました。ありがとうございます。 実はもうひとつ教えていただきたいことがありまして・・・ cshellで文字列操作は可能なのでしょうか? 下記を解決する方法があれば教えて下さい。 Q1.指定したディレクトリからファイル名を変数に取得。 Q2.上記Q1でAAA_YYYYMMDD.txtと言う名前を取得できたとして、 YYYYMMDDのみを切り出して、shell内で用意した日付と大小を 比較出来るのでしょうか? ご存知の方、教えて下さい(T_T) |
>>3074 68user ありがとうございました。 環境が整ったときにtcshで確認しようと思います。 |
親プロセスで子プロセスをforkするC言語プログラムがあります。 子プロセスは複数作成され、処理が終わると自動的に消滅します。 親プロセスで現在存在している子プロセスの数を把握したいのですが、簡単な方法はありますでしょうか。 子プロセスの数だけ分かれば良いです。 子プロセス数カウンタを設け、forkでインクリメントし、子プロセスの終了を検知してデクリメントする方法もあるかと思いますが、もっと簡単な方法があれば教えていただけますでしょうか。 よろしくお願いします。 |
>>3075 美春 考え方を変えて、日本語以外を除くとするなら % sed 's/[a-zA-Z0-9]//g' < file など。本当に日本語だけを拾いたいなら http://www.din.or.jp/~ohzaki/perl.htm#JP_Match を参考に perl でやるのがよいでしょう。 >>3076 山田 > cshellで文字列操作は可能なのでしょうか? foreach file (AAA_*.txt) set date=`echo $file | sed 's/^AAA_\([0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]\).*/\1/'` echo '$file -> $date' if ( $date < '20020114' ) then echo $date endif end 仕事や課題を丸投げされると答える側もつまらないです。質問するなら もっとおもしろい質問をしてください。 お金を払っていただけるなら、(お仕事として) つまらん質問にも 答えますけど。 >>3078 koko > 親プロセスで現在存在している子プロセスの数を把握 > したいのですが、簡単な方法はありますでしょうか。 簡単、というか適当な調べ方でよいなら、ps して、親プロセスが 自分であるプロセス一覧を取得、などがあると思いますが、 ps しているプロセスは除くとか余計な処理をしなきゃいけない と思うので、結果的にはあまり簡単じゃないと思います。 - 親がいろんな仕事をするのなら、fork するときに インクリメントして、SIGCHLD を受けるたびに デクリメント (>>2988 を参照) - 親は子の終了を待つだけなら、fork するときに インクリメントして、wait して、wait から戻って きたらデクリメント。 でいいんじゃないでしょうか。 |
>>3079 68user やはり、ご指摘の方法が妥当なところのようですね。 この方法で対応する事とします。 ありがとう御座いました。 |
>>3076 山田 ご回答ありがとうございます。 >仕事や課題を丸投げされると答える側もつまらないです。質問するなら >もっとおもしろい質問をしてください。 了解しました。 先日、ほぼ一日調査してたのですが出来なかったもので。。。 申し訳ないです。。 |
>>3067 68user うまくいきました。 本当にありがとうございました。 perlの方も挑戦してみます。 度々の質問で申し訳ありませんが、 grepの正規表現で"'"(シングルクォーテーション) を出さないようにしたいのですが、 うまくいきません。 grep '[\']' <file> だとダメみたいです。 どうすればよいのでしょうか? 初心者の質問ですみません。 よろしくお願いします。 |
>>3082 美春 grepは行単位で処理するので、シングルクォートを含む行を表示しない、 という処理は可能です。grepに-vをつけると、条件に合わない行のみを 出力するので、 % grep -v "'" filename とすればfilenameファイル内のシングルクォートを含まない行のみを 出力してくれます。 もしシングルクォートを文字単位で削除したいのであれば、 % sed -e "s/'//g" < filename とすればよいと思います。 |
No. 3083 has 感動してしまいました。 manで調べろと怒られるかと 思ったのにご丁寧に ありがとうございました。 |
こんにちは、山田です。 shellにワイルドカードを含んだ引数を文字列として渡したいのですが上手くいきません。 例えば、 aaa.sh zz*.txt や aaa.sh zz\*.txt と渡すとローカルにある対象となるtxtファイルを全て引数としてもってきてしまいます。 aaa.sh zz'\''*'.txt などとしてもダメなようです。 出来ないのでしょうか? 申しわけありませんが、教えて下さい。 |
>>3085 山田 さん、 シェルはなんでしょうか? zsh だと > echo *.txt aaa.txt bbb.txt ccc.txt > echo '*.txt' *.txt のようになりました。 |
>>3086 ふくし 様、ご回答ありがとうございます。 cshです。 やりたいことは、 aaa.sh ZZ*.txt と指定した時にshell内で、 set filename = arg[1]とし、 filenameに"ZZ*.txt"という文字列をセットしたいのです。 |
>>3087 山田 さん 下で書いたつもりだったんですが (^^;;; 引数「ZZ*.txt」全体をシングルクォート '' で囲んだらどうなります? |
>>3086 ふくし 様 >引数「ZZ*.txt」全体をシングルクォート '' で囲んだらどうなります? やはりカレントの該当するファイルが引数に入ってしまいます。 arg[1]の内容が"ZZa.txt ZZb.txt ZZc.txt"というような感じです。 んー、こまっております(^^;) |
>>3089 山田 % cat hoge set filename='*.c' echo $filename % csh -fx hoge set filename=*.c echo *.c a.c b.c c.c d.c というわけで、csh では ただの文字列として set しても、 glob 展開されます。よって、参照するたびに echo "$filename" とダブルクォートで囲むか (面倒)、あるいは set noglob で変数を展開しないようにする、と。 もっとよいのは perl や ruby などに乗り換えることです。 |
>>3089 山田 さん、 知らぬこととはいえ失礼しました。 そんな致命的な非互換があろうとは、、。 シュバング行で #! /bin/sh と書いてしまって、Bourne Shell で書き直すってのは どうでしょうね。 コマンドを手入力するのは csh 系が、 シェルスクリプトを組むのは Bsh 系がいいって聞いた気がします。 (気のせいか? ;;; もっぱら私はちょっとでも論理のあることは Perl にするのでどっちも知りませんが、、。 |
始めましてopといいます。 ・・・いきなり質問で申し訳ないのですが、 掲示板を作っていて コメントを書き込んだ後に更新をすると、 前のコメントが追加されてしまいます これを回避する為にはいったいどんなコードに 書けがよいのでしょうか? 宜しければアドバイスの程お願いします。 |
>>3092 op 書き込み後に↓こんなHTMLを表示すればいいのでは。 <html><head><title>書きこみました。</title><meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"><meta content=5 http-equiv=refresh></head><body>書きこみが終わりました。<br><br>画面を切り替えるまでしばらくお待ち下さい。<br><br></body></html> 別のページに移動させたければ、 <meta content=5 http-equiv=refresh> ではなく、 <meta content=5;URL=../homepage/index.html http-equiv=refresh> としてみる。 ・・・といった方法ではどうでしょう。 |
以前にBASIC認証の質問のご回答を頂きありがとうございました。 おかげさまで認証を行うサイトへのアクセスが出来るようになりました。 現在はPOSTが行えるクライアントを作成中です。 POST及びchunkedに関する質問ですが、 あるサイトにアクセスした際に Content-type: text/x-hdml; Charset=Shift_JIS Transfer-Encoding: chunked 省略 postmethod="post" postdata="xxxxxxx" 省略 とのレスポンスがあり print SOCKET "POST /$path HTTP/1.1\r\n"; print SOCKET "Host: $host\r\n"; print SOCKET "User-Agent等リクエストヘッダ" $message = "xxxxxxx"; $len = length($message); print SOCKET "Content-length: $len"."\r\n\r\n"; print SOCKET "$message"; にてPOSTを行っているのですが、POSTされません。 原因としてはどういった事が考えられますでしょうか。 chunkedでエンコードされ送られたデータはPOSTする際もchunkedで エンコードして送り返さなければいけないのでしょうか。 もしエンコードしたデータをPOSTしなければいけない場合はchunkedの エンコード方法をお教え下さい。 宜しくお願い致します。 |
>>3093 DQN..cc様 早速のレス有難う御座います♪ なるほど・・・。 確かにこういった処理をする掲示板なんどか見かけた事がありました 本来の意味はこういう事?だったのですね(多分 それと、また質問で恐縮なのですが リフレッシュ以外にも他の方法なんかありますかね?(^^; |
>>3095 op ここの掲示板では書き込みのたびに書き込み内容のMD5を作成し、 キャッシュしておいた最新数件分のMD5と同一の場合には記録しない、 という方式を採用しています。 詳しくはここの掲示板のソースを参照してみてください。 |
>>3094 しん >chunkedでエンコードされ送られたデータはPOSTする際もchunkedで >エンコードして送り返さなければいけないのでしょうか。 そんなことは無いです。 >もしエンコードしたデータをPOSTしなければいけない場合はchunkedの >エンコード方法をお教え下さい。 要するにデータを細切れ(例えば1024byte毎)にして、 サイズ(16進) データ サイズ(16進) データ … 0 とすればいいだけです。(see http://www.studyinghttp.net/rfc_ja/2616/sec3.html#sec3.6.1) で、解決方法ですが、とりあえずHTTP/1.0で送ってみて下さい。 それでも失敗した場合は、とりあえずチャンク周りが原因ではありません。 |
>>3096 has様 MD5ですかぁ〜レベルが一気に上がったような気がしますが、 これからさっそく勉強していきたいと思います(苦笑 ほんとにhasさん、DQN..ccさん有難う御座いました。 |
Linux User という本に5つのディストリビューションが一気に 付録についてるので慌てて買ったんですけど、 よく考えるとコレ(よく考えなくても)CD じゃなくて DVD なんですよね、、。 会社で遊んでるマシンが1個あって、ただし会社のマシン管理のヒトが バックアップしてくれないから、バックアップデバイス兼ねて この機会に DVD-RAM を入れようかなあと思ったんですが、 Linux で読める DVD-RAM ドライブってあるんでしょうかね。 じっさいにはネットワーク経由で Debian(woody)を入れたので、 もう雑誌の付録は必要なくなったんですが、、 |
>>3099 ふくし > Linux で読める DVD-RAM ドライブってあるんでしょうかね。 FreeBSD でも DVD-RAM を読み書きできるくらいですから、 できなくはないでしょうけど、具体的な機種名などは わかりません。 検索すると DVD-RAM 対応カーネルパッチが云々などと いうのが引っかかるのですが、Linux 事情に疎いので それが最新の情報なのか判断できないです。 # てゆーか、DVD-RAM どころか CD-R さえ使ったことが # ないので。 |