シェルスクリプト総合 その15at UNIX
シェルスクリプト総合 その15 - 暇つぶし2ch809:名無しさん@お腹いっぱい。
10/01/12 18:37:12
つまり要約すると「ご教授」で正しかったのですね。
全て理解できました。

810:名無しさん@お腹いっぱい。
10/01/12 19:15:58
大事なことなので二度言いましたよ

811:名無しさん@お腹いっぱい。
10/01/12 19:41:07
>>803ではありませんが・・・

パイプがあっても1 2ともにデフォルト
(パイプの左側で1 2が書き換えられていても、右側ではデフォルトに戻る)
ただし新しいfdが作られていると、その先も残ったまま。
(パイプの左側で3が作られていると、右側でも3が作られている状態)

パイプの左側では標準出力がパイプに渡される
パイプの右側ではパイプから標準入力を受け取る

コマンド置換は、最初のパイプの前までの標準出力を受け取る

これで理解できてますか?

812:名無しさん@お腹いっぱい。
10/01/12 20:32:25
>>811
違うね。

>(パイプの左側で1 2が書き換えられていても、右側ではデフォルトに戻る)

「右側ではデフォルトに戻る」のではなく、
そもそも最初からデフォルトのまま変化しない。


>ただし新しいfdが作られていると、その先も残ったまま。

パイプの左側で新しいfdが作られても、その先には無関係(残らない)。
>>803 では、あらかじめ execでfdを作っているから、
それを全体が受け継いでいるだけ。これと混同してはいけない。


>コマンド置換は、最初のパイプの前までの標準出力を受け取る

「最初のパイプの前」じゃなく、パイプラインの最後のコマンドの標準出力を受け取る


で、お約束の「ご教授しました」

813:名無しさん@お腹いっぱい。
10/01/12 21:37:11
誤教授しましたと言うべき。

814:名無しさん@お腹いっぱい。
10/01/12 22:00:01
>>812 thx
おおよそ理解しましたが、
2個目と3個目のレスが気になります。
> パイプの左側で新しいfdが作られても
新しいfdを作るにはexecしかないと思っていたのですが、これ以外で作れるのですか? ・・①
それとも、シェルから呼び出されたコマンドの中で作られたfdでは
> 無関係(残らない)
だけど、execで作っているときは受け継ぐという意味ですか?・・・・・・・・・・・・・・・・・・・・・・・・・②

それと
> それを全体が受け継いでいるだけ。
というのはそのシェル内で n>&- するまで有効という意味でよいですか?・・・・・・・・・・・・・・③
更にサブシェルにも受け継がれますか?・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・④

3個目の方は
> パイプラインの最後のコマンドの標準出力
とありますが、これはteeの標準出力ではないのですか?・・・・・・・・・・・・・・・・・・・・・・・・・・・・・⑤
(でも1>&2しているので、どうなるんだろう。teeは標準出力がなくなるので、3に書き込んだechoということなのかしら)

質問ばかりですみません。

815:名無しさん@お腹いっぱい。
10/01/12 22:02:31
④更にサブシェルにも受け継がれますか?
forkするプログラム書いたことあるのを思い出しました。
たしか親からfd受け継いだはずなので、これは受け継がれますよね。

816:名無しさん@お腹いっぱい。
10/01/12 22:23:58
>>814
だから、機種依存文字を使うなと、、

(1)exec以外でも勝手に新しいfdを使えるよ。
ただ、そのコマンド1つだけに有効になる。
(ここでいうコマンドには、サブシェルなどのコマンド群全体も含む)

(2)execでは、シェル自体のfdが変わるので、以降のコマンドすべてに影響。
(ただし、サブシェル内でexecした時はそのサブシェル内のみ)

(3)いいよ。あと、n>&-だけじゃなく、n>&mで別の値を複製しなおすと
execの影響は無関係になる。

(4)サブシェルにも受け継がれる

(5)teeの標準出力だよ。で、標準出力に出ないように 1>&2してる。
3に書き込んだechoもパイプライン全体の標準出力だからコマンド置換に取り込まれる。
teeで1>&2するのと、echoとは無関係。


817:名無しさん@お腹いっぱい。
10/01/13 18:38:41
丁寧なご説明ありがとうございます!

818:名無しさん@お腹いっぱい。
10/01/13 23:59:12
しかしほんとに「機種」依存文字なのか?

