linux删除多个文件
打开xshell软件连接上linux服务器,使用指令【ls -l】查看到当前目录有三个文件夹。删除目录的指令有rmdir跟rm,但是rmdir只能删除空目录,需要使用rm。rm指令删除文件夹需要使用参数-r,指令为【rm -r文件夹】。使用指令【rm -rf文件夹】强制删除目录,不会给出提示。
工具/原料:
MacBookPro
macOSCatalina
xshell1.026
1、打开xshell软件连接上linux服务器,如下图所示:
2. linux 批量删除文件
首先建立50万个文件
复制代码代码如下:
test for i in $(seq 1 500000)
for> do
for> echo test >>$i.txt
for> done
1 rm
复制代码代码如下:
test time rm -f *
zsh: sure you want to delete all the files in /home/hungerr/test [yn]? y
zsh: argument list too long: rm
rm -f * 3.63s user 0.29s system 98% cpu 3.985 total
由于文件数量过多,rm不起作用。
2 find
复制代码代码如下:
test time find ./ -type f -exec rm {} \;
find ./ -type f -exec rm {} \; 49.86s user 1032.13s system 41% cpu 43:19.17 total
大概43分钟。
3 find with delete
复制代码代码如下:
test time find ./ -type f -delete
find ./ -type f -delete 0.43s user 11.21s system 2% cpu 9:13.38 total
用时9分钟。
4 rsync
首先建立空文件夹blanktest
复制代码代码如下:
~ time rsync -a --delete blanktest/ test/
rsync -a --delete blanktest/ test/ 0.59s user 7.86s system 51% cpu 16.418 total
16s,很好很强大。
5 python
复制代码代码如下:
import os
import time
stime=time.time()
for pathname,dirnames,filenames in os.walk('/home/username/test'):
for filename in filenames:
file=os.path.join(pathname,filename)
os.remove(file)
ftime=time.time()
print ftime-stime
复制代码代码如下:
~ python test.py
494.272291183
大概用时8分钟。
6 Perl
复制代码代码如下:
test time perl -e 'for(<*>){((stat)[9]<(unlink))}'
perl -e 'for(<*>){((stat)[9]<(unlink))}' 1.28s user 7.23s system 50% cpu 16.784 total
3. Linux下如何一条命令删除上万个文件
find / -name *.log | xargs -n 1000 rm -f
因为rm 接收参数的数量是有限的, 所以每次传 1000个参数给他,这样可以满足你的需求。
补充一点,这种写法其实不是特别严谨,因为如果日志文件的命名有特殊字符的话,上面命令将会对特殊字符文件识别不了。
严谨的写法。
find / -name '*.log' -print0 |xargs -0 -n 1000 rm -f
这里前面的print0 和 后的-0 都是对特殊字符进行处理,也就是说他会认识如"aa bb cc " 这种文件名,多的不说了,不知你能否看明白。
4. linux 删除文件指令
linux 删除文件指令:输入rd盘符名:文件夹名称,比如,我想删除一个在D盘的名为wo的文件夹,则输入rd d:wo这样就能删除文件夹了。当然这种删除方法必须要该文件夹是空文件夹,不然删除不了。
若是想删除文件,输入del盘符名:\文件名,比如,我想删除一个在F盘的名为123.txt的文件,则输入del f:123.txt按回车就能删除该文件了。当然,该命令只能删除文件,不能删除文件夹。若要用该命令删除一个文件夹,会显示找不到文件123.txt。
CMD特点:
CMD一般指命令提示符。命令提示符是在操作系统中,提示进行命令输入的一种工作提示符。在不同的操作系统环境下,命令提示符各不相同。
在windows环境下,命令行程序为cmd.exe,是一个32位的命令行程序,微软Windows系统基于Windows上的命令解释程序,类似于微软的DOS操作系统。输入一些命令,cmd.exe可以执行,比如输入shutdown。
-s就会在30秒后关机。总之,它非常有用。打开方法:开始-所有程序-附件或开始-寻找-输入:cmd/cmd.exe回车。它也可以执行BAT文件。
5. linux删除大量文件的6种方法
1. rm
由于文件数量过多,rm不起作用。
2. find
大概43分钟。
3. find with delete
用时9分钟。
4. rsync
首先建立空文件夹blanktest
16s,很好很强大。
5. Python
大概用时8分钟。
6. Perl
6. linux删除指定文件
很多朋友都想知道linux如何删除指定文件?下面就一起来看看吧!linux删除指定文件
1、打开linux系统,在linux的桌面的空白处右击。
2、在弹出的下拉选项里,点击打开终端。
3、输入rm+文件名命令即可删除指定文件。
本文章基于ThinkpadE15品牌、centos7系统撰写的。