bash使用小计

变量拼接字符串

teststr="abcd"
echo "${teststr}efg"

这样就可以拼接字符串,输出为abcdefg

编译脚本configure参数传递

在编写批量编译工具包的脚本时,我们会设置一下环境变量,比如CPPFLAGS,但是在脚本中运行./configure,这个变量并不会传递到configure中,如果想传递,需要在configure语句前设置,加空格分开

CPPFLAGS=aaa
CPPFLAGS="$CPPFLAGS" ./configure

上面这样才会把外面的参数aaa传递到configure脚本中

字符判断

[ -n string ]

string长度是否大于零

[ -z string ]

string长度是否为零

list

list用()表示

a=()表示a是一个list
a=(1 2 3)赋值元素用空格分开,这表示有三个值是1 2 3,不用,逗号分开,逗号在这里表示正常的值

获取长度

${#a[@]}表示list的长度,也就是元素个数

获取元素

${a[0]}获取第一个元素,bash中的list也是从0开始
${a[-1]}获取倒数第一个元素,bash中的list可以从后面获取

输出所有值,list转字符串

${a[@]}或者${a[*]}会输出所有值,并且中间以空格分开,变成一个字符串

字符串转list

str="a b c d"
a=($str)

把str放入到()括号中,就转成了list

遍历list

for i in ${a[*]}; do
        echo $i
done

我们可以获取list所有值,就可以遍历

posted @ 2022-10-27 15:16  秋来叶黄  阅读(36)  评论(0编辑  收藏  举报