2017-01-20 15 views
0

ここに私のディレクトリ名folder_nameにいくつかのファイルをダウンロードするIAMここでは、このbashを使用してディレクトリ内のファイル数のコマンドをループする方法は?

for d in os.listdir($folder_name); do 
     echo "Running the scanner :" 
     python bd.py $folder_name/$d 
done 

のように実行bashスクリプトを使用してIAMその後、私はname.Iはこれを使用しようとした一人ひとりのファイルとして引数を取るスクリプトを実行したいです私はこのエラーを与えることができませんでした。

./test: line 29: syntax error near unexpected token `(' 
./test: line 29: `for d in os.listdir($folder_name); do' 

ループを繰り返して、各ファイルを引数としてとり、それをpythonファイルに渡す方法はありますか?

+0

私はPythonのようなBashスクリプトは見ません。 –

+0

さて、あなたは 'import os'を削除しました。あなたはまだ' os.listdir'を持っています。これはPythonのようです。 –

+0

まだ奇妙に見える – minzchickenflavor

答えて

2

おそらく、ディレクトリ内のファイルを繰り返し処理し、各ファイル名を引数としてpythonスクリプトを実行するとします。もしそうならば、単にファイル名を取得するためにグロブことだろう。

for f in /directory/*; do python bd.py "$f"; done 

実際のディレクトリ名で/directory/を交換してください。

os.listdir()は、文字列、あなたが任意のシェルでグロブ簡単なシェルで達成することができます同じものとしてディレクトリの内容を含むリストを返しますpythonosモジュールから関数です。

関連する問題