目的
本文详细介绍了shell中替换和截取字符串等其他的妙用。
截断
1 | 例子:file=/dir1/dir2/dir3/my.file.txt |
记忆的方法为:
#是去掉左边, ##最后一个
%是去掉右边, %%第一个
提取
单一符号是最小匹配﹔两个符号是最大匹配。
1 | {file:0:5}:提取最左边的 5 个字节:/dir1 |
替换
1 | {file/dir/path}:将第一个 dir 提换为 path:/path1/dir2/dir3/my.file.txt |
针对不同的变量状态赋值(没设定、空值、非空值):
1 | {file-my.file.txt}: 若$file没有设定,则使用my.file.txt作返回值。(空值及非空值时不作处理) |
变量的长度
1 | {#file} |
数组运算
1 | A=(a b c def) |