sed + 从 bash 文件中删除函数
sed + delete function from bash file
我们想添加一些功能作为 rm
功能到 bashrc
,并在一些配置后删除功能 rm
所以下面首先介绍如何将函数rm
添加到bashrc
的方法
echo '
function rm
{
echo "ERROR rm command not allowed on this machine"
return 1
}
' >>/root/.bashrc
然后重新加载
source /root/.bashrc
在脚本的某些阶段,我们需要采用相反的方法 - 删除函数 rm
function rm
{
echo "ERROR rm command not allowed on this machine"
return 1
}
所以我创建了以下 sed
sed -i '1,/function/p;/}/,$p' /root/.bashrc
但我对上述方法不太满意 - 删除函数
我将不胜感激从 /root/.nashrc
中获得删除函数 rm 的更好方法
假设这是您的 bashrc 文件中唯一的 function rm
行,您最初可以干 运行
$ sed '/function rm/,/}/d' /root/.bashrc
如果满意,请添加 -i
标志。
如果上述情况属实并且您知道插入的行数,您也可以使用这种方法。
$ sed '/function rm/,+4d' /root/.bashrc
我们想添加一些功能作为 rm
功能到 bashrc
,并在一些配置后删除功能 rm
所以下面首先介绍如何将函数rm
添加到bashrc
echo '
function rm
{
echo "ERROR rm command not allowed on this machine"
return 1
}
' >>/root/.bashrc
然后重新加载
source /root/.bashrc
在脚本的某些阶段,我们需要采用相反的方法 - 删除函数 rm
function rm
{
echo "ERROR rm command not allowed on this machine"
return 1
}
所以我创建了以下 sed
sed -i '1,/function/p;/}/,$p' /root/.bashrc
但我对上述方法不太满意 - 删除函数
我将不胜感激从 /root/.nashrc
假设这是您的 bashrc 文件中唯一的 function rm
行,您最初可以干 运行
$ sed '/function rm/,/}/d' /root/.bashrc
如果满意,请添加 -i
标志。
如果上述情况属实并且您知道插入的行数,您也可以使用这种方法。
$ sed '/function rm/,+4d' /root/.bashrc