【问题标题】:How to remove all white spaces from stdout input via AWK in linux [closed]如何通过Linux中的AWK从标准输出输入中删除所有空格[关闭]
【发布时间】:2020-03-28 22:16:59
【问题描述】:

我想通过使用 $awk 从 $date 的输出中删除所有空格,但不知何故它不能按预期工作,我在这里缺少什么?

date | awk '{gsub(/ *\| */,",")}1'

2020 年 3 月 28 日星期六 23:13:22 CET

【问题讨论】:

  • date | awk '{gsub(/[[:space:]]+/,",")}1'?见ideone.com/OlrHKP
  • $ 日期 | awk '{gsub(/[[:space:]]+/,",")}1' 2020 年 3 月 28 日星期六 23:21:36 CET
  • tr -d '[:space:]'
  • 请在您的问题中添加示例输入(无描述、无图像、无链接)以及该示例输入所需的输出(无评论)。
  • @RagnarLothbrok 不,见ideone.com/OlrHKP,结果是Sat,28,Mar,2020,10:12:13,PM,UTC

标签: linux awk


【解决方案1】:

对于这个sed 可能更容易

$ date | sed 's/ //g'

SatMar2819:00:12EDT2020

【讨论】:

    【解决方案2】:

    下划线设置为分隔符的解决方案:

    date | awk '{gsub(/ /,"_")}1'
    

    没有 awk 的解决方法(没有分隔符):

    date | tr -d '[:space:]'
    

    【讨论】:

    • 那个 awk “解决方案”没有意义。如果您不想要下划线,请不要输入下划线。
    猜你喜欢
    • 2012-11-23
    • 1970-01-01
    • 2018-08-29
    • 1970-01-01
    • 1970-01-01
    • 2022-12-16
    • 1970-01-01
    • 2013-11-06
    • 2013-03-18
    相关资源
    最近更新 更多