Linux_Shell/Linux 删除指定文件之外的文件
在进行Linux 操作的时候,我们常常需要反选操作,下面以删除文件的场景,去示例如何在Linux 命令中使用反选操作反选操作的几种思路1.利用 grep -v 反选操作 (推荐,支持正则表达式)2. shopt -s extglob (打开extglob模式), 然后利用 !(filename1| filename2)shopt 指令参考我的另一篇文章示例完成功能:删除目录下除了tes
·
在进行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)更多推荐
已为社区贡献7条内容
所有评论(0)