0

所以得到这个。我已经用 ./something.sh 和 sh something.sh 运行我的脚本大约 3 个月了。这些脚本总是从我启动它们的目录中运行。

现在突然间我的脚本不起作用了,因为它们似乎是从 / 而不是当前目录启动的。例如,假设我的脚本如下所示:

cd players

rm *

它没有进入播放器,而是因为找不到文件夹“播放器”而出错,然后尝试删除整个根文件系统。(幸运的是,我没有以 Sudo 或 Root 身份运行它们)。

有任何想法吗?这是以前的工作发现,现在才开始起作用!

谢谢!

4

3 回答 3

2

为了安全起见,您可以将线路更改为

cd players && rm *

players如果它能够成功地改变它,它只会删除它的内容。

于 2013-09-16T13:17:14.220 回答
1

尝试这个 :

cd ./players

rm *

应该按预期工作!

于 2013-09-16T13:11:49.050 回答
0

我只能猜测您的脚本现在是以不同的方式启动的;我能想到的最有可能的是,它们是由没有主目录(不再)或类似目录的用户的 cron 作业调用的。

但这确实是在黑暗中拍摄。我建议更多地考虑您的脚本如何开始并对该主题进行调查。

于 2013-09-16T13:25:18.083 回答