|
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 さえ使ったことが # ないので。 |
|
findコマンドについて教えてください。 find . -user root とするとカレントディレクトリ以下の 所有者がrootになっているファイルが引っかかるかと思い ます。 それではなくて、所有者がrootになっていないファイルを 引っ掛けたいと思うのですが、その場合findコマンドはどの ように使えばいいでしょうか? 宜しくお願いします。 |
|
>>3101 bebe > 所有者がrootになっていないファイル % find . ! -user root % find . -false -user root % find . -not -user root などなど。 FreeBSD 4.7-RELEASE のマニュアルには ! と -false と -not が 書いてあるのに % find . -not -name \*.c find: -not: unknown option となってしまう。なぜだろう。ソースを見ると -not は効きそうなんだけれども。 http://www.jp.freebsd.org/cgi/cvsweb.cgi/src/usr.bin/find/option.c http://www.jp.freebsd.org/cgi/mroff.cgi?subdir=man&man=find&dir=jpman-4.7.0%2Fman |
|
send()について教えてください。 send()にてデータを送信しようとするとperrorにて「Illegal Seek」 と返ってきます。もちろんデータも送信できていません。 この現象の原因と対処法を教えていただけないでしょうか? socketとconnectはできています。 |
|
>>3103 wataru > Illegal Seek ってことは errno が ESPIPE なのでしょうけれど、手もとにある FreeBSD と Solaris2.6/8 を見ても、send(2) が ESPIPE を返すとは書いてありませんので、 わかりません。 てゆーか、OS 名も、OS のバージョンも、エラーの起こるコード例も提示せず 質問している、あなたという人間がわかりません。 |