乗っかってるソフトウェア依存文字じゃないのか?
とりあえず俺は読めるし、歴史的に俺の使っている機種が
④を表示できるはずは無いのだけれど、表示出来ているわけよ。
(どのようにタイプしたらその字が出せるか解らんが、とりあえずコピペは出来る)

FreeBSD で LANG eucJP なのだが、2ちゃんねるビューワだと④が読めるし
コピペで転記できるよ。(書き方は不明)

ほんとに機種に依存するの?

819:名無しさん@お腹いっぱい。
10/01/14 00:04:36
ググレカス

820:名無しさん@お腹いっぱい。
10/01/14 00:38:24
丸数字やローマ数字を機種依存文字と呼ぶのは
おかんが家庭用ゲーム機ならPS3も360もファミコンと呼ぶのと同じで
言葉にこだわる必要はありません

821:名無しさん@お腹いっぱい。
10/01/14 00:52:50
丸数字が機種依存とか言われたのは歴史的経緯だわな
今や機種依存どころかUnicodeというれっきとした国際標準に含まれてる

2chで今更丸数字使うなっても化石じみてて何だかな

822:名無しさん@お腹いっぱい。
10/01/14 00:55:09
2chが化石Shift_JIS使ってるかぎり言われつづける

823:名無しさん@お腹いっぱい。
10/01/14 03:41:02
2chはcp932だろ

824:名無しさん@お腹いっぱい。
10/01/14 04:14:23
時代は UTF-8 ですよ

825:名無しさん@お腹いっぱい。
10/01/14 04:16:28
いまどきの機種依存文字といえば「~」かな

826:名無しさん@お腹いっぱい。
10/01/14 08:28:32
>>825
誰もがWindows-31JとShift_JISの区別を付けるようになれば
片が付くのにね……


827:名無しさん@お腹いっぱい。
10/01/14 09:05:59
うちのMacちゃんでは2chのカキコのローマ数字が化けるざんす。

828:名無しさん@お腹いっぱい。
10/01/14 09:44:45
この板の住人ならOSは関係ないってことくらい分かるだろ
MacJapaneseの代わりにWindows-31Jで処理するようなライブラリ使って
FirefoxでもChromiumでも何でもビルドすればいいだけ

829:名無しさん@お腹いっぱい。
10/01/14 21:53:24
半角カナは使ってもいいと思う

830:名無しさん@お腹いっぱい。
10/01/14 23:02:10
>>828
じゃあsafariをビルドする方法を教えてください。

831:名無しさん@お腹いっぱい。
10/01/14 23:41:43
フィルタリングプロキシを立てて
Windows_31JくさいShift_JISなページをUTF-8に変換してやるのが楽じゃないかな

832:名無しさん@お腹いっぱい。
10/01/15 00:12:46
それはクライアント側でフォントいじれよっていうのと等価では?

833:名無しさん@お腹いっぱい。
10/01/15 00:29:34
丸数字使うな。カス。と言う方が楽だしecoだな。

834:名無しさん@お腹いっぱい。
10/01/15 01:08:33
エコロジストならスレ違いネタでスレを消費しないでくれ

