#!/bin/bash
string="Hellow World" echo $string
array=(aa bb cc) echo ${array[0]}
シングルクォーテーションで囲んだ文字列に変数を入れても、変数が展開されず文字列として扱われる。
ダブルクォーテーションを使用した場合は、変数内の値が展開される。
if [ 条件 ]; then 処理 elif [ 条件 ]; then 処理 else 処理 fi
数値1 -eq 数値2 (等しい)
数値1 -ne 数値2 (等しくない)
数値1 -gt 数値2 (より大きい)
数値1 -ge 数値2 (以上)
数値1 -lt 数値2 (より小さい)
数値1 -le 数値2 (以下)
文字列 (長さが0より大きければ真)
-n 文字列(長さが0より大きければ真)
!文字列 (長さが0であれば真)
-z 文字列(長さが0であれば真)
文字列1 = 文字列2 (等しい)
文字列1 != 文字列2 (異なる)
[ 条件 ] && [ 条件 ] (AND)
[ 条件 ] || [ 条件 ] (OR)
! 条件 (NOT)
for ((i=1; i<6; i++)) do echo $i done
for file in $(ls) do echo $file done
array=(1 2 3 4 5) for i in ${array[@]} do echo $i done
csvfile=test.csv IFS_BACKUP=$IFS IFS=$'\n' for line in $(cat ${csvfile}) do IFS=',' set -- $line echo $1 echo $2 echo $3 done IFS=$IFS_BACKUP
※ break — ループ処理を途中で終了する。n重ループから一挙に脱出する場合は、break n とする。
※ continue — ループ処理で処理をスキップする。n重ループ中で一挙に先頭から実行を開始するには、continue n とする。
i=1 while ((i < 6)) do echo $i ((i++)) done
while read line do echo "$line" done < ./list.txt