2007年12月13日

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

青山です。

> いや・・やってみればわかると思いますが・・。

失礼。自爆しました。


find 〜 -print0 | xargs -0


で問題ないですね。

find 〜 -print | xargs -0

の話と違うことに気がつきました。


On Thu, 13 Dec 2007 17:57:23 +0900
Hirokazu Aoyama <aoyama@xxxxx> wrote:

> 青山です。
>
> > そのためのxargsだと思うのですが。
> > xargsでもダメな場合があるのですか?
>
>
> いや・・やってみればわかると思いますが・・。
>
> シェルの制限という話をしているので、xargs以前の話です。
>
>
>
> On Thu, 13 Dec 2007 14:50:11 +0900
> "Yoshinori SATO" <redtype00@xxxxx> wrote:
>
> > 佐藤です。
> >
> > > ファイル数が多いケーだと、ファイル名を
> > > 連結した文字列長がシェルの制限を超えてしまい、そもそも動作しなく
> > > なったりしませんか?
> >
> > そのためのxargsだと思うのですが。
> > xargsでもダメな場合があるのですか?
> >
> > 07/12/13 に Hirokazu Aoyama<aoyama@xxxxx> さんは書きました:
> > > 青山です。
> > >
> > > 確かに改行があるとそうですね。
> > >
> > > 元質問者の方が空白のみを問題にしているようでしたので、
> > > つい元質問者のスクリプトと等価な動きをするような例で
> > > 出してしまいました。
> > >
> > > ところで find . -type f -name "*.txt" -print0 | xargs -0 等で
> > > 改行を分割しないようにするのは、それはそれでアドホックには
> > > 使えると思いますが、ファイル数が多いケーだと、ファイル名を
> > > 連結した文字列長がシェルの制限を超えてしまい、そもそも動作しなく
> > > なったりしませんか?
> > >
> > > 汎用ツールとして作る場合は opendir(3), readdir(3)のような手法を
> > > 最初から使う方が最終的には楽な気がします。
> > >
> > >
> > >
> > > On Thu, 13 Dec 2007 12:19:49 +0900
> > > matu <matu@xxxxx> wrote:
> > >
> > > > In message <20071212230915.fc03abcb.aoyama@xxxxx>
> > > > Hirokazu Aoyama writes:
> > > > >>> > ファイル名に空白とか改行とか入ってるかもしれないので。
> > > > >>> この空白に結構はまりました、元々はcelestiaのアドオンの設定ファイルの
> > > > >>これについては、findの-execオプションが適切でしょうが、xargsの場合でも
> > > > >>$ find . -type f -name "*.txt" | xargs -i コマンド "{}"
> > > > >>と書けば問題ないと思います。
> > > >
> > > > 「これについて」がどれを指しているのかわからないですが、
> > > > 改行が入っていた場合はそれだと分割されてしまいます。
> > > > --
> > > > 松。
> > > >
> > > >
> > >
> > >
> > >
> >
> >
> > --
> > redtype00@xxxxx
> >
> >
>
>


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




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