我正在尝试取消文件夹中多个文件的链接。
我刚刚尝试过这个
unlink {000003..006707}.png
但我明白了。
取消链接:额外的操作数'000004.png'
答案1
查看手册页,我认为它不支持这种用法。
NAME
unlink - call the unlink function to remove the specified file
SYNOPSIS
unlink FILE
unlink OPTION
我会使用 for 循环或xargs
.
$ for i in {000003..006707}.png; do unlink $i; done
如果您只是想删除一堆文件,您可以使用rm {000003..006707}.png
.
答案2
从man unlink
:
SEE ALSO
unlink(2)
Full documentation at: <http://www.gnu.org/software/coreutils/unlink>
or available locally via: info '(coreutils) unlink invocation'
从info '(coreutils) unlink invocation'
:
“取消链接”删除单个指定的文件名。它是系统提供的“取消链接”功能的简约界面。 *注意(libc)删除文件::。概要:它避免了更常用的“rm”命令的花哨功能(*注意 rm 调用::)。
答案3
slm 是正确的:unlink
仅支持单个文件作为参数:
$ unlink f1.txt f2.txt
unlink: extra operand ‘f2.txt’
Try 'unlink --help' for more information.
所以问题不在于你的语法,而在于构建的bash
方式。unlink
作为替代方案,使用for
循环或 use rm
,它支持作为参数传递的多个文件。
答案4
这应该可以做到:
find {000003..006707}.png -maxdepth 1 -exec unlink '{}' \;
但请注意,此方法比rm
.