bash memo


#! /bin/sh                                                              # スクリプトの1行目

trap "echo 'INT signal recieved';exit" INT                              # 割り込み処理

if [ "X$1" = "X-h" -o "X$1" = "X--help" ]                               # HELP表示
then                                                                    # HELP表示
    echo "usage : $0 [-t title] [-x xwidth -y ywidth] [-o outputfile]"  # HELP表示
    echo "  -t title            : title number(default 1)"              # HELP表示
    echo "  -x xwidth -y ywidth : screen size(default 360 240)"         # HELP表示
    echo "  -o outputfile       : output filename(default dvd2mp4.avi)" # HELP表示
    exit 0                                                              # HELP表示
fi                                                                      # HELP表示

title="1"                                                               # 既定値設定(シェル変数)
xwidth="360"                                                            # 既定値設定(シェル変数)

PATH=/home/foo/bin:${PATH}                                              # 環境変数セット
export PATH                                                             # 環境変数セット

#if [ -e foo.txt ]                                                      # if文(ファイルの存在)
#while [ $# -eq 0 ]                                                     # while文(数値比較)
#while [ $# -ne 0 ]                                                     # while文(数値比較)
#while [ $# -ge 0 ]                                                     # while文(数値比較)
#while [ $# -le 0 ]                                                     # while文(数値比較)
#while [ $# -gt 0 ]                                                     # while文(数値比較)
#while [ $# -lt 0 ]                                                     # while文(数値比較)
#while [ ... -o ... ]                                                   # while文(または)
#while [ ... -a ... ]                                                   # while文(かつ)

while [ $# != 0 ]                                                       # 引数処理
do                                                                      # 引数処理
    case $1 in                                                          # 引数処理
    -t )                                                                # 引数処理
        shift                                                           # 引数処理
        title="$1"                                                      # 引数処理
        ;;                                                              # 引数処理
    -x )                                                                # 引数処理
        shift                                                           # 引数処理
        xwidth="$1"                                                     # 引数処理
        ;;                                                              # 引数処理
    * )                                                                 # 引数処理
        ;;                                                              # 引数処理
    esac                                                                # 引数処理
    shift                                                               # 引数処理
done                                                                    # 引数処理

for i in `cat ${datafile}`                                              # for文
do                                                                      # for文
done                                                                    # for文

function sub_foo {                                                      # 関数定義
    echo $1,$2,$3                                                       # 関数定義(引数1個目〜3個目表示)
}                                                                       # 関数定義

ls -al >foo.txt                                                         # stdoutリダイレクト
ls -al 2>foo.txt                                                        # stderrリダイレクト
ls -al >foo.txt 2>&1                                                    # stdout,stderrリダイレクト

source foo.sh                                                           # スクリプト読み込み
count=`expr ${count} + 1`                                               # countインクリメント

[更新] [戻る]
m-ito@myh.no-ip.org