|
ずっと前に、 while (<>) { ... } のファイルハンドル ARGV に binmode が適用されないので、 while (<>) { ... } における ActivePerl の \r\n => \n 置換を抑制できない、 という話をしましたが、5.6 以降では binmode のかわりに use open IN=>"raw:"; だと動作するようです。PerlIOってやつですね。 |
|
>>3193 ふくし 自己レスれす。 use open IN=>":raw"; の間違いでした。 |
|
>>3185 ふくし perldoc perlre > You cannot include a literal "$" or "@" within a "\Q" sequence. An > unescaped "$" or "@" interpolates the corresponding variable, while > escaping will cause the literal string "\$" to be matched. You'll need > to write something like "m/\Quser\E\@\Qhost/". >>3192 68user > その辺の評価順序 「詳説 正規表現」のP245とか… |
|
改行コードについて質問いたします。 UNIX(HP-UX)の改行コードはLFだと思うのですが、 このコードを削除して複数行のテキストファイルを 一行にすることは可能でしょうか? |
|
>>3195 /tk > 「詳説 正規表現」のP245とか… 書いてありました。正規表現エンジンを作ってみる本だと思って 買ってみたらそうじゃなかったので、ほとんど読んでなかったり。 >>3196 天 tr -d '\n' < file perl -pe 's/\n//' < file などなど。 |
|
>>3192 68user > 普通、/var/mail/$USER などに実行結果がメールで届くはずです。 という事でしたが、何故か何も届いていませんでした。 それで、もう1度すべて見直して、ftp.shの中身を以下のようにしたら 出来ました。 ftp.sh open ftp-server user hoge passwd prompt cd data/ ascii del index.html put /home/hoge/public_html/index.html ./index.html quit なんか、putがうまく行ってなかったみたいです。それで、フルパスで 書いたら上手く行くようになりました。ここまで、書かなければならない とは、、、 ご迷惑おかけしました。 |
|
>>3192 68user 実験的な要素は強いですけど基本的に自分が使うから作ってるのでよさげなら取り込みます(笑) ってな訳で微妙に弄ってみました。 セレクトボックス以外は大体取り込んだと思います。 |
|
エンベロープを変えてメールを送る方法を超初心者向けにわかりやすく説明していただけませんか? |
|
>>3199 NPK FreeBSD 4.7-RELEASE + 昨日あたりの nightly で最新版を インストールして mozilla を再起動したところ、mozilla が 起動しなくなりました (何かを poll(2) してずっと待っている)。 ~/.mozilla/ をリネームしてみたところ起動したのですが、設定が 全部元に戻るのは避けたいので、infoseek transfer だけを削除 する方法を教えてください。 >>3200 oMH どういう環境で実現したいのか わからないので無理っす。 |
|
>>3201 68user 一応そういう事は予想していてあとゆあおうんりすくと書いたんですがね(^^; chromeの中にあるchrome.rdfからinfoseek_transferに関する項目を削除 chromeの中にあるoverlayinfoディレクトリ内navigatorディレクトリの contentの中にあるoverlays.rdfからinfoseek_transferに関する項目を削除 これでアンインストールできます。 |
|
>>3202 NPK > 一応そういう事は予想していてあとゆあおうんりすくと書いたんですがね(^^; 別にクレームをつけているわけではないです。単なる報告と質問の つもりでした。 で、アンインストールして、再度インストールしたところ正常に動いている ようです。ありがとうございました。 てゆーか、 http://ryuzi.dyndns.org/mozx/j_googlebar/index.html にちゃんと書いてありましたね。失礼しました。 |
|
いや、そういうリスクがあるので自分で治せない場合はやばいっすよ〜みたいなニュアンスで書いたんですが(^^; 別にクレームとしては受け取ってないですよ。 報告はあったほうがありがたいですし。 1.4のナイトリーは大規模な変更が行われてるようですのでたぶんこれからもこういうことがあると思います。 ですので、むしろ報告していただけるほうがありがたいです。 |
|
別々のディレクトリのファイルどうしの日付を見てファイル更新が新しければ、コピーするというスクリプトを作りたいんですけど、そのようなコマンドはありますか? |
|
もしご存知でしたら教えてください。 例) temp/aaa/bbb/ccc cccディレクトリの中に 111 222 333 と3つのファイルがあるとします。 その時に cccディレクトリに行き 「ls」コマンドを打つと 111 222 333 と表示されると思いますが この表示を以下のようにフルパスにしたい。 temp/aaa/bbb/ccc/111 temp/aaa/bbb/ccc/222 temp/aaa/bbb/ccc/333 というのが質問です。 もしご存知でしたらご教授をお願いします。 以上 よろしくお願いします。 |
|
>>3205 teru rsyncというコマンドがあるそうです。 http://www.turbolinux.co.jp/knowledge/public/178.html >>3206 awa ls | perl -nle "print \"$PWD/\$_\";" 一応動きます。 #1文字目が'/'なのをフルパスというのでは? |
|
分かる人にとっては、下らない質問かもしれませんがお分かりでしたら お願いします。あと、私はperlは全然分かりません。。。 perlで実行した内容結果がindex.htmlというHTMLファイルで出力されるの ですが、それをcronで決まった時間で実行しています。そして、その出力さ れたファイルをftpでアップしたいと考えています。しかし、以下のように cronを書くと駄目でした。 20,50 0-23/2 * * * perl hoge.pl | ftp -n < ftp.up どう駄目かというと、説明する必要ないかもしれないのですが、ftp上に置 かれるindex.htmlファイルが最新のものではなく、その前の時間のファイル になってしまうのです。(0時50分に更新すると、ファイルの時間は0時20分 のものになってしまうということです。)原因は明確的で、perlが実行され 出力される前のファイルをftpでアップしている事、にあるのは分かってい ます。ただ、その解決方法がわかりません。 perlのファイルを書き換えないと駄目なんでしょうか…。それとも、別の 方法があるのでしょうか? |
|
>>3204 NPK > そういうリスクがあるので自分で治せない場合はやばいっすよ〜 ごもっともです。精進します。 >>3205 teru もしシェルスクリプトでやるのであれば test(1) を使って if [ "$fromdir/file1" -nt "$todir/file1" ]; then cp -f $fromdir/file1 $todir/file1 fi など。 >>3208 Phantom > perl hoge.pl | ftp -n < ftp.up perl と ftp を同時に実行しているので、perl が書き換える 前に ftp で put しているのでしょう。 そもそも % command1 | command2 < file というのはおかしいです。command2 の標準入力に渡したいのは、 command1 の出力なのか、あるいは file なのかが不明確だから です。sh 系だとなぜかエラーにならないようですが、csh 系だと Ambiguous input redirect. と怒られます。 というわけで、 perl hoge.pl ; ftp -n < ftp.up でしょう。 もし hoge.pl が - 正常終了時には 0 を返す (exit(0)) - 異常終了時には 1 以上を返す という UNIX コマンドの一般的なルールに従っていて、hoge.pl が 異常終了した場合には ftp を実行したくないのであれば、 perl hoge.pl && ftp -n < ftp.up の方をお勧めします。 |
|
>>3209 68user > perl hoge.pl && ftp -n < ftp.up これで、思い通りに出来ました!有難う御座いました。 凄く単純なことにミスをしていたんですね。お恥ずかしい。 sh 系でもエラーはいて欲しいと思いました。 |
|
はじめまして。 マシン:HITACHI3050 OS:HI-UX のマシンのIPアドレスを変更したいのですが、 Hostsファイルの変更だけで大丈夫でしょうか? HP-UXのように、samコマンドみたいなものがあるのでしょうか? よろしくお願いします。 |