重新排序 Linux 上的主机文件

重新排序 Linux 上的主机文件

我正在寻找一个单行脚本来重新排序服务器上的主机文件

192.168.1.10    server1.domain.com server1 server1.managment

服务器上的主机名是“server1”(始终是短域)我正在寻找输出

192.168.1.10    server1  server1.domain.com server1.managment

我希望我可以在 bash 中使用 sed 或 awk 来做到这一点,但为此苦苦挣扎

答案1

简单的awk解决方案。

awk '{print $1"\t" $3 " " $2 " " $4}' /etc/hosts

我们只是交换列,awk使用空格作为标准分隔符,所以我们说打印第 1 列,然后是一个制表符,然后打印第 3 列,然后是一个空格...然后是 2 等等...

相关内容