所以得到这个。我已经用./something.sh和sh something.sh运行我的脚本大约3个月了。这些脚本总是从我启动它们的目录运行。
现在突然间我的脚本无法工作,因为它们似乎是从/而不是当前目录启动的。例如,假设我的脚本如下所示:
cd players
rm *
它没有进入播放器,而是因为找不到文件夹“播放器”,然后尝试删除整个根文件系统而导致错误。 (幸运的是,我没有将它们作为Sudo或Root运行。)
有什么想法吗?这是以前的工作,它刚刚开始表演!
谢谢!
答案 0 :(得分:2)
为安全起见,您可以将线路更改为
cd players && rm *
如果players
成功更改为{{1}},则只删除{{1}}的内容。
答案 1 :(得分:1)
试试这个:
cd ./players
rm *
应该按预期工作!
答案 2 :(得分:0)
我只能猜到你的脚本现在以不同的方式启动;我能想到的最可能的是,它们是由用户的cron作业调用的,该用户没有主目录(不再是)或类似的。
但这真的是在黑暗中拍摄。我建议更多地考虑如何开始编写脚本并对该主题进行调查。