bash - LINUX - grep 并注释掉来自 fstab 的行

标签 bash shell awk sed grep

我正在 500 多台服务器上更新 fstab。当前的 fstab 具有旧的和新的 NFS 共享行。我需要评论旧线。例如:

NFS.old - Temp File
LineA
LineB
LineC

/etc/fstab - Current
Line1
Line2
LineA
LineB
LineC
Line3
Line4

使用来自 NFS.old 的输入运行 for 循环,在/etc/fstab 中找到行并对其进行注释

/etc/fstab - Expected fstab
Line1
Line2
#LineA
#LineB
#LineC
Line3
Line4

谢谢!

最佳答案

使用 awk 你可以做:

awk 'FNR==NR {a[$0];next} ($0 in a){$0="#" $0} 1' NFS.old fstab
Line1
Line2
#LineA
#LineB
#LineC
Line3
Line4

关于bash - LINUX - grep 并注释掉来自 fstab 的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26885212/

相关文章:

regex - vim中的一个十进制数乘以一个固定的数

xml - 转换仅包含特定标签的 xml

bash - 无法运行添加到现有Docker容器的脚本

bash:如何正确地将 basename 放入字符串中?

linux - bash |计算没有 "find"的文件

python os.system 命令跳过与命令中的 awk 关联的空格 ""

html - sed HTML </>标签

linux - 过滤 10 分钟间隔内的日志行

oracle - 在命令行参数之间添加逗号

linux - bash:从函数返回退出代码并从她那里打印出来,但不是退出代码