![linux 命令通过使用 /tmp 或 /home 或 tmpfs 搜索来替换文件中的路径名](https://linux22.com/image/168071/linux%20%E5%91%BD%E4%BB%A4%E9%80%9A%E8%BF%87%E4%BD%BF%E7%94%A8%20%2Ftmp%20%E6%88%96%20%2Fhome%20%E6%88%96%20tmpfs%20%E6%90%9C%E7%B4%A2%E6%9D%A5%E6%9B%BF%E6%8D%A2%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E8%B7%AF%E5%BE%84%E5%90%8D.png)
sed
我想通过或任何 Linux 命令在文件中替换如下
/dev/mapper/vgsys0-lvtmp /tmp ext4 nodev,nosuid,noexec,rw 1 2"
与以下一项
/dev/mapper/vgsys0-lvtmp /tmp ext4 defaults,rw,nosuid,nodev,noexec 1 2"
和
tmpfs /dev/shm tmpfs defaults,rw,nosuid,nodev,noexec 1 2
和
tmpfs /dev/shm tmpfs defaults,rw,noexec,nosuid,nodev 0 0
答案1
使用下面的命令,
sed -i "s|.*/dev/mapper/vgsys0-lvtmp /tmp ext4 nodev,nosuid,noexec,rw 1 2.*|/dev/mapper/vgsys0-lvtmp /tmp ext4 defaults,rw,nosuid,nodev,noexec 1 2|" filename
此命令将查找特定句子“/dev/mapper/vgsys0-lvtmp /tmp ext4 nodev,nosuid,noexec,rw 1 2”和“/dev/mapper/vgsys0-lvtmp /tmp ext4 defaults,rw,nosuid,nodev” ,noexec 1 2"
sed -i "s|.*tmpfs /dev/shm tmpfs defaults,rw,nosuid,nodev,noexec 1 2.*|tmpfs /dev/shm tmpfs defaults,rw,noexec,nosuid,nodev 0 0|" filename