【问题标题】:How to use awk to print every word from a whole string?如何使用 awk 打印整个字符串中的每个单词?
【发布时间】:2016-03-20 15:29:27
【问题描述】:

我声明了包含 k 个队列名称的变量(字符串),我想删除。

如何“循环”字符串并删除每个队列?

我在使用 awk 命令时遇到问题。

非常感谢!

【问题讨论】:

  • 假设您已经找到至少可以为您工作的命令 - 您是否尝试过 awk -F ' ' '{print $0}'
  • 我知道这个命令。它打印整个字符串。我希望字符串中的每个单词都单独打印。为此我可以使用什么命令?

标签: linux bash unix awk mq


【解决方案1】:

你能试试下面的命令吗?

 awk '{for(i=1;i<=NF;i++) {printf "%s ", $i}; printf "\n"}' | xargs rm

【讨论】:

  • 如何更改上述命令以将字符串中的每个单词放入一个新变量中并删除我想要的队列?
【解决方案2】:

方法有很多,我觉得最简单的应该是

$ vars="name1 name2 name3"
$ for v in $vars; do echo $v; done
name1
name2
name3

将 echo 更改为您的脚本。

【讨论】:

    【解决方案3】:

    你可以使用xargs:

    queues="q1 q2 q3 q4"
    echo ${queues} | xargs -n1 echo "Remove"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-21
      • 1970-01-01
      • 2020-04-06
      • 2015-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-26
      相关资源
      最近更新 更多