AWK:从字符串/字段中删除所有空格
时间:2020-01-09 10:45:53 来源:igfitidea点击:
如何解析以下文本文件:
# example.net config user = www30021 group = ftp30020 uid = 30021 gid = 30020 tmp_path = /netapp42/shared/www/images/host.example.com/tmp.bin tmp_perms = defaults,nodev,nosuid,noexec jail = on location = /jails/apache/h/host.example.com/ sftp = on ftps = off php-cgi = on perl-cgi = off
如何找出每个字段的值,并从该字段中删除任何空格/空白。
如何在Linux或者Unix等操作系统下使用awk解决此问题?
使用以下语法读取每个字段并将其显示在屏幕上:awk -F'Field-Separator-Here''/Field-Name-Here/{print $2}'/path/to/input/file
在此示例中,为字段用户读取值,执行:
awk -F'=' '/user/{ print "|" "|"}' foo.conf
示例输出(注意空白):
| www30021 |
要除去所有不需要的空格,请执行:
awk -F'=' '/user/{gsub(" |\t","",print "|" "|"); print }' filename
示例输出(注意空白):
|www30021|
最后,awk语句将如下所示:
awk -F'=' '/user/{gsub(" |\t","",print ); print }' filename