精华内容
下载资源
问答
  • linux 删除文件批量删除文件

    万次阅读 2019-04-23 19:51:07
    一般的删除文件的操作 删除几个文件 rm 文件1 文件2...批量删除文件 首先查找我们要删除的某类批量的文件: find . -maxdepth 1 -regex ".*ws.*" maxdepth参数为1表示只在当前目录查找,不递归查找子目录 regex参数...

    一般的删除文件的操作

    • 删除几个文件 rm 文件1 文件2
    • 删除文件夹下面所有文件 rm * -rf
    • 删除某些固定字母开头的文件 rm xxx*
    • 删除一类文件 rm *.txt

    批量删除文件

    首先查找我们要删除的某类批量的文件:
    find . -maxdepth 1 -regex ".*ws.*"
    maxdepth参数为1表示只在当前目录查找,不递归查找子目录
    regex参数是正则表达式
    上面的命令表示查找所有文件名中含有“ws”的文件。
    批量删除上面查找到的文件:
    find . -maxdepth 1 -regex ".*ws.*" | xargs rm -rf
    xargs是把前面的输出作为后面的参数,如果多行输出,就多次执行后面的命令
    有的linux系统支持的regex正则表达式不一样,可以使用下面的方式替换
    find . -maxdepth 1 -name "*.c" | xargs rm -rf
    还有使用下面的命令也可以:
    find . -maxdepth 1 -regex ".*ws.*" -exec rm -rf {} \;

    参考:https://www.cnblogs.com/shengulong/p/6742027.html
    https://blog.csdn.net/weixin_41076809/article/details/79986454

    展开全文
  • linux下如何批量删除文件

    千次阅读 2019-03-05 18:40:21
    find . -name "*.c" |xargs rm -rfv 删除该文件夹下所有.c文件 同理,将-name中的内容改为"xx*"即可删除所有以xx开头文件

    find . -name "*.c" |xargs rm -rfv

    删除该文件夹下所有.c文件

    同理,将-name中的内容改为"xx*"即可删除所有以xx开头的文件

    展开全文
  • Linux批量删除文件

    千次阅读 2018-04-18 11:28:17
     删除某些固定字母开头文件 rm xxx*  删除一类文件 rm *.txt 二、 利用命令:find . -name "*.c" | xargs rm -rf 发现当前文件夹及其子目录下面都没有了.c文件。 三、 假设要删除的目录/many...
    一、
    
    删除几个文件  rm 文件1 文件2
    
     删除文件夹下面所有文件  rm * -rf
    
     删除某些固定字母开头的文件  rm  xxx* 
    
     删除一类文件         rm   *.txt
    
    
    二、
    
    

    利用命令:

    find . -name "*.c" | xargs rm -rf

    发现当前文件夹及其子目录下面都没有了.c文件

    三、

    1. 假设要删除的目录/manyfiles下面有大量的文件。

      首先创建一个空目录:

      #mkdir /empty

    2. 然后将两个目录做同步来删除大量文件:

      #rsync --delete-before -d /empty/ /manyfiles/

    3. 等待一段时间之后目录/manyfiles下就会被清空!

    展开全文
  • find.-typef-name"weapon.log*"|xargs-irm-fr"{}"; find.-name"stat_*_2012_05_26_log.tgz"-execcp{}/home/adstat/apache_...上述命令①代表在当前文件夹下递归找到符合weapon.log开头文件删除,如果要指定其...
    1. find  .  -type f -name "weapon.log*" | xargs -i  rm -fr "{}" ;  
    2. find . -name "stat_*_2012_05_26_log.tgz" -exec cp {} /home/adstat/apache_log/stat/ \;  

     上述命令①代表在当前文件夹下递归找到符合weapon.log开头的文件并删除,如果要指定其它目录,可以把.替换成绝对路径即可。

       ②代表在当前文件夹下查找符合正则表达式stat_*_2012_05_26_log.tgz 的文件并分别复制到/home/adstat/apache_log/stat/目录下。 

      那么批量解压文件是否这样呢:

    1. find . -name "stat_*_2012_05_26_log.tgz"|xargs tar -zxvf  

      其实是不可以的,执行结果如下:

    1. tar: ./stat_64_138_2012_05_26_log.tgz:归档中找不到  
    2. tar: ./stat_10_10_75_80_2012_05_26_log.tgz:归档中找不到  
    3. tar: ./stat_64_139_2012_05_26_log.tgz:归档中找不到  
    4. tar: ./stat_74_195_2012_05_26_log.tgz:归档中找不到  

      为什么tar不支持这种通配符语法呢?

    通配符是shell解决的问题

    tar -xvf *.tar

    实际上执行tar时,tar接收到的是

    tar -xvf a.tar b.tar c.tar ...

    如果当前目录跟本没有tar的东西,那么tar就收到'*.tar'这个参数

    与win不同,linux所有字符都可以作文件名,也即目录中不存在着 *.tar这个文件

    为了防止 *.tar被shell解释为a.tar b.tar c.tar...

    可以给它加个单引号

    用tar解开一个Archive时,语法是

    tar -xvf <tarfile.tar> <archived_file>

    <tarfile.tar> 是选项f所要求的,只能是一个文件,比如myfiles.tar。

    <archived_file> 是myfiles.tar所包含的归了档的文件中的一个或者多个成员文件。如果是多个,可以用通配符。

    先别跟我急,我知道,这些你是清楚的。但是,你的问题是,用了

    tar -xvf *.tar

    如楼上所说,tar接收到的是

    tar -xvf a.tar b.tar c.tar ...

    tar把你的意图理解为,在a.tar里解出b.tar c.tar .

    可以使用的方法如下:

    方法:

    第一:

    for tar in *.tar.gz;  do tar xvf $tar; done

    for tar in *.tar.bz2; do tar xvf $tar; done

    第二:用tar命令批量解压某个文件夹下所有的tar.gz文件

    ls *.tar.gz | xargs -n1 tar xzvf

    第三:find -maxdepth 1 -name "*.gz"|xargs -i tar xvzf {}

    这条命令可解压当前目录下的所有gz文件

    批量解压是比较郁闷的事,以前尝试各种方法,甚至用脚本循环语句解压都不行

    现在发现这条命令可以搞定,maxdepth表示搜索深度,1代表只搜索当前目录

    第四:for i in $(ls *.gz);do tar xvf $i;done

    ---------------------------------------------------------

    find /root/aa/group2 -type f -name "*.png*.tar"|xargs -i tar vxf {} && rm -rf /root/aa/group2/*.png.*.tar && echo $(date) success!

    1.找出这个目录下/root/aa/group2 是文件类型的 已*.png*.tar匹配的名字 

    xargs -i

    加-i 参数直接用 {}就能代替管道之前的标准输出的内容

    2.xargs -i tar vxf {}

    解压匹配到的tar包

    3.rm -rf /root/aa/group2/*.png.*.tar

    解压完成后删除tar包

    4.echo $(date) success!

    打印出系统时间

    ----------------------------------------------------------

    多次使用结果集

    mkdir /root/group2/backuptar && find /root/group2 -type f -name "20*.png*.tar"|xargs -i sh -c 'tar vxf {} && mv {} ./backuptar && rm -rf {}' && echo $(date) success! >> /root/group2/tarlog.txt

     

    展开全文
  • 1、在当前目录下删除几个文件: rm 文件1 文件2 2、删除空目录: rmdir 目录1 目录2 3、删除非空目录: rm -rf 目录名 ...5、删除某些固定开头文件:rm xxx* 6、删除某一类文件:rm *.txt rm *.c ...
  • 终端cd进入当前目录 删除某些固定字母开头的文件 rm xxx* ...文件批量重命名 对于当前路径所有以.nc结尾的文件,文件名中的x1替换为x2 rename -n 's/x1/x2/' *.nc # confirm the files you need to rena...
  • 2020-04-07-08-01.out logs.out logs-2020-02-10-12-08.out logs-2020-02-12-02-04.out logs-2020-02-12-10-52.out logs-2020-04-07-07-37.out logs-2020-04-16-12-51.out (尝试删除前可以先备份一下,cp batch-...
  • 1、无法删除‘-’开头文件 本来看到有好多windows下.lnk结尾的快捷方式文件,所以,直接简单粗暴的用rm -rf *.lnk 删除,结果报错。为了说明情况,我下面做了一个例子,目录中只有一个名为“-a.txt”的文
  • Linux批量文件管理

    2019-10-04 16:49:31
    Linux批量文件管理 实验目标: 通过本实验掌握批量建立、移动、复制文件或目录的操作,也可以作为后续shell编程的基础。 实验步骤: 1、现在有十台终端机器,要为每台机器建立3个文件,总共要建立30个文件。...
  • 建议用shell脚本写自动删除日志功能,待日后完善笔记 日志文件有很多 [root@VM-0-111-centos logs]# find -type f -exec ls -l {} \; -rw-r--r-- 1 root root 72633 Dec 14 15:02 ./master-stdout.log.20201214....
  • linux文件批量化改名时使用一些命令可以比较简单快捷1. 文件名前补0linux 下的rename命令可以使用正则表达式进行匹配。举例 for i in {1..100}; do touch ${i}.txt; done 在当前目录下生成文件 1.txt 2....
  • Linux命令行批量删除文件(目录)

    千次阅读 2019-07-11 16:27:00
    快速-批量删除文件或目录 1-1.快速删除大文件夹(注意目录后的结束符‘/’)(对于含有海量文件的目录,不能直接rm -rf删除,这样效率很慢:) rsync -a--delete blank/ test/ 使用空文件夹 blank/ 覆盖原文件夹 ...
  • svn st | grep ‘^?’ | sed -n ‘s/^?[ \t]*//p’ | xargs rm -rf ...1、svn st 输出当前工作状态的文件,如果是未纳入版本控制的,行首会用字符”?”标识; 2、grep 在这是查找出“?”开头的行; 3、sed或者a
  • 今天打开 linux 服务器,发现在根目录下出现了几百个雷同名字的文件 估计是被同行广告侵袭等操作产生的冗余文件 在此,想进行批量删除 如上情况,则可以执行命令: # rm -rf auto_edit_shoumi_*.html.*
  • linux 批量删除某个前缀文件

    千次阅读 2020-05-04 09:48:05
    1. Command (Ref:https://blog.csdn.net/kl28978113/article/details/80271831) find ./ -name 'updatesites*-*' -exec rm {} \; 2. Example [root@admin batch-create-sites]# ls 2020-02-13-10-10.out ...
  • find ./ -name 'news_video_vec_20180*' -exec rm {} \;
  • linux批量删除相似文件名的文件

    千次阅读 2020-07-10 11:54:16
    1、找到所有要删除文件 find / -name "*221908121100016*" 2、删除所有要删除文件 find / -name "*221908121100016*"|xargs rm -rfv
  • find . -name "TFNYB_2016-12-*" | xargs rm -r上面的命令表明:查找当前文件夹下的具有"TFNYB_2016-12-"部分的所有文件,并删除
  • Linux批量删除MySQL库

    2019-09-23 11:13:58
    批量删库方法:利用mysql命令的e参数显示所有数据库,并用grep命令获取想删除的数据库,接着再利用for循环批量删库 例: 现在我打算删除"test_01","test_02"和"test_03"这三个库 Linux终端输入以下命令: ...
  • linux批量删除指定后缀的文件

    万次阅读 2011-02-23 16:10:00
    eg: find -name "*.frag" -exec ...find 命令查找文件名为 .frag 的文件,并将这些文件替换到 {} 部分从而进行删除。 ';' 前的参数都作为 rm 的参数, '/' 则是对 ';' 进行 escape(转义)。 find /etc/rc.d -n
  • linux批量删除指定前缀的文件

    千次阅读 2019-03-06 12:09:21
    find ./ -name ‘wx_shoe_ip.*’ -exec rm {} ;
  • find /tmp -name "sess_*" -mtime +1 -exec rm -rf {} \; find:查询命令 /tmp:目标文件所在目录 -name "sess_*":按名称模糊匹配,文件名以sess_开头的所有文件 -mtime +1:一天前,+30代表30天前 ...
  • eg:find -name "*.frag...find 命令查找文件名为 .frag 的文件,并将这些文件替换到 {} 部分从而进行删除。 ';' 前的参数都作为 rm 的参数, '/' 则是对 ';' 进行 escape(转义)。find/etc/rc.d -name ’*crond’ -...
  • linux批量移动/删除文件

    千次阅读 2018-06-26 21:03:32
    又学到一招hiahiahia~在/home/chaowei/abc/ 下,存在以high开头的high1.mat,high2.mat,high3.mat以及low1.mat,low2.mat,low3.mat,在该目录下还存在high文件夹和low文件夹,我们要分别移动过去,可以使用如下...
  • linux文件管理关于linux中的文件 关于linux中的文件 linux系统结构:FHS(linux层级结构标准3) Linux的一切皆文件,即Linux世界中的所有、任意、一切东西都可以通过文件的方式访问、管理。 根目录:/ 二级目录: /bin...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 12,457
精华内容 4,982
关键字:

linux开头的文件批量删除

linux 订阅