此题问题虽小,但是初学者还是很难给出合理的答案的!本文来自老男孩21期网络班学员

面试题:删除一个目录下的所有文件,但保留一个指定文件解答:
假设这个目录是/xx/,里面有file1,file2,file3..file10  十个文件
[root@oldboy xx]# touch file{1..10}
[root@oldboy xx]# ls
file1  file10  file2  file3  file4  file5  file6  file7  file8  file9方法一:find
[root@oldboy xx]# ls
file1  file10  file2  file3  file4  file5  file6  file7  file8  file9
[root@oldboy xx]# find /xx -type f ! -name "file10"|xargs rm -f
[root@oldboy xx]# ls
file10[root@oldboy xx]# find /xx -type f ! -name "file10" -exec rm -f {} \;
[root@oldboy xx]# ls
file10这两种一个通过xargs传参,一个通过find的-exec执行命令参数来完成,都算作find吧
#感谢两位热心师兄还有老男孩老师的热心解答 C组副组长--张耀 北京-吴晓宇老男孩老师点评:此法最佳!必会方法!方法二:rsync
[root@oldboy xx]# ls
file1  file10  file2  file3  file4  file5  file6  file7  file8  file9
[root@oldboy xx]# rsync -az --delete --exclude "file10" /null/ /xx/
[root@oldboy xx]# ls
file10老男孩老师点评:此法为锦上添花,加分项!方法三:开启bash的extglob功能(此功能的作用就是用rm !(*jpg)这样的方式来删除不包括号内文件的文件)
[root@oldboy xx]# shopt -s extglob
[root@oldboy xx]# ls
file1  file10  file2  file3  file4  file5  file6  file7  file8  file9
[root@oldboy xx]# rm -f !(file10)
[root@oldboy xx]# ls
file10
第三种方法同样感谢热心的师兄 北京-张重生Net
老男孩老师点评:此法没啥用,讲出来反而会让人觉得你水平不行,一看就是搜索出来的,但是作为知识研习是可以的!此法面试答出来有可能是减分项!再补充两种方法(20150802 来自老男孩教育25期课堂)
方法四:
find ./ -type f|grep -v "\boldboy1\b"|xargs rm -f方法五:
rm -f `ls|grep -v "\boldboy1\b"`从运维角度,任何删除性的操作都应该事先备份后在执行或者确认有备份存在。

linux面试题:删除一个目录下的所有文件,但保留一个指定文件相关推荐

  1. linux把文件移到当前目录下,松勤软件测试-如何用Linux将一个文件移动到另一个目录下...

    原标题:松勤软件测试-如何用Linux将一个文件移动到另一个目录下 用mv命令进行操作 1.作用 mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中.该命令等同于DOS系统下的ren和mov ...

  2. 关于linux系统遍历一个目录下所有文件的代码原理以及代码

    11.23 这段时间一直在写linux系统内核的代码,刚开始就在linux文件系统这儿纠了好久,直到现在,说不会写吧!写了好几版了,也生成exe了,说会写吧,代码一跑,哦豁,没达到自已想要的效果,就是 ...

  3. java复制文件的4种方式及拷贝文件到另一个目录下与删除单个文件和删除整个文件夹

    文章目录 1.使用FileStreams复制 2.使用FileChannel复制 3.使用Commons IO复制 4.使用Java7的Files类复制 5.下面看下java拷贝文件到另一个目录下的实 ...

  4. Linux和Windows的遍历目录下所有文件的方法对比

    首先两者读取所有文件的方法都是采用迭代的方式,首先用函数A的返回值判断目录下是否有文件,然后返回值合法则在循环中用函数B直到函数B的返回值不合法为止.最后用函数C释放资源. 1.打开目录 #inclu ...

  5. 7.python 移动目录下的文件至另一个目录下

    # srcfile 需要复制.移动的文件 # dstpath 目的地址import os import shutil from glob import globdef mymovefile(srcfi ...

  6. 输出一个目录下的目录树

    android NDK说白了,就是在linux平台下使用C语言开发,会熟练地使用linux下的C语言是android NDK开发基本功,现在,来写一个程序,给定一个目录,打印出里面所有的子目录,文件, ...

  7. python打开一个文件夹下所有txt文件-python读取一个目录下所有txt里面的内容方法...

    实例如下所示: import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文 ...

  8. python怎么导入txt文件夹-python读取一个目录下所有txt里面的内容方法

    实例如下所示: import os allFileNum = 0 def printPath(level, path): global allFileNum ''''' 打印一个目录下的所有文件夹和文 ...

  9. python读取目录_Python读取一个目录下所有目录和文件

    本文实例讲述了Python读取一个目录下所有目录和文件的方法.分享给大家供大家参考,具体如下: 这里介绍的是刚学python时的一个读取目录的列子,给大家分享下: #!/usr/bin/python ...

最新文章

  1. 每天一个Linux命令-find
  2. Java的知识点32——Mysql的简单使用
  3. JVM内存区域:递归JVM指令分析
  4. 需要“jquery”ScriptResourceMapping。请添加一个名为 jquery (区分大小写)的 ScriptResourceMapping。
  5. android语法帮助手册_新 App 「捧读:日语语法学习与分析」的开发幕后思考
  6. Gartner认为安全性将取代成本和敏捷性成为政府部门采用云服务的首要原因
  7. mysql update修改数据_MySQL UPDATE:修改数据(更新数据)
  8. Go语言的三元表达式
  9. Windows用WinDbg分析蓝屏dump文件查找原因(转)
  10. 华语名嘴乌镇较劲 李咏有价值汪涵有才智
  11. Oracle表空间设计理念
  12. 八皇后-韩顺平java
  13. 计算机网络技术毕业生实习报告_计算机网络毕业实习报告
  14. 南邮CTF逆向题第三道Py交易解题思路
  15. SmartUplod中文乱码问题(已解决)
  16. 【Electron-Vue】构建桌面应用(40)- Electron程序未响应
  17. switch商店显示服务器维护,国服switch eshop商城常见问题汇总 购买数字版问题答疑...
  18. 关于builder模式的使用
  19. idc云计算机房建设标准,IDC机房建设要求
  20. 离散数学 (II) 习题 3

热门文章

  1. php 删除 session 文件,如何删除php中的session文件
  2. mysql命令单词_mysql命令大全
  3. 数组占位符_Java基础 方法和数组
  4. hadoop是什么_Hadoop精华问答 | hadoop能干什么?
  5. sqlserver中某列转成以逗号连接的字符串及逆转、数据行转列列转行
  6. 正则表达式中或关系表示及查找英文字母最后一个
  7. 本田思域自动挡的使用技巧
  8. VB 获得磁盘的文件系统
  9. VB 读写TXT文本文件函数
  10. Linux shell内核使用