shell指令速查

原创内容,转载请注明出处

Posted by Weakyon Blog on January 1, 2012

一 基本语法

数组

1 数组取元素
${a[0]}
2 数组计数
${#a[@]}
3 数组初始化
a=("xxx" "xxx")
4 数组追加内容
a=($a[@] "xxx")

比较

if xxx; then
    else
fi
数字之间
<       小于(需要双括号),如:(("$a" < "$b")) 
<=      小于等于(需要双括号),如:(("$a" <= "$b")) 
>       大于(需要双括号),如:(("$a" > "$b")) 
>=      大于等于(需要双括号),如:(("$a" >= "$b")) 
字符串之间把括号换成方括号[[]]即可
如果要比较多个条件,用&& ||即可,if ((xxx)) && ((yyy)) ;then xxx;fi

循环

for v in ${arr[@]}; do
done
for i in {1..10}; do
done

二 各种命令

find

1 find 返回值传给数组

arr=($(find ~ -name "vcpkg"))

2 find 指定最大深度

find ~ -name -maxdepth 5

sed

文本替换

sed -i “s/string_old/string_new/g” grep -rl string_old .
mac下
sed -i "" "s/string_old/string_new/g" grep -rl string_old .
01 Jan 2012