前面的同学等一等 2023-07-11 00:54 采纳率: 0%
浏览 13

用字符串 \n 作为 awk中每行的分隔符怎么做

有一串字符串 ab\ncd。我希望将其分为 ab 和cd 两个子字符串该怎么做
下面的代码该怎么改
echo "ab\ncd" | awk '{split($0, x, "\n"); print x[1] x[2]}'

我期待的输出是 ab cd

  • 写回答

1条回答 默认 最新

  • 「已注销」 2023-07-11 08:08
    关注

    感觉合适麻烦采纳下,谢谢
    要在awk中使用字符串"\n"作为分隔符,你需要对字符串进行转义。在awk中,表示换行符的转义序列是"\n",而不是直接使用"\n"字符串。
    修改后的代码:

    echo -e "ab\ncd" | awk -F "\\n" '{print $1, $2}'
    

    在这个命令中,使用-e选项启用了echo的转义功能,使得"\n"被解释为换行符。然后,使用-F选项将"\n"作为分隔符传递给awk,并使用$1和$2分别打印第一个和第二个子字符串。

    输出:

    ab cd
    
    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 7月11日

悬赏问题

  • ¥15 有偿求苍穹外卖环境配置
  • ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,
  • ¥20 Ue4.26打包win64bit报错,如何解决?(语言-c++)
  • ¥15 clousx6整点报时指令怎么写
  • ¥30 远程帮我安装软件及库文件
  • ¥15 关于#自动化#的问题:如何通过电脑控制多相机同步拍照或摄影(相机或者摄影模组数量大于60),并将所有采集的照片或视频以一定编码规则存放至规定电脑文件夹内
  • ¥20 深信服vpn-2050这台设备如何配置才能成功联网?
  • ¥15 Arduino的wifi连接,如何关闭低功耗模式?
  • ¥15 Android studio 无法定位adb是什么问题?
  • ¥15 C#连接不上服务器,