【发布时间】:2017-06-16 22:51:48
【问题描述】:
我正在尝试执行以下操作:
mdfind -name "application name"
作为输出我得到:
/Applications/[Application]
~/Library/LaunchAgents/[Application]
...
我想做的下一步是:
sudo rm -rif "/Applications/[Application]"
sudo rm -rif "~/Library/LaunchAgents/[Application]"
...
所以在这种情况下,我必须多次执行sudo rm -rif "/..."。如何自动为所有给定目录重复应用此删除命令?
P.S. 将输出划分为字符串数组并启动 for 循环不是一种选择。
【问题讨论】:
-
请添加您要提示一次向用户呈现所有个删除候选的要求,然后批量 - 删除,直接到你的问题。如果这不是您想要的,请澄清 - 直接在您的问题中。
-
小心。
sudo rm -rif "~/Library/LaunchAgents/[Application]"不会将 ~ 解释为您的主目录。 -
@thatotherguy:这是一个很好的观点。幸运的是,尽管有 OP 的示例代码,
mdfind始终输出绝对文字路径,而不是基于~的路径。 -
sudo rm -rif ~/"..."会按预期运行;通过不引用它,shell 在将生成的路径传递给sudo之前扩展波浪号。
标签: bash macos terminal delete-file