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

[linux-users:91997] shell scriptからPerl scriptへの引数の渡しについて?


佐々木と申します。

shell scriptで見付けた特定デイレクトリ下(/home/ftpuser)の全ファイルの
full pathでのリストを、Perl scriptに渡して処理しようと思っています。

xargsを用いて起動しようとしているのですが、うまく行きません。

渡される引数が、空白できられた、ファイル名のリストを想定して
Perlを書いたのですが?

Perlを debuggerで実行したところ、全ファイル名が、連結した形で
渡っているように見えます。

xargs のオプションが足りないのでしょうか? マニュアルをみたのですが?
どなたか、後教示願えませんか。宜しくお願い致します。

distributionはMiracle Linuxv2.0(Redhat7.1ベース)です。

---shell script---------------------------------------
#!/bin/bash 
find /home/ftpuser \( -type f -o -type l \) -name "*" -print  | xargs -e  /usr/local/bin/dbstore.pl 
------------------------------------------------------

-----------------Perl script(/usr/local/bin/dbstore.pl)------------------------------
#! /usr/bin/perl  -w 

while ($ARGV = shift(@ARGV)){
 print "$ARGV\n";                             ←ここで、引数として、@ARGVにファイルリストを想定していますが?
 $fullpath = $ARGV;
 @filenames = split(/\//,$fullpath);
 $filename = @filenames[@filenames-1];
 (省略)


}
------------------------------------------------------------------------------

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

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