Bash(Shellスクリプト)のまとめ

まとめ
スポンサーリンク

言語ごとに書き方が若干異なる部分を中心にまとめています。

お試し実行環境

ブラウザでプログラミング・実行ができる「オンライン実行環境」| paiza.IO
paiza.IOはオンラインですぐにプログラミングが始められる、オンライン実行環境です。Java,Ruby,Python,PHP,Perlなど主要24言語に対応。プログラミング学習にも。

比較演算子

演算子 説明
-eq 等しい
-ne 等しくない
-gt より大きい
-ge 以上
-lt より小さい
-le 以下
if [ 1 -eq 1 ]; then
    echo “Match”
else
    echo ”Mismatch”
fi
if [ 1 -ne 1 ]; then
    echo “Mismatch”
else
    echo ”Match”
fi
演算子 意味
文字列のみ 1文字以上
-n 1文字以上
! 空文字
-z 空文字
= 等しい
!= 等しくない
moji="hoge"

if [ "${moji}" ]; then
    echo "True" 
else 
    echo "False" 
fi
moji=""

if [ ! "${moji}" ]; then
    echo "True" 
else 
    echo "False" 
fi
moji1="hoge"
moji2="fuga"

if [ "${moji1}" != "${moji2}" ]; then
    echo "True" 
else 
    echo "False" 
fi

論理演算子

演算子 説明
-a And
-o Or
! Not
if [ 1 -eq 1 -a 2 -ne 3 ]; then
    echo "True"
else
    echo "False"
fi
if [ 1 -eq 1 -o 2 -eq 3 ]; then
    echo "True"
else
    echo "False"
fi
if [ ! 1 -ne 1 ]; then
    echo "True"
else
    echo "False"
fi

繰り返し

for ((i=1; i<=10; i++)) ; do
    echo ${i}
done
for i in {1..10} ; do
    echo ${i}
done
for i in `seq 1 10`; do
    echo ${i}
done

配列

items=(
    "hoge"
    "fuga"
    "piyo"
)

for item in "${items[@]}" ; do
    echo "${item}"
done
items[0]="hoge"
items[1]="fuga"
items[2]="piyo"

for item in "${items[@]}" ; do
    echo "${item}"
done

ファイル操作

演算子 意味
-d ディレクトリならば
-f ファイルならば
-e ファイルが存在していれば
-L シンボリックならば
-r 読み取り可能ならば
-w 書き込み可能ならば
-x 実行可能ならば
-s ファイルが存在し、空でなければ
-S ファイルがソケットならば
A -nt B AがBより新しければ
A -ot B AがBより古ければ
if [ -f /workspace/exec_stderr.txt ]; then
    echo "True"
else
    echo "False"
fi
if [ -s /workspace/exec_stderr.txt ]; then
    echo "True"
else
    echo "False"
fi
ls -l /usr/bin/catman
ls -l /usr/bin/cat

if [ /usr/bin/catman -nt /usr/bin/cat ]; then
    echo "True"
else
    echo "False"
fi
for text_file_name in *.txt ;do
    echo ${text_file_name}
done
files=(`ls -1 /var`)
for file_name in "${files[@]}"; do
    echo ${file_name}
done

コメント

タイトルとURLをコピーしました