繁体   English   中英

修剪Awk中的前导和尾随空格

[英]Trim Leading and trailing Spaces in Awk

我有一个包含1行的文件,如下所示

 VINOTH                                                                                    |KARTHICK                                                                                       |RAVI

我正在使用以下命令删除前导空格和尾随空格,但是它不起作用。

awk '{ gsub(/^[ \t]+|[ \t]+$/, ""); print }' Input_File

请帮忙。

必需的输出。

VINOTH|KARTHICK|RAVI

您可以使用

sed 's/[ \t]*|[ \t]*/|/g;s/^[ \t]*\|[ \t]*$//g' Input_File

这里有两个正则表达式:

  • s/[ \\t]*|[ \\t]*/|/g替换所有| 包含在可选的空格中,并带有一个| (在|在正则表达式字面匹配|焦炭用作每BRE POSIX标准)
  • s/^[ \\t]*\\|[ \\t]*$//g删除行首和结尾的所有空格。 注意\\| 这是一个OR运算符(因为使用了BRE POSIX语法而退出了)。

请参阅在线演示

您能否请尝试执行以下操作(由于您的示例输入和预期输出不清楚,因此未对其进行测试)。

awk '{gsub(/^[[:space:]]+|[[:space:]]+$/,"")} 1'  Input_file

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM