我有以下bash脚本提出异常:“cut:option需要一个参数 - 'f'”。
它会从/ etc / passwd中删除第5列,用':'字符分隔。
我应该如何将$变量传递给选项的参数?
variable=5; cut -d':' -f$variable < /etc/passwd
当$variable
为空时你得到这个:
$ variable=
$ cut -d: -f$variable </etc/passwd
cut: option requires an argument -- 'f'
Try 'cut --help' for more information.
2意见建议:
$ cut -d : -f "$variable" </etc/passwd
cut: fields are numbered from 1
Try 'cut --help' for more information.
为避免这种情况,请使用
set -o nounset
然后,如果variable
未设置你将收到
bash: variable: unbound variable