再び探さなくても良いようにメモします。
`date '+%Y%m%d'`
紹介URL http://d.hatena.ne.jp/zariganitosh/20100921/get_file_name_ext_dir
fpath='/a/b/c.d.e'
fname_ext="${fpath##*/}" echo $fname_ext
c.d.e
fname="${fname_ext%.*}" echo $fname
c.d
fext="${fpath##*.}" echo $fext
e
fdir="${fpath%/*}" echo $fdir
/a/b
同じプロセス内で実行されるので、ディレクトリの移動をおこなうと関数の終了時にカレントディレクトリが変更される。 作業の環境変数自体をなんとかしたい場合にシェルスクリプトをつかうよりも有効なのだろうと思う。
なので、
という作りが便利なのだろう。
function myfunc() {
}
関数の内部はインデントをつかることで読みやすさが格段にアップする。
ファイルの検索結果に対していろいろ処理をしたい場合、ディレクトリ構造をそのまま保存しての処理がBSD版のcpコマンドでは難しかったりするが、下記のようにwhile read 変数名; do とすることで対処できる。
find . -type f ! -path "*a.txt" ! -path "*b.txt" ! -path "*c.txt" | while read f; do echo $f mkdir -p $mergedir/${f%/*} cp -a $f $mergedir/${f%/*} done echo "ok"
http://www.bulkitem.com/2011/09/blog-post.html
#!/bin/sh curl -O 'http://domain/1.jpg?1' & # 1M程度の画像 PID=$! curl -O 'http://domain/2.jpg?2' & # 1M程度の画像 wait $PID wait $! echo "END"