shellscript
PWD=`pwd | xargs basename` echo $PWD
ps ax | grep [j]ava | awk '{print $1}' | xargs kill
if [ 0 -eq $# ] then echo 'hogehoge' fi
すぐに忘れてしまうので…。 #!/bin/sh COUNT=100 MAX_COUNT=150 while [ $COUNT -lt $MAX_COUNT ] do echo "$COUNT" COUNT=`expr $COUNT + 1` done
デバイスを /dev/hda とした場合。 if `mount | grep -q /dev/hda` then ... fi
COMMAND 2> /dev/null
DIR_NAME=`pwd | xargs dirname` echo $DIR_NAME
sed -e 's/^\([^#].*\)/###\1/g' FILE
if [ "a" = $1 ] || [ "A" = $1 ] then echo "a or A" fi
親スクリプトで "export -f FUNCTION_NAME" する. 例: 親スクリプト: #!/bin/sh hoge () { echo "function=hoge: "$1 } echo "parent: 1" export -f hoge sh child.sh echo "parent: 5" 子スクリプト: #!/bin/sh echo "child: 2" hoge "3" echo "child: …
シェルスクリプトの一部を関数にして動作確認を行ったところ,次のように怒られてしまった. $ sh hoge.sh hoge.sh: line xx: `func-a`: not a valid identifier 原因は関数名に "-" を使っていたため.なるほどなるほど.
シェルスクリプトで変数定義ファイルを使ったことがなかったのでメモ. 以下のような内容で変数定義ファイルを作成すると(ファイル名は xxx とする), #$!/bin/sh HOGE=hoge PIYO=piyo シェルスクリプトで次のようにすると,変数定義ファイルに書かれた変…
以下は,「ファイルが存在するなら削除」. [ -e /tmp/hoge ] && rm /tmp/hoge
以下は,「引数の数が0なら」. if [ $# -eq 0 ] then ... fi