pat*_*eza 2 bash rm interactive
我想计算交互式删除的文件和目录的数量:
for f in /tmp/mydir/* ; do
rm -ir "$f"
done
Run Code Online (Sandbox Code Playgroud)
如何以最简洁/优雅的方式做到这一点?
例子:
abc@def:/tmp/mydir$ tree
.
??? 1
??? 2
??? 3
??? 4
??? A
? ??? 1
? ??? 2
? ??? 3
??? B
? ??? 1
? ??? 2
??? C
3 directories, 9 files
Run Code Online (Sandbox Code Playgroud)
如果所有答案都是y(是),那么我希望得到答案:
1
, 2
, 3
, 4
, A
, B
, C
) 或:1
, 2
, 3
, 4
, A/1
, A/2
, A/3
, B/1
, B/2
, C
)。两个版本都受欢迎。
我知道我可以在运行交互之前和之后计算文件/目录rm
,但事实并非如此,因为实际上我遍历存储在文本文件中的文件。
只需使用:
rm -vri files | wc -l
Run Code Online (Sandbox Code Playgroud)
也将包括目录(即删除A
)。这将起作用,因为-v
只会将成功removed ’file’
(或目录)输出发送到stdout
,而所有其他输出都发送到stderr
。
在您的示例中,输出将为12
,因为有 3 个目录和 9 个文件。