1‐1から5‐4までの中から間違えやすい点を復習します。
今回は復習するのは以下
・シェル変数と環境変数
・Linuxのディストリビューション
■シェル変数と環境変数
・シェル変数と環境変数の違い。
→シェル変数:変数を設定したシェル。
→環境変数:変数を設定したシェルと、以降起動するシェル・コマンド・アプリケーション。
・PATH環境変数への設定。
→「export PATH=値:$PASH」または「export PATH=$PASH:値」
・シェル変数を環境変数として設定するには。
→export シェル変数
・環境変数TESTに値Ping-tを設定するには。
→export TEST=Ping-t
※シェル変数と環境変数を区別すること。
・変数「TESTA」に値「Ping-t」が入力された状態で「echo "$TESTA"」を実行する。
→ダブルクォーテーションで囲んであるので、中の値「Ping-t」が出力される。
※'$TESTA'とシングルクォーテーションで囲んだ場合は、文字列として「$TESTA」が出力される。
※`$TESTA`とバッククォーテーションで囲んだ場合は、変数の場合は中の値「Ping-t」が出力される(それ以外はコマンドの実行結果)。
・シェル変数TESTの値をスクリプトtest,shで扱うには。
→実行時に「source test.sh」でシェルスクリプトを読み込んで実行する。
→exportコマンドでTESTを環境変数にする。
・現在のシェルにシェル変数「TEST」が設定されている。変数「TEST」の値をシェルスクリプト「test.sh」で扱いたい時の方法。
→exportコマンドで変数「TEST」を環境変数にする。
※環境変数はスクリプトの実行方法に関わらず参照される。
→スクリプトの実行時に「source test.sh」とする。
※現在のシェル変数もスクリプトで参照される(bashでは参照されない)。
・シェルスクリプト「test.sh」に「echo $TEST」が記載されている。
この「test.sh」に実行権を与えた後「TEST="Test"」を設定して「./test.sh」を実行したら結果はどうなる。
→何も出力されない、
※スクリプト(起動したシェル)内で完結して、直前で設定した値は反映されないため(bashコマンドと同じ)。
・環境変数を引き継いだまま別ユーザーへ切り替える。
→su 別ユーザー
※「su -」ではないので注意。
・シェルスクリプトについて。
→1行目にシェバンが記述されている。
→実行権(x)を設定して、コマンドで実行できる。
・カレントディレクトリ内の全ファイルを表示するには。
for f in ./* ←※「変数f」にカレントディレクトリのファイルを代入
do
echo $f ←※「echo $変数」の書式で出力する
done ←※先頭の「for」へ戻る。
・test,shに「echo $TEST」が設定されている場合、ここで「TEST="Test"」を実行後に「./test.sh」を実行したら。
→何も出力されない。
※bashコマンドとして実行されるため「TEST="Test"」で設定した値は反映されないため。
※sourceコマンドで実行するなら反映される。あるいは「export TEST」を環境変数に設定したなら反映される。
■Linuxのディストリビューション
・RedHat系のディストリビューション。
→Red Hat Enterprise Linux(RHEL)
→Fedora(Fedra Core)
→CentOS
→Scientifics Linux
・ロングリリース(常に最新版がリリース)されるもの。
→Arch Linux
→openSUSE
・クリエイティブコモンズライセンスとは。
→作者名の表示を義務付け。
→営利目的での利用を禁止。
→意図に合った使用許可を利用者へ提示できる。
※略称は「CCライセンス」。全体的に厳し目。
・オープンソースソフトウェアとは。
→ソースコードを含んでいる。
→限定や差別をされることなく、誰でも自由に利用可能なソフトウェア。
→再頒布は自由。
→変更や派生物の作成を差別しない。
→技術的に中立。
・MITライセンスの特徴。
→非コピーレフト型。
→規制が少ない(無償で利用が可、利用に対して無保証)。
・フリーソフトウェア財団によって定められたライセンス。コピーレフトの考え方を根底にして派生物にも厳しい規定をしている。
→GPL(GNU General Public Licence/プログラムの利用から、改変・改良、改良版を含めた再頒布を許諾しているライセンス)
※コピーレフト(copyleft)とは、著作物およびその派生物についてコピーや再配布、改変を制限しない考え方のこと。