2011-12-20 9 views
4

Mac端末でコマンドのキューを実行したい。一連のコマンドを含むファイルを準備し、そのファイルを端末経由で提出することは可能ですか?たとえば... commands.txtはいくつかのコマンドを1行に1つずつ含まれていますターミナル(OS X)、ファイルからのコマンドのキュー

./executable_file -f sub_a 100 
./executable_file -f sub_b 100 
./executable_file -f sub_c 100 
./executable_file -f sub_d 100 
... 

私はそれをどのように行うことができますか?

答えて

7

多分私はあなたを誤解しているかもしれませんが、これはシェルスクリプトファイルの典型的なケースのようです。

"myscript.sh"というファイルを作成し、それにコマンドを追加します。最初の行を作成する

#!/bin/sh 

OS Xにファイルの処理方法を教えてください。次に実行可能ファイル(chmod + x myscript.sh)をマークし、./myscript.shごとに実行します。

これはすべきことです。

+0

はい、これは私の質問に答えているようです。私はそれを試してみる。 – Stingery

2

これは、これらのコマンドを含むシェルスクリプトで実行できます。通常、延長は.shcommands.txtではなくcommands.shとなります)。

bash commands.shを使用して実行できます。

さらに、ファイルの最初の行が#!/bin/bashで、実行可能にする場合は(chmod 755 commands.shなど)、直接このファイルを実行する必要があります。./commands.sh

#で始まる行(または、#以降の行)は必要に応じてコメントになります。ここで

は、いくつかのチュートリアルがあります:

ありのbash以外のシェルがあまりにもありますが、bashはOSX(/bin/shと同じ)上のデフォルトである:それは何ですすでに端末内で実行されています。これは、Linuxディストリビューションの数でもデフォルトです。

+0

##!/ bin/bashを追加した理由とチュートリアルへのリンクについては、+1を参照してください。 –

1

はい。これはシェルスクリプトと呼ばれ、Terminal.app自体ではなく、シェルの関数です(変更しない限り、おそらくbashです)。

があるシェルスクリプトに関するウェブ上の無数の資源であるが、基本的な形で、ちょうどラインでファイルを開始

#!/bin/bash 

コマンドchmod +x commands.txtとそれを実行可能にし、ファイルの中であなたのコマンドを置きます実行する順序。 (.txtの拡張子を使用すると、完全に合法ですが、少し混乱する可能性があります)。