如何使用bash shell脚本从$PWD
以外的其他目录中删除某些文件。
查看rm
的{{3}},rm
似乎仅适用于$PWD
。
我被迫使用这种方法:
oDir=$PWD
cd directorytoremovefiles
rm files
cd oDir
答案 0 :(得分:2)
正如YYC指出的那样,
rm $DIR/files
答案 1 :(得分:2)
rm
当然可以删除另一个目录中的文件。
无论是什么从手册页给了你这个想法,我当然希望它不这个:
rm删除每个指定的文件。通过 默认情况下,它不会删除 目录。
您所引用的文档,仅涉及写& 执行对您要删除的目录的权限。
所以你只需要:
rm directorytoremovefiles/files
答案 2 :(得分:0)
rm
将采取相对或绝对的任何路径。如果在directorytoremovefiles
的开头没有斜杠,则它是相对路径,您可能需要存储PWD以供日后使用。但是,您可以在完成后使用pushd
和popd
或cd -
执行此操作。或者,如果您在parens中运行cd
和rm
命令,它们将在子shell中运行,如下所示:( cd directory; rm files)
那么您的工作shell将不会更改目录。