我有一个字符串说'Far-mers-market'。我需要先删除所有连字符,然后将前 8 个字符提取到变量中。
s1='Far-mers-market'
s2=Farmersm
您可以使用${string//substring/replacement}
替换字符串 s1 中的-
,其中省略/
replacement
表示删除。然后在管道中应用cut
命令以获取带有-c
标志的前 8 个字符并列出字符位置(在本例中为 1-8(
s1='Far-mers-market'
s2=$(echo ${s1//-} | cut -c 1-8)
echo $s2
避免以有效的方式扩展字符串:
s1='* -$(ps)-$(pwd)'
s2="${s1//-}"
s2="${s2:0:8}"
echo "${s2}"