我正在尝试拆分字符串,但出了点问题。如果有人能提供建议,请告诉我。
echo -e "\e[41m## i = $i ##\e[0m"
str1=$i | cut -d'/' -f1
echo -e "\e[41m## str1 = $str1 ##\e[0m"
输出结果如下:
## i = 1000/1.0, ##
## str1 = ##
答案1
如果您使用 bash,则无需调用这样的外部命令cut
:您可以使用 shell 的内置参数扩展函数。
例如,删除以/
变量开头的最长尾随字符串str='1000/1.0'
,并将结果分配给变量str1
str1="${str%%/*}"
所以
$ str='1000/1.0'
$ str1="${str%/*}"
$ echo "$str1"
1000
看看优秀的Bash常见问题/073
答案2
我用这个解决了它:
str1=$(echo $i | cut -f1 -d'/')