Linux如何删除指定行,用shell脚本实现
我要编写一个脚本从键盘输入一个字符串,如果在file.txt中有包含这个字符串的行则删除这些行如果不存在包含这个字符串的行则显示没有指定内容的信息应该怎么写啊...
我要编写一个脚本 从键盘输入一个字符串, 如果在file.txt中有包含这个字符串的行则删除这些行 如果不存在包含这个字符串的行则显示没有指定内容的信息
应该怎么写啊 展开
应该怎么写啊 展开
2个回答
展开全部
#!/bin/sh
FILENAME=file.txt # 可换为$1
if [ ! -f file.txt ];then
echo "$FILENAME no found"
exit 1
fi
echo -n "INPUT SOME THING: "
read
if [ ! -z ”$REPLY“ ];then
INFO=$(grep $REPLY FILENAME)
if [ ! -z "$INFO" ] ; then
sed -i -e '/$REPLY/d' FILENAME #删除只用这行就可以了
else
echo "没有指定内容的信息"
exit 1
fi
else
echo "input some thing"
exit 1
fi
exit $?
FILENAME=file.txt # 可换为$1
if [ ! -f file.txt ];then
echo "$FILENAME no found"
exit 1
fi
echo -n "INPUT SOME THING: "
read
if [ ! -z ”$REPLY“ ];then
INFO=$(grep $REPLY FILENAME)
if [ ! -z "$INFO" ] ; then
sed -i -e '/$REPLY/d' FILENAME #删除只用这行就可以了
else
echo "没有指定内容的信息"
exit 1
fi
else
echo "input some thing"
exit 1
fi
exit $?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |