Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 用于在文件中编辑和添加条目的Shell脚本_Linux_Shell_Awk_Sed_Redhat - Fatal编程技术网

Linux 用于在文件中编辑和添加条目的Shell脚本

Linux 用于在文件中编辑和添加条目的Shell脚本,linux,shell,awk,sed,redhat,Linux,Shell,Awk,Sed,Redhat,谁能帮我在这一行的末尾加一个条目吗 这是linux操作系统 下面是文件/boot/grub2/grub.cfg的内容 ### BEGIN /etc/grub.d/10_linux ### menuentry 'Red Hat Enterprise Linux Server (3.10.0-327.el7.x86_64) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuent

谁能帮我在这一行的末尾加一个条目吗

这是linux操作系统

下面是文件/boot/grub2/grub.cfg的内容

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Red Hat Enterprise Linux Server (3.10.0-327.el7.x86_64) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        else
          search --no-floppy --fs-uuid --set=root 0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        fi
        linux16 /vmlinuz-3.10.0-327.el7.x86_64 root=UUID=75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f ro crashkernel=auto rhgb quiet LANG=en_US.UTF-8
        initrd16 /initramfs-3.10.0-327.el7.x86_64.img
}
menuentry 'Red Hat Enterprise Linux Server (0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff-advanced-75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f' {
        load_video
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        else
          search --no-floppy --fs-uuid --set=root 0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        fi
        linux16 /vmlinuz-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff root=UUID=75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f ro crashkernel=auto rhgb quiet
        initrd16 /initramfs-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff.img
}
我需要在“text1”和“text2”行的末尾添加条目

编辑后,我的文件应如下所示:

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Red Hat Enterprise Linux Server (3.10.0-327.el7.x86_64) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-327.el7.x86_64-advanced-75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        else
          search --no-floppy --fs-uuid --set=root 0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        fi
        linux16 /vmlinuz-3.10.0-327.el7.x86_64 root=UUID=75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f ro crashkernel=auto rhgb quiet LANG=en_US.UTF-8 text1 text2
        initrd16 /initramfs-3.10.0-327.el7.x86_64.img
}
menuentry 'Red Hat Enterprise Linux Server (0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff) 7.2 (Maipo)' --class red --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff-advanced-75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f' {
        load_video
        insmod gzio
        insmod part_msdos
        insmod xfs
        set root='hd0,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1'  0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        else
          search --no-floppy --fs-uuid --set=root 0ee3bceb-d7b7-4e56-ae16-a17ed5f395ea
        fi
        linux16 /vmlinuz-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff root=UUID=75a4fe9b-ade6-4db0-a19c-e2dce64b4f2f ro crashkernel=auto rhgb quiet
        initrd16 /initramfs-0-rescue-3b0570b9c0c44fd7b8426ed7d80f55ff.img
}
使用sed表达式:

sed '\~linux16 /vmlinuz-3\.10\.0-327\.el7\.x86_64~{s/$/ text1 text2/;}' /boot/grub2/grub.cfg

你能不能想出一个更简单(如中)的例子,使输入和输出之间的差别更清楚?这是相关的。@all,我想提供更多的信息。正如建议的那样,我将改进并提供最少的信息。在这种情况下,编辑
/etc/sysconfig/grub
/etc/default/grub
和添加类似
grub\u CMDLINE\u LINUX=“…text1 text2”
,然后是
grub2 mkconfig-o/boot/grub2/grub.cfg
@RomanPerekhrest,非常感谢你的回复。我想在结尾的同一行中添加文本,而不是在下一行中添加文本
sed '\~linux16 /vmlinuz-3\.10\.0-327\.el7\.x86_64~{s/$/ text1 text2/;}' /boot/grub2/grub.cfg