Sed
在 fstab 中替換 fsck 的階段
我正在尋找一些方法來替換我的 fstab 文件中的 fsck 階段,但僅限於包含特定路徑的行。
目前 fstab 看起來像這樣:
/dev/mapper/vgroot-root / xfs defaults 0 0 /dev/mapper/vgroot-home /home xfs defaults 0 0 /dev/mapper/vgroot-opt /opt xfs defaults 0 0 /dev/mapper/vgroot-var /var xfs defaults 0 0 /dev/mapper/vgapp-optapp /opt/apt xfs defaults 0 0 192.168.1.1:/app/rep_t1 /data/rep_t1 nfsrep_t1 defaults 0 0 192.168.1.1:/app/rep_t1 /data/rep_t1 nfsrep_t1 defaults 0 0
我想將階段從“0 0”更改為“1 2”,但僅適用於本地文件系統(/dev/mapper)。我怎樣才能做到這一點?目前我只能更改 1 個值,如下所示:
sed -i -e '/mapper/ s/0/1/' /etc/fstab
應該是這樣的:
/dev/mapper/vgroot-root / xfs defaults 1 2 /dev/mapper/vgroot-home /home xfs defaults 1 2 /dev/mapper/vgroot-opt /opt xfs defaults 1 2 /dev/mapper/vgroot-var /var xfs defaults 1 2 /dev/mapper/vgapp-optapp /opt/apt xfs defaults 1 2 192.168.1.1:/app/rep_t1 /data/rep_t1 nfsrep_t1 defaults 0 0 192.168.1.1:/app/rep_t1 /data/rep_t1 nfsrep_t1 defaults 0 0
你很接近:
sed -i '/mapper/ s/0 0/1 2/' /etc/fstab
如果您想了解更多資訊,請參閱這個出色的 sed 教程。