社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
在进行Linux 操作的时候,我们常常需要反选操作,
下面以删除文件的场景,去示例如何在Linux 命令中使用反选操作
反选操作的几种思路
1.利用 grep -v 反选操作 (推荐,支持正则表达式)
2. shopt -s extglob (打开extglob模式), 然后利用 !(filename1| filename2)
shopt 指令参考我的另一篇文章
https://blog.csdn.net/u010003835/article/details/80760946
示例
完成功能:删除目录下除了test 文件以外的其他文件以及文件夹
准备脚本
#!/bin/bash
ROOT_PATH=$(dirname $(readlink -f $0))
echo $ROOT_PATH
cd $ROOT_PATH
cd four
echo "sss" >> online
echo "sss" >> .tmp
echo "sss" >> test
mkdir five
执行脚本,初始化环境
原始目录
1.利用 grep -v 反选操作 (推荐,支持正则表达式)
示例:
rm -rf `ls -a | grep -v "^tes"
2. shopt -s extglob (打开extglob模式), 然后利用 !(filename1| filename2)
shopt -s extglob
rm -rf !(test)如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!