将 Bourne Shell 变量传递到 cut 命令中

发布于 2024-08-20 09:08:06 字数 128 浏览 4 评论 0原文

我正在尝试执行以下操作。

foo="foo:foo1"
cc= `$foo | cut -f2 -d:`

我明白为什么这行不通,但我不知道这样做。

提前致谢。

I am trying to do the following.

foo="foo:foo1"
cc= `$foo | cut -f2 -d:`

I understand why this would not work but I am at a loss as to do this.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

尸血腥色 2024-08-27 09:08:06

试试这个:

foo="foo:foo1"
cc=`echo $foo | cut -f2 -d:`

需要进行 2 处更改:

  • 您需要回显 shell 的值
    变量 foo 然后剪切它。
  • = 周围不能有空格
    给 shell 赋值时
    多变的。

Try this:

foo="foo:foo1"
cc=`echo $foo | cut -f2 -d:`

There are 2 changes to make:

  • You need to echo the value of shell
    variable foo and then cut it.
  • You must not have white spaces around =
    when assigning a value to a shell
    variable.
枫林﹌晚霞¤ 2024-08-27 09:08:06

在伯恩,你可以使用 set。无需外部命令。

$ foo="foo:foo1"
$ IFS=":"
$ set -- $foo
$ echo $2
foo1

in bourne, you can use set. No external command needed.

$ foo="foo:foo1"
$ IFS=":"
$ set -- $foo
$ echo $2
foo1
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文