#変数の設定方法と使い方
variable.sh
#!/bin/sh
# シェル変数をセット
VARIABLE=variable
#シェル編数を使う
echo $VARIABLE
=> variable # 変数に設定された値が出力される
# シェル変数の設定失敗 設定時にスペースがあってはダメ
VARIABLE = space
=> VARIABLE: command not found
#シェル編数を使う
echo $VARIABLE
=> variable # 変数の再設定がされていないので、variableのまま
echo VARIABLE
=> VARIABLE # 変数呼び出し時には 「$」が必要。付いていないため、そのまま VARIABLEが出力される
クオーテーションの使い分け
復習したのでまとめておく
quote.sh
#!/bin/sh
FOO="date"
# シングル
echo '$FOO'
# => $FOO
# ダブル
echo "$FOO"
# => date
# バッククオート
echo `$FOO`
=> 2018年 2月 2日 金曜日 15時59分57秒 JST
-
シングル
変数は展開されない -
ダブル
変数は展開される -
バッククオート
コマンドが解釈される。
コマンドとして解釈できない場合は、エラーが発生する。
command not found
ファイルディスクリプタ
- 0 標準入力
- 1 標準出力
- 2 標準エラー
uniqコマンドの結果
sample.txt
sample text a
sample text line3
sample text line2
sample text line3
sample text line4
sample text line5
sample text line7
sample text line6
sample text line7
このテキストに対して uniqを使った時の結果
# 重複を取り除いて表示
cat a.txt | sort | uniq
sample text a
sample text line2
sample text line3
sample text line4
sample text line5
sample text line6
sample text line7
# 重複している行のみを表示
cat a.txt | sort | uniq -d
sample text line3
sample text line7
# 重複している行以外を表示
cat a.txt | sort | uniq -u
sample text a
sample text line2
sample text line4
sample text line5
sample text line6