Memoize

BasicWerk   EC Support   Technique   Facebook  

20141012223225_Shell_Script_useful

Shell_Script_useful

 

zsh

 

<<< で文字列をあたかもその文字列が中に記載されたファイルであるかのように受け取る
 
% sed 's/ *; *$//' <<< "SELECT * FROM table  ;  "
SELECT * FROM table
 

 

for ~ in の代わりに xargs を使う

 
% ls
file_1		file_2		file_3		other_1		other_2		other_3
 
% ls | xargs -I@ echo cp @ @.bak
cp file_1 file_1.bak
cp file_2 file_2.bak
cp file_3 file_3.bak
cp other_1 other_1.bak
cp other_2 other_2.bak
cp other_3 other_3.bak
 

 

if の代わりに test コマンドと && や || を使う

 
# ディレクトリがなかったら作成
% d=sample_dir; test -d $d || mkdir $d 
% find . -type d -name $d
./sample_dir
 
# ディレクトリがあれば削除
% test -d $d && rm -d $d
% find . -type d -name $d
# no match
 

 

 


© Shin Nakamura/BasicWerk 2014