2007年12月 3日

[linux-users:107799] Re: シェルスクリプトへのファイル名の引渡し

佐藤と申します。

findを使うのはいかがでしょうか
$ find . -name "*.txt" -print
とりあえずこれだけで.txtを含むファイルをサブディレクトリを含む形で
取得できます。
これを他に渡したいときはパイプを使うか、
findから実行させることもできます。{}の中に検索されたファイル名が入ります。

$ find . -name "*.txt" -exec ls {} \;
詳しくはfindのマニュアルをご参照ください。

K.Moriyama さんは書きました:
> 森山と申します。
>
> 以下のようなスクリプトを作成して、
>
> #!/bin/sh
> for fileName
> do
> echo $fileName
> done
>
> 以下のように実行すると
>
> $ ./test.sh *.txt
>
> カレントディレクトで拡張子がtxtに成っているファイル一覧を取得して
> 表示出来るわけですが、この時、統べてのサブディレクトリ下のファイル名
> (サブディレクトリ名を含んだ形で)も引きわたす方法は無いでしょうか?
>
> # for 文に in を付けないと変数に引数が順番に渡される事が、殆どの
> # 解説書では記載されていなかったり、記載されていても、気が付き難い
> # 記載になっているのは、何とかして欲しい...
>


投稿者 xml-rpc : 2007年12月 3日 09:24
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/67137
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。