我正在编写一个解决方案的脚本,其中,当从服务器中删除共享驱动器时,我们还需要从fstab中删除条目。
我到现在为止所做的:
MP="${ServerAddress}:${DirectoryPath} ${MountPoint} nfs defaults 0 0"
while read line; do
if [ "${MP}" = "${line}" ]; then
sed "/${line}/d"
fi
done < /etc/fstab
这将给出一个错误>>sed:1:“/servername.net…”:我需要的命令是\后跟文本
请建议对此可以删除。
注:我正在运行这个脚本的一部分,所以我不必单独运行这个。使用建议的选项运行时,我可以删除..但在脚本中,这不起作用,并导致错误。人们评论“或格式,只是我不能从那里复制,因为那是一个远程通过终端服务器。
最佳答案
请尝试以下操作:
sed -i.bak "\@^$SERVERADDR:$DIRPATH@d" /etc/fstab
在为serveraddr和dirpath设置有意义的值之后。该行还将备份旧文件(名为
fstab.bak
)。但由于/etc/fstab
是一个如此重要的文件,请确保有更多的备份方便。让我指出,你只需要那一行,没有while循环,没有脚本!