web-dev-qa-db-ja.com

ターミナルでテキストファイルを実行する

シェルでコマンドのリスト(テキストファイルから)を自動的に実行する方法があるかどうか誰かが知っていますか?

多くのスクリプト(約1000)を実行する必要があります。スクリプトはpythonにあり、それぞれ2つの引数を取ります(dir _#、およびsample#)

私が作成したテキストファイルは次のようになります...

     python /home/name/scripts/get_info.py dir_1 sample1
     python /home/name/scripts/get_info.py dir_2 sample2
     python /home/name/scripts/get_info.py dir_3 sample3
     python /home/name/scripts/get_info.py dir_4 sample4
     ...

したがって、このテキストファイルをターミナルのコマンドに引数として渡すと、自動的にジョブを実行できると思います...

前もって感謝します、

peixe

7
peixe

これは「シェルスクリプト」と呼ばれます。

これをファイルの先頭に追加します。

#!/bin/sh

次に、次のコマンドを実行します。

chmod +x filename

次に、プログラムのように実行します。

./filename

または、シェルを直接実行して、ファイル内のコマンドを実行するように指示することもできます。

sh -e filename
20
Flimzy

また、次の方法でシェルファイルを実行できます。

source filename
5
Alasmari

ファイルを実行可能にします。

chmod u+x thefile
./thefile

またはshの引数として実行します。

sh thefile
4
user610650

シェルスクリプトを書くことができます:

#! /bin/sh

python /home/name/scripts/get_info.py dir_1 sample1
python /home/name/scripts/get_info.py dir_2 sample2
python /home/name/scripts/get_info.py dir_3 sample3
python /home/name/scripts/get_info.py dir_4 sample4
...
2
Giann