我有一个字符串写着'Far-mers-market‘。我需要所有的连字符首先消失,然后提取前8个字符到一个变量。
s1='Far-mers-market'
s2=Farmersm发布于 2017-08-11 22:28:49
您可以使用${string//substring/replacement}替换字符串s1中的-,其中在replacement之前省略/表示删除。然后在管道中应用cut命令,以获取带有-c标志的前8个字符,并列出字符位置(在本例中为1-8)
s1='Far-mers-market'
s2=$(echo ${s1//-} | cut -c 1-8)
echo $s2发布于 2017-08-12 18:49:37
避免以有效的方式扩展字符串:
s1='* -$(ps)-$(pwd)'
s2="${s1//-}"
s2="${s2:0:8}"
echo "${s2}"https://stackoverflow.com/questions/45637171
复制相似问题