Linux(Linux Essentials)6-1.復習編1

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 LinuxRHEL
Fedora(Fedra Core)
CentOS
Scientifics Linux


・ロングリリース(常に最新版がリリース)されるもの。
Arch Linux
openSUSE


クリエイティブコモンズライセンスとは。
作者名の表示を義務付け。
営利目的での利用を禁止。
→意図に合った使用許可を利用者へ提示できる。
※略称は「CCライセンス」。全体的に厳し目。


オープンソースソフトウェアとは。
ソースコードを含んでいる。
→限定や差別をされることなく、誰でも自由に利用可能なソフトウェア。
再頒布は自由。
変更や派生物の作成を差別しない。
→技術的に中立


・MITライセンスの特徴。
コピーレフト
規制が少ない(無償で利用が可、利用に対して無保証)。


フリーソフトウェア財団によって定められたライセンス。コピーレフトの考え方を根底にして派生物にも厳しい規定をしている。
GPLGNU General Public Licence/プログラムの利用から、改変・改良、改良版を含めた再頒布を許諾しているライセンス)
コピーレフトcopyleft)とは、著作物およびその派生物についてコピーや再配布、改変を制限しない考え方のこと。