Nev*_*arn 5 command-line bash text-processing
我是社区的新手,这是我的第一个问题,我希望我做对了。
我的问题:我正在学习一些网络和分析,并且有很长的 MAC 地址列表,我想使用命令行将它们放在同一个句子中,但我不知道如何。
示例: MAC 地址:
xx:xx:xx:xx:xx:xx:xx:xx
yy:yy:yy:yy:yy:yy:yy:yy
zz:zz:zz:zz:zz:zz:zz:zz
Run Code Online (Sandbox Code Playgroud)
我需要的输出:
The mac address xx:xx:xx:xx:xx:xx:xx:xx is not found - but...
The mac address yy:yy:yy:yy:yy:yy:yy:yy is not found - but...
The mac address zz:zz:zz:zz:zz:zz:zz:zz is not found - but...
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我希望你有时间帮助和原谅我的无知,我还在学习,如果我没有花一些时间搜索,我不会问。我看到人们使用 sed、awk 和 perl,但我不明白整个 linux 世界对我来说都是新的。请向我提供有关命令的一些解释,以便我下次学习如何自己做。
假设您的列表位于一个名为的文件中,file其中没有其他内容(看起来就是这种情况),您可以使用:
sed 's/.*/The mac address & is not found - but.../' file
Run Code Online (Sandbox Code Playgroud)
s/old/newold用。。。来代替new.*匹配每行任意数量的任意字符&在这里打印之前匹配的内容如果您看到所需的输出,请重复该命令(点击向上箭头查看并编辑上一个命令),>在末尾添加重定向 ( ) 到新文件,如下所示:
sed 's/.*/The mac address & is not found - but.../' file > newfile
Run Code Online (Sandbox Code Playgroud)