[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[linux-users:76248] Re: shell scriptのforループ


At Wed, 8 Nov 2000 21:08:07 +0900,
Taketoshi Sano <kgh12351 _at_ nifty.ne.jp> wrote:
> 
> 佐野@浜松です。
> 
> In <87hf5jd2lm.wl _at_ sextant.weatherlight.org>,
>   on "Wed, 8 Nov 2000 04:06:21 +0900',
>    with "RE: shell scriptのforループ",
>  OZAWA -Crouton- Sakuro <crouton _at_ weatherlight.org> さん wrote:
> 
> > > 例えば,カレントディレクトリにある全てのzip archiveを展開する場合
> > > $ for i in `ls *zip`; do unzip $i; done
> > > と実行すると,ファイル名に空白があるファイルを処理することができ
> > > ません.
> 
> > 私だったら、上のループに限っては、
> > 
> > $ ls -1 *.zip | sed 's/^/unzip /' | sh
> > 
> > とするでしょうが。
> 
> 「B shell の for loop」という条件を無視して良いのなら
> 
>  find . -name '*.zip' -print0 -maxdepth 1 | xargs unzip
> 
> とか。
> 
>  IFS をいじるのも簡単そうですが。
> 
>  $ ls -1
> a b
> c d
> chk
>  $ for i in $(ls); do echo $i; done;
> a
> b
> c
> d
> chk
>  $ IFS='\n'; for i in $(ls); do echo $i; done;
> a b
> c d
> chk
>  $ unset IFS; for i in $(ls); do echo $i; done;
> a
> b
> c
> d
> chk
> 
> -- 
>      # (わたしのおうちは浜松市、「夜のお菓子」で有名さ。)
>     <kgh12351 _at_ nifty.ne.jp> : Taketoshi Sano (佐野 武俊)
> 
> 

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: