繁体   English   中英

bash:“ cut”命令字段分隔符

[英]bash: 'cut' command field separator

count=1;echo "Hello Bash"| cut -d" " -f$count

上面的命令给出了错误说明:“ 尝试'cut --help'了解更多信息。

该错误是由于在字段分隔符(-f $ count)中使用了变量“ $ count”。

字段分隔符是否不允许使用变量? 这是剪切命令的问题,还是我缺少了什么?

PS:我正在使用Linux Kernel 2.3版

问题的原因很可能与外壳相关。 在用分号分隔的复合命令中扩展变量时,某些旧shell实际上可能存在错误,即,给定赋值的变量可能在同一行上以旧值扩展:

count=1;echo "Hello Bash"| cut -d" " -f$count  ## $count may still be empty here 
echo "$count"  ## already 1

不知何故管道也可能是一个因素。

当然,如果echo "Hello Bash"| cut -d" " -f1 echo "Hello Bash"| cut -d" " -f1实际上有效。 如果不是它cut这就是被指责。 也许您需要在-d-f之后的参数前添加空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM