我有一个包含超过5000个文件的文件夹。所有文件名都是数字(例如:132455.jpg),并且要删除名称低于特定数字的所有文件(例如:删除名称超过15000的所有文件) 什么是最快捷,最简单的方法?
PS:对不起,我是新手,这个SSH业务看起来很吓人,但需要快速清理这个目录,因为文件过于堵塞答案 0 :(得分:0)
也许这个可以解决你的问题:
ssh root@192.168.1.1 'find . -type f -name "15000.jpg" -exec rm -f {} \'
这个将在您的192.168.1.1服务器上运行,您的root帐户在简单引用之间使用以下命令。
此命令将在“。”中找到名称为15000.jpg的所有文件。目录(您可以指定路径以避免在所有系统上运行此命令),并且将删除匹配项。
答案 1 :(得分:0)
您可以使用putty进行ssh连接,浏览到该文件夹并输入 rm {0..14999} .jpg
将删除低于15000.jpg的所有文件
答案 2 :(得分:0)
这可以很容易地用纯粹的bash来完成。
for f in *; do
#for every file in current directory
if [[ ${f%.*} -lt $yourNumber ]]; then
#if the current filename minus the extension is less than $yourNumber
rm "$f"
#remove the file
fi
done
要通过ssh执行此操作,我们可以ssh yourUser@yourHost \"/cd dir/to/process; for f in *; do if [[ ${f%.*} -lt yourNumber ]]; then rm "$f"; fi; done\"