我想从后截取八位字符串,变量cid是3到8位的位置数字,截取之后想得到8位数。
cid_tmp=0000000$cid
cid_8=
第1个回答 推荐于2016-06-07
这样
user@minix-nb:~$ cid=12345678
user@minix-nb:~$ cid_tmp=0000000$cid
user@minix-nb:~$ length_cid=${#cid_tmp}
user@minix-nb:~$ cid_8=${cid_tmp:$((length_cid - 8))}
user@minix-nb:~$ echo $cid_8
12345678
user@minix-nb:~$ cid_8=${cid_tmp:$((length_cid - 9))}
user@minix-nb:~$ echo $cid_82
012345678
user@minix-nb:~$
利用bash 的变量扩展就成,要9个便减9, man bash
的 ${var:offset:length} 变量扩展本回答被提问者采纳
user@minix-nb:~$ cid=12345678
user@minix-nb:~$ cid_tmp=0000000$cid
user@minix-nb:~$ length_cid=${#cid_tmp}
user@minix-nb:~$ cid_8=${cid_tmp:$((length_cid - 8))}
user@minix-nb:~$ echo $cid_8
12345678
user@minix-nb:~$ cid_8=${cid_tmp:$((length_cid - 9))}
user@minix-nb:~$ echo $cid_82
012345678
user@minix-nb:~$
利用bash 的变量扩展就成,要9个便减9, man bash
的 ${var:offset:length} 变量扩展本回答被提问者采纳