835:名無しさん@お腹いっぱい。
10/01/16 01:23:40
bashでif~とする時、[ と [[ ができますが
[ は 外部のtestコマンドで、[[が内部コマンドなんですよね?

[ ではなく [[ を使った方が
速度が速いのでしょうか?


836:名無しさん@お腹いっぱい。
10/01/16 01:50:26
bash の [ と test は builtin。[[ は compound command。
[[、[、外部コマンドの test の順に速い。
外部コマンドを呼んだ場合がダントツで遅くて、他の50倍ぐらい遅い。[[ と [ は大して変わらん。

837:835
10/01/16 02:16:10
お答えありがとう。


838:名無しさん@お腹いっぱい。
10/01/16 12:01:06
>>834
富豪プログラマのスレです。

839:名無しさん@お腹いっぱい。
10/01/26 12:21:42
●やりたいこと
カレントディレクトリ以下の全ファイル(レギュラーファイル,かなり大量,何百万単位)を
検索し,ファイル名,ファイルサイズ,MD5ハッシュ値を出力したい。
1ファイルにつき1行。

※効率よくやりたいのでファイルの数ごとにstatやmd5プロセスを起動する,という
ことは避けたい。

●やったこと
ファイルサイズだけ,とかMD5だけなら下記の方法で満足な早さで出力が得られます。
環境はMac OS Xです。
find . -type f | xargs stat -f '%N,%z' > outputfile.txt
find . -type f | xargs md5 $1 | sed -E 's/^MD5 \((.*)\) = (.*)/\1,\2/' > outputfile.txt

上の二つを合わせたようなことをしたいのですが,うまい方法を教えて下さい。



840:名無しさん@お腹いっぱい。
10/01/26 12:24:01
補足
各行が
ファイル名,ファイルサイズ,MD5ハッシュ値
という出力にしたいです。


841:名無しさん@お腹いっぱい。
10/01/26 12:27:06
コピペミスです。>>839の2つ目のfindは正しくは
find . -type f | xargs md5 | sed -E 's/^MD5 \((.*)\) = (.*)/\1,\2/' > outputfile.txt
でした。

842:名無しさん@お腹いっぱい。
10/01/26 12:49:51
perlかpythonかrubyで書きなよ。

843:名無しさん@お腹いっぱい。
10/01/26 12:52:31
●解答
joinすればいいだけ。

●補足
箇条書での質問は失礼

844:名無しさん@お腹いっぱい。
10/01/26 13:01:19
●傍観者の感想
ワロタ

845:名無しさん@お腹いっぱい。
10/01/26 13:31:04
pasteというコマンドがあってだな。



846:名無しさん@お腹いっぱい。
10/01/26 14:55:29
sed が起動するのは気にならないのかw

847:名無しさん@お腹いっぱい。
10/01/26 15:05:51
>>846
そりゃ、sedは1回しか起動しないし

848:名無しさん@お腹いっぱい。
10/01/26 16:46:34
次スレのテンプレに↓入れとけよ

●解答
perlかpythonかrubyで書きなよ。

849:名無しさん@お腹いっぱい。
10/01/26 16:50:45
>>848
>>1

・適した道具を判断するのも頭の重要な使い方。シェルスクリプトよりも
 RubyやPerlの方が適した仕事には素直にそちらを使いましょう。

Pythonも入れればよいわけだな。


850:名無しさん@お腹いっぱい。
10/01/26 16:52:39
で、今回の質問の場合 perlもpythonもruby関係なくて、
joinかpasteで済む問題だったわけだが、、

851:名無しさん@お腹いっぱい。
10/01/26 17:03:54
join, pasteは中間ファイルを作るわけだが、数百万ファイルになるとかなりのオーバーヘッドになる。
実行時間はファイルIOが支配的なのでインタプリタが消費するCPUは隠される。

従ってLLでの実装を勧めたわけだが、初心者にはわからないらしい。覚えておく事だ。

852:名無しさん@お腹いっぱい。
10/01/26 17:35:37
>>851
中間ファイルを作らずにnamed pipeでやる方法を知らない初心者らしい、、

853:名無しさん@お腹いっぱい。
10/01/26 18:31:25
この件では I/O にかかる時間でいちばん支配的なのは
find, md5, stat,(+ join を使う場合は sort)であって、
中間ファイルを使うことによるオーバーヘッドなんぞ誤差にしかならんよ。


854:名無しさん@お腹いっぱい。
10/01/26 18:34:04
中間ファイルって、MS-DOSじゃないんだから・・・

855:名無しさん@お腹いっぱい。
10/01/26 18:40:42
find × 2 → named pipe → paste

で、中間ファイルなしでメデタシメデタシ

856:名無しさん@お腹いっぱい。
10/01/26 19:28:25
一部のシェルの
diff <(command) <(command2)
みたいなのは中間ファイル作るのかしらん?


857:名無しさん@お腹いっぱい。
10/01/26 19:30:24
>>856
だから、それが named pipeなんだよw

858:名無しさん@お腹いっぱい。
10/01/26 19:31:07
mknod で作らなくてもいいのかー


859:名無しさん@お腹いっぱい。
10/01/26 22:34:39
findは全てのファイルにstatかけるのを知らない初心者? w

860:名無しさん@お腹いっぱい。
10/01/26 22:37:15
っつーか >>839>>842 をそれぞれ時間計測して比べりゃすむ話だろ
漏れは後者の勝ちだと思う


861:名無しさん@お腹いっぱい。
10/01/26 22:38:26
>>854-855
パイプのIOは発生するだろ。バカ。

862:名無しさん@お腹いっぱい。
10/01/26 22:38:31
漏れww

863:名無しさん@お腹いっぱい。
10/01/27 00:35:27
2ch初心者発見。

漏れ、とかで煽られても、、、
半年ROMってれば。

864:名無しさん@お腹いっぱい。
10/01/27 00:52:28
2ch上級者(;´Д`)

865:名無しさん@お腹いっぱい。
10/01/27 01:11:09
今時漏れなんて使わねぇよw

866:名無しさん@お腹いっぱい。
10/01/27 06:54:47
>>839 自身、find×2 を個別に実行した状態で
「満足な早さで出力が得られます」
と言っているのだから、それがすべて。
問題はそこじゃなくて、2つの出力を効率良くまとめる方法が質問点。
で、そのベストアンサーはpaste。

867:名無しさん@お腹いっぱい。
10/01/27 11:51:49
自演乙

868:名無しさん@お腹いっぱい。
10/01/27 12:54:46
>>866
負け犬の何とか…

869:名無しさん@お腹いっぱい。
10/01/27 13:17:04
>>859
ここではstatは問題にならないんだよ、初心者クン

>>860
>後者の勝ちだと思う
「思う」だけじゃ間違ったことでも言えてしまうねw

>>861
パイプのI/Oでは物理I/Oは発生しないんだよ、初心者クン

870:名無しさん@お腹いっぱい。
10/01/27 13:26:19
>>869
前言撤回? w

871:名無しさん@お腹いっぱい。
10/01/27 13:28:37
>>870
良く良め。869 は 「named pipe+paste の方が速い」という主張を一貫してしてるぞ

872:名無しさん@お腹いっぱい。
10/01/27 13:40:18
(1)シェルスクリプトでの多少高度な質問がなされる

(2)「それはPerlかPythonかRuby使った方が速い」と誰かが投稿

(3)別の人からシェルスクリプトでのマトモな回答が投稿される

(4)質問者、傍観者とも納得

(5) (2)が発狂 ← 今ココ

873:名無しさん@お腹いっぱい。
10/01/27 13:50:58
>>871 アルツハイマー?

>>853
> find, md5, stat,(+ join を使う場合は sort)であって、

874:名無しさん@お腹いっぱい。
10/01/27 13:53:01
>>869>>853 じゃないよ。

875:名無しさん@お腹いっぱい。
10/01/27 13:57:01
>>853 が言ってる statは、xargsから起動されるstatコマンドのことであって、
find内部のstatのことじゃないだろ。

876:名無しさん@お腹いっぱい。
10/01/27 14:22:00
LL:
ディレクトリ読み込み 1回
stat(i-node読み込み) ファイル個数
MD5 ファイル個数
出力

paste:
ディレクトリ読み込み 2回
stat(i-node読み込み) ファイル個数×3
MD5 ファイル個数
中間ファイル(パイプ)書き出し/読み込み
出力

ファイル数が多くてiノードのキャッシュは期待できない。
MD5はCでの実装もあるから、インタープリターのオーバー
ヘッド見込んでも、おそらくLLの方が速いね。

877:名無しさん@お腹いっぱい。
10/01/27 14:26:16
>>876
はいはい、「おそらく」と書いとけば何でも言えるねw

perl/python/ruby自体のオーバーヘッド(結構大きい)も良く考えて出直してね

878:名無しさん@お腹いっぱい。
10/01/27 14:31:44
マルチコアなCPU環境だと、
同じことやる場合でもパイプで複数のプロセスに分けた方がかえって速かったりする

879:名無しさん@お腹いっぱい。
10/01/27 14:48:09
議論してる時間で問題を解決してしまった人の勝ち。


880:名無しさん@お腹いっぱい。
10/01/27 15:07:26
>>877
ぷぷっ。そのレスはそのまま返してやるよ。w

881:名無しさん@お腹いっぱい。
10/01/27 15:11:54
find ->(パイプ)-> md5
の場合、ファイル1個あたりにかかる時間はmd5の方がはるかに大きく、
find自体の動作はmd5の実行の裏プロセス(別CPU)で行なうから、
findの実行時間はすべてmd5の実行時間内に吸収されてしまって、
結局findの時間は無関係になる。

例: sleep 1 | sleep 10 ってやると、10秒で終了する。
左側のsleep 1は無関係になる。

もう1本のfindの、
find ->(パイプ)-> statコマンド
の方は、find->md5の方よりはるかに速いから、
2つのfindを名前付きパイプでpasteに接続する場合、
実行速度は遅い方の上流パイプであるmd5だけによって決まる。

よって、stat云々は一切関係なくなり、
名前付きパイプ+pasteが高速で動作する。

882:名無しさん@お腹いっぱい。
10/01/27 15:18:31
LLが遅いと因縁つけてる奴は実測して証拠出せよ。w

883:名無しさん@お腹いっぱい。
10/01/27 15:34:47
>>860が言うようにtimeで計測すれば済む話なのになぜ誰もやらないのか
あ、俺はrubyとか知らないからパスね^^
誰かfindとperl/python/rubyでベンチ取ってよ

884:名無しさん@お腹いっぱい。
10/01/27 16:40:18
適当に試してみたよ URLリンク(pastebin.com)
$ time test.bash >/dev/null
real 1m50.762s
user 0m17.992s
sys 0m4.473s
$ time test.py >/dev/null
real 1m49.994s
user 0m19.045s
sys 0m5.523s

885:名無しさん@お腹いっぱい。
10/01/28 01:38:29
>>884
そのPythonのソースだと、各ファイルに対してstat()が最大3回呼ばれるのかな

886:名無しさん@お腹いっぱい。
10/01/28 01:58:11
ま、どう考えてもMD5sum取る部分のI/O律速になるので
stat()の回数減らしたところで誤差程度だろうけど

887:名無しさん@お腹いっぱい。
10/01/28 03:34:55
1000倍以上違うだろうね

888:名無しさん@お腹いっぱい。
10/01/28 11:54:30
>>839
> find . -type f | xargs stat -f '%N,%z' > outputfile.txt
> find . -type f | xargs md5 $1 | sed -E 's/^MD5 \((.*)\) = (.*)/\1,\2/' > outputfile.txt

findは -print0でxrgsに渡し、xargsは -0で受け取るようにしましょう。

> find . -type f -print0 | xargs -0 stat -f '%N,%z' > outputfile.txt
> find . -type f | xargs -0 md5 | sed -E 's/^MD5 \((.*)\) = (.*)/\1,\2/' > outputfile.txt

URLリンク(www.otsune.com)

889:名無しさん@お腹いっぱい。
10/01/28 17:51:27
こんなのfind + perl のワンライナーでいいじゃん
> find . -type f -print | perl -l0ne 'use Digest::MD5 qw(md5_hex);$s=-s $_;print $_ ." $s " . md5_hex($_) ."\n"'

890:名無しさん@お腹いっぱい。
10/01/28 18:10:27
>>889
アフォか、ファイル名の md5 計算してどうする www

891:名無しさん@お腹いっぱい。
10/01/28 18:13:23
>>888
日記だからある意味しょうがないのだが。そういう古臭いページなんとかならないもんかね。

892:名無しさん@お腹いっぱい。
10/01/28 18:22:57
>>890
おー、いまperldocしたら 
calculate the MD5 digest of this "message"
ってかいてあったwwはずかしいwwwしぬかも

893:名無しさん@お腹いっぱい。
10/01/28 19:05:07
>>891
どこがどう古臭いんだ?

894:名無しさん@お腹いっぱい。
10/01/28 19:22:17
今書くなら「xargs捨てろ。 -exec {} +使え」

895:名無しさん@お腹いっぱい。
10/01/28 19:22:36
>>894
一緒じゃないの?

896:名無しさん@お腹いっぱい。
10/01/28 20:27:35
-exec だと正しく受け取れないファイルがある。
-print0 |xargs -0のほうが安全

897:名無しさん@お腹いっぱい。
10/01/28 21:09:21
へー知らんかった

898:名無しさん@お腹いっぱい。
10/01/28 21:11:42
>>896
原理的に有り得ないんだけど。

899:名無しさん@お腹いっぱい。
10/01/28 21:13:42
どっちだよ気になるだろ

900:名無しさん@お腹いっぱい。
10/01/28 21:37:46
-exec の + ターミネータ(;でなく)を知らないで答えていたりしてな。


901:名無しさん@お腹いっぱい。
10/01/28 21:52:49
それにしても「正しく受け取れない」は原理的にない。

902:名無しさん@お腹いっぱい。
10/01/28 22:08:06
いや、あるから -0 オプションが後から追加されたんですが。

903:名無しさん@お腹いっぱい。
10/01/28 22:08:48
って、xargs じゃなくて find の方か。ならないや。ごめん。


904:名無しさん@お腹いっぱい。
10/01/28 22:17:25
結局>>896は本当なのかどうなのか答えてくれ
つまり実際に-exec +だと受けとれないファイルがあるのか
それとも単に-exec ;と-exec +を混同してただけなのか

それと>>894の-exec +のほうが良いという根拠は何だ?
-print0 | xargs -0じゃいかんのか?

このままじゃ気になって寝れやしない

905:名無しさん@お腹いっぱい。
10/01/28 22:42:34
>>904
> それと>>894の-exec +のほうが良いという根拠は何だ?
exec +がある環境ならxargsはレガシーコマンド。webで解説する必要は無い。

そもそも、exec +が無い環境がレガシー。 xargsはジジイの胸の奥にしまっておいてくれ。

906:名無しさん@お腹いっぱい。
10/01/28 22:49:15
GNU findutilsにxargs付いてくるじゃない

907:名無しさん@お腹いっぱい。
10/01/28 22:51:58
ジジイの懐古趣味

908:名無しさん@お腹いっぱい。
10/01/29 01:55:18
xargs がいつobsolete になったの?
なんか文書ある?

909:名無しさん@お腹いっぱい。
10/01/29 12:12:24
-exec + のデメリット
コマンドに渡すファイルの数を制御できない(xargs -n)
並列実行できない(xargs -P)

-exec + のメリット
find でひっかかったファイルが存在しなければコマンドが実行されない
(GNU xargs は入力がゼロでもなぜか1回は実行する; xargs -r で抑制可)

つーか、
ps ax | awk '/なんか条件/{print $1}' | xargs -r kill
みたいに find とは無関係に使う場合も多いから、obsolete のはずがない。


910:名無しさん@お腹いっぱい。
10/01/29 16:58:01
findの-execはひとつひとつ実行するから遅いだろ。
grep /dev/null というバッドノウハウもアレだけど。(-h使えって?)

911:名無しさん@お腹いっぱい。
10/01/29 17:01:35
>>910
find -exec + の 「+」の意味を理解していない方は発言を御遠慮ください

912:名無しさん@お腹いっぱい。
10/01/30 09:34:03
>>910
レガシーちゃんキター

913:名無しさん@お腹いっぱい。
10/01/30 09:38:13
MacのTimeMachineのようなことをするスクリプトを教えて

914:名無しさん@お腹いっぱい。
10/01/30 10:01:33
pdumpfs
Rubyスクリプトだけどな。


915:名無しさん@お腹いっぱい。
10/01/30 20:34:25
> -exec utility [argument ...] {} +
> Same as -exec, except that ``{}'' is replaced with as many path-
> names as possible for each invocation of utility. This behaviour
> is similar to that of xargs(1).

うおっ。-execに+なんて何時からあったんだ。

916:名無しさん@お腹いっぱい。
10/01/30 20:41:41
URLリンク(www.gnu.org)

GNU findutils 4.2ぐらいからか

917:名無しさん@お腹いっぱい。
10/01/30 21:09:21
-exec {} + テンプレに入ってるじゃねえかww

918:名無しさん@お腹いっぱい。
10/01/30 22:00:29
ほんとだ。テンプレにあるな。
>findは -exec command {} + を推奨。
>他に -print0、xargsは -0オプションという方法もあるがSolaris非対応)

まるで -exec + ならば solaris でも使えるように書いてあるが、
実際は使えなかったような記憶が…


919:名無しさん@お腹いっぱい。
10/01/31 02:34:28
>>913
URLリンク(wikis.sun.com)

920:名無しさん@お腹いっぱい。
10/01/31 20:50:42
>>918
URLリンク(docs.sun.com)

921:名無しさん@お腹いっぱい。
10/01/31 21:09:07
>>920
そのマニュアル、肝心なところを誤訳してるね。
日本語訳マニュアルは信用してはいけない。

922:名無しさん@お腹いっぱい。
10/01/31 21:19:36
sunでもあるんだな。日本誤訳マニュアル

923:名無しさん@お腹いっぱい。
10/02/01 01:46:35
原語は技術者が書いてても
翻訳は非技術者に丸投げだからね


924:名無しさん@お腹いっぱい。
10/02/02 23:57:42
このスレ参考にファイル数が膨大なディレクトリで
paste -d, <(find $i -type f -exec stat -f '%N,%z' {} +) \
<(find $i -type f -exec md5 {} + | sed -E 's/^MD5 \(.*\) = (.*)/\1/') \
> output.txt
やったら
find: fts_read cannot allocate memory
出ました。Mac OSX

なぜ? find のバグ?

925:名無しさん@お腹いっぱい。
10/02/03 00:03:47
libftsのバグじゃね?


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch