
我有兩個像這樣的字串
a=[2018:09:11-18:37:06:376476]
b=[2018:09:11-18:37:06:376446]
我想要兩個像這樣的字串
a= 20180911183706376476
b= 20180911183706376446
有人可以幫我嗎?
答案1
如果您的 shell 支援變數中的「//」替換,您可以使用
a=${a//[]:[-]/}
(請注意,在範圍表達式中,“-”應該是最後一個,“]”應該是第一個[...]
。
如果沒有,你可以使用這樣的東西:
set_trim(){ local IFS=[:-]; v=$1; set -- $2; IFS=; eval "$v=$*"; }
set_trim a "$a"
set_trim b "$b"
或者,使用sed
(效率較低,因為它必須啟動外部程式):
a=`echo $a | sed 's/[]:[-]//g'`