はじめに
Bashスクリプトは、タスクの自動化に役立つプログラムです。スクリプトは、特定のタスクを自動的に実行するために、更新やアップグレードなど、頻繁に連携するコマンドを格納します。このようなプログラムを作成した後、ファイルを実行し、コマンドラインまたはターミナルからコマンドを実行するさまざまな方法があります。
このチュートリアルに従って、さまざまな方法を使用してBashスクリプトを実行する方法を学習してください。
前提条件
- コマンドライン/ターミナルへのアクセス( CTRL + ALT + T 。
- 基本的なLinuxターミナルコマンド。復習が必要な場合は、Linuxコマンドのチートシートを確認してください。
- Bashスクリプトファイル。
- Vi/VimやNanoなどのテキストエディタ。
shを使用してBashスクリプトを実行する
sh
を使用してBashスクリプトを実行するには 、ターミナルで次のコマンドを入力します:
sh <script name> <arguments>
例:
sh script.sh
sh
Bourne shellとして知られています 、これは古いシステムのデフォルトのコマンドラインインタプリタでした。もはやそれほど人気はありませんが、最近のUnixライクなシステムには、 / bin / shの下にインタプリタが含まれています。 。
ただし、 / bin / sh 多くの場合、別の通訳者にリンクしています。どのインタプリタをsh
で確認するか を使用して、次のコマンドを実行します:
ls -l /bin/sh
出力には、 sh
のシンボリックリンクが表示されます 通訳者。通常、DebianおよびDebianベースのシステム(Ubuntuなど)は sh
にリンクします ダッシュ 、他のシステムは bashにリンクしています 。
bashを使用してBashスクリプトを実行する
bash
を使用してBashスクリプトを実行するには 、次のように入力します:
bash <script name> <arguments>
例:
bash script.sh
bash インタプリタはBourneAgain Shellの頭字語です。 Bourne Shellの代替品 ( sh
)。インタプリタは/bin / bashにあります 。
ソースを使用してBashスクリプトを実行する
sourceコマンドは、Bashスクリプトを含む、指定されたファイルからコマンドを実行します。一般的な構文は次のとおりです。
source <path>/<file name> <arguments>
または、次を使用します:
. <path>/<file name>
例:
source script.sh
. script.sh
pathパラメーターはオプションです。その場合、コマンドは $PATH
内のディレクトリを検索します 環境変数。ただし、ファイルが $PATH
にない場合 、コマンドは現在のディレクトリでファイルを検索します。
この方法を使用して、他のBashスクリプト内でBashスクリプトを実行します。
パスを指定してBashスクリプトを実行する
スクリプトを実行する別の方法は、パスを指定することです。このメソッドを実行するには、ファイルのアクセス許可が必要です。アクセス権を変更しないと、アクセスが拒否されました エラー。
ファイルを実行可能にするには、ターミナルで次のコマンドを実行します。
chmod +x <file name>
次に、次のコマンドを使用してスクリプトを実行します。
<path to script>/<file name> <arguments>
さまざまなパス構文は、スクリプトの場所または現在の場所を想定しています。
- 絶対パスは現在の場所に関係なく機能します:
/home/kb/script.sh
- 相対パスでは、スクリプトが現在の場所にある必要があります:
./script.sh
- 省略形
$HOME
パスでは、スクリプトが / home /にある必要があります 、現在の場所に関係なく:
~/script.sh
実行可能ファイルへのアクセス許可を変更し、パスを指定することは、Bashスクリプトを実行するための最も一般的で用途の広い方法です。
引数を使用してBashスクリプトを実行する
Bashスクリプトで引数が必要な場合は、スクリプト名の後に引数を指定してください。端末からスクリプトを実行するためのすべてのメソッドは、同じ方法でユーザー入力引数を受け入れます。
例:
./script.sh Hello
bash script.sh Goodbye
複数の引数の場合は、それぞれをスペースで区切ります。
GUIを使用してBashスクリプトを実行する
GUIを使用してスクリプトを実行するには、スクリプトを実行する前にファイルエクスプローラーの動作を変更します。
そのためには:
1.ファイルを開きます 右上のアイコンをクリックします。
2.設定を選択します リストから。
3.動作をクリックします メニューのタブ。次に、何をすべきかを尋ねるを選択します 実行可能テキストファイル セクション。
4.メニューを閉じて、スクリプトファイルをダブルクリックします。いくつかのオプションを含むプロンプトが表示されます。
ターミナルで実行を選択します スクリプトを実行するオプション。
どこからでもBashスクリプトを実行する
どこからでもスクリプトを実行するには、以下の手順に従ってください。
1. .bashrcを開きます テキストエディタを使用したファイル:
vim ~/.bashrc
2.スクリプトのパスを$PATH
にエクスポートします .bashrcに次の行を追加して環境変数を設定します ファイル:
export PATH="<path to script>:$PATH"
例:
export PATH="/home/kb/scripts/:$PATH"
ファイルの最後に行を追加します。
3.変更を保存してVimを閉じます:
:wq
4. .bashrcを調達します 更新を適用するファイル:
source ~/.bashrc
5.最後に、スクリプトの名前を指定して、任意の場所からターミナルでスクリプトを実行します。
script.sh
このメソッドは、スクリプトのパスを永続的に追加し、すべてのターミナルセッションで使用できるようにします。