通过终端删除带有特殊字符的文件,该文件已由另一个命令选择


0

这是我的第一篇文章,所以请轻轻走:)

我正在创建一个AppleScript,它运行bash命令以选择和删除指定文件夹组中最近修改的文件。每次文件名都不同。

当您知道实际的文件名时,我已经看到了如何删除带有特殊字符的文件,但是在我的情况下,文件名是由ls发现的。令人遗憾的是,当我使用rm删除文件时,由于名称中带有问号和空格,所有文件都弄乱了,无法识别文件。有没有一种方法可以在变量的外部添加引号,以便可以正确寻址?或者,还有更好的方法。我什至不知道如何重命名该文件。另外,我只想更改/删除一个文件,而不能重命名该文件夹中的所有文件。

这是文件名之一的示例。+61 434 570 460?于2016-12-22在15.01.27.ichat

这是我正在尝试工作的代码;rm -fr $(ls -t | head -n1)

感谢您的意见:)

Answers:


0

我最终解决了这个问题,我不得不在引号中加上引号,即在命令中添加引号。

这是删除最新文件的有效命令,而不管名称中是否有特殊字符或空格。

rm -f“”“ $(ls -t | tail -1)”“”

干杯。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.