アプリ版:「スタンプのみでお礼する」機能のリリースについて

UNIXでディレクトリAとBにある拡張子 .cblと .cpyのみをもつファイルを比較しようとしているのですが、どうすれば一番簡単にできますか?
xargsを使うことになるとはおもうのですが、ファイルを指定するうまい方法が見つかりません。
よろしくお願いします。

A 回答 (4件)

#2です。

すいません、-J はFreeBSDだけの機能でした。
(cd A; ls -1 *.cbl *.cpy)|xargs -i diff A/{} B/{}
で、linuxでもAIXでもいけると思います。

参考URL:http://publib16.boulder.ibm.com/doc_link/Ja_JP/a …
    • good
    • 0

xargs を使ってやるとすると、


(cd A;echo *.cbl *.cpy)|xargs -J % -n 1 diff A/% B
でどうでしょうか。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。
AIXなんですが、Jが unknown optionといわれてエラーとなってしまいます。

どうもいい方法がないようですね。
しょうがいなですから、スクリプトを書きます。

お礼日時:2005/04/20 09:52

ディレクトリA、Bにあるファイルで拡張子.cblと.cpy以外の拡張子を持つファイルの種類がそれ程多くないときにはGNU diffで--excludeオプション指定すれば簡単に出来そうだけど、多い場合は指定するのがつらいかな。


そうするとスクリプトを組んだ方がいいかも。

-------8<-------8<-------8<-------8<-------8<-------8<-------
% diff -v
diff - GNU diffutils version 2.7
% find . -print
.
./A
./A/a.cbl
./A/a.cpy
./A/t.txt
./A/t.html
./B
./B/a.cbl
./B/a.cpy
./B/b.cbl
./B/b.cpy
% diff -s A B
Files A/a.cbl and B/a.cbl are identical
Files A/a.cpy and B/a.cpy are identical
Only in B: b.cbl
Only in B: b.cpy
Only in A: t.html
Only in A: t.txt
% diff -s --exclude='*.txt' --exclude='*.html' A B
Files A/a.cbl and B/a.cbl are identical
Files A/a.cpy and B/a.cpy are identical
Only in B: b.cbl
Only in B: b.cpy
-------8<-------8<-------8<-------8<-------8<-------8<-------
    • good
    • 0

あてずっぽで:


diff A/*.cpy A/*.cbl B
でできたりして.
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!