我正在尝试编写一个脚本,该脚本将检查以“kernel”开头的每行的/boot/grub/grub.conf的内容,如果它不包括该行中的“nousb”,它会将其添加到最后。检查多行并将字符串添加到末尾
默认情况下,我的grub.conf有两行内核,我的脚本第一次工作,并将“nousb”应用到两行的末尾。但是,为了测试从第一行删除nousb并将其保留在第二行的场景,我的脚本将认为它应用于两行,而不是将其重新应用到第一行。以下是我有
grep -w 'nousb' /boot/grub/grub.conf || sudo sed -i '/^\s*kernel/ s/$/ nousb/' /boot/grub/grub.conf
我想它“nousb”添加到内核开始任何行缺少它,不管有多少行有它了。有什么想法吗?
只是向人们展示,我上面的脚本会在文件中添加nousb到两行具有以下:
kernel word1 word2
kernel word3 word4
但不是这样的:
kernel word1 word2
kernel word3 word4 nousb