簡単なshellスクリプトandピット

2364 ワード

shellスクリプトは他のプログラムファイルと同じ性質であり、スクリプトによりクラスタ内の100台のマシンcopyファイルなどの繰り返し作業を省くことができる.
次にhostnameを出力shellスクリプトを作成する.
#! /bin/bash
name=`hostname`
echo hostname=$name
>>> hostname=master

1行目:bash実行ファイルであることを宣言します.一般shellスクリプトはshまたはbashコマンドで実行する.2行目:コマンドhostnameの戻り値に等しい変数nameが宣言されます.注意hostnameの両側は単一引用符ではなく、数字1の左側の記号である.引用符であれば、普通の文字列とみなされます.また.等号の両側にスペースはありません.3行目:echo出力、$の後に前に宣言した変数が表示されます.

shellファイル名


あなたのshellファイルは、接尾辞(.txt、.pyなど)を必要とせずに任意に名前を付けることができます.しかし、一般的には*と命名されます.shは、主にshellスクリプトであることを一目で見るためである.

shell格納場所


bashを実行するときにパスを覚えていれば、自分で専用のshellの保存場所を設定することができます.しかし、一般的には、みんな/usr/local/binディレクトリの下に置いています.これは約束通りで、みんなは暗黙の了解を持って自作のshellスクリプトをこのフォルダに置きます.root権限を付与する必要がある場合は、付与しましょう.

shell実行前にしなければならない仕事


shellファイルをフォルダに保存しましたが、システムにとっては普通のファイルであり、システムは誰にも実行する権利を与えません.手動で実行権をユーザーに付与する必要があります
chmod +x myshell.sh

chmodは権限を変更するために使用されます.+xは、a+xの略であり、実行権をすべての人に与えることを意味する.特定のユーザ(例えばrootユーザ、または作成する他の一般ユーザ)にのみ付与したい場合は、そのユーザに切り替えてchmod u+x myshell.shを実行する.uはuser、ユーザーの意味です.他のchmodの使い方は自分で検索してください.最後にshはあなたのshellスクリプトの名前です.

パスを入力するたびに面倒ですが、どうすればいいですか?


環境変数を設定します.環境変数のプリセットディレクトリの下で自動的にファイルが検索されます.環境変数のファイルは/etc/profile vimで開いた後、shellフォルダパスを以下の形式で書き込みます.
export PATH=$PATH: shell 

たとえば
export PATH=$PATH:/usr/myshell
/usr/local/binに格納しても環境変数を書く.
作成後、環境変数を再ロードするためにsource /etc/profileを実行する.次にshellスクリプトを自由に使用できます.また、スクリプトに/bin/bashが書かれているため、bash shell.shを必要とせずにファイル名で直接実行できます.