如何找到可重新执行的 shell 脚本,并且不会覆盖配置/所做的任何此类更改。
就像是bash -x 脚本.sh用于调试脚本,检查脚本的每一行是否成功执行。
我的意思是假设脚本文件有命令:
- 为某些文件创建软链接
- 更改某些配置文件的某些值。
那么,这样的脚本如果我一次又一次地执行,更改会生效还是会覆盖并更改系统的配置,我们如何确保这样的事情?
答案1
只要脚本不删除自身或更改其可执行权限位,就不存在可重新执行的情况。这就是可执行性的含义。这是x
您在运行时在第一列中看到的内容ls -l
。如果设置了,则可以执行该文件(由所有者/组/用户)。如果不是,那就不能。您始终可以尝试使用解释器执行任何操作,例如
bash some_file
但为此该文件不必是可执行的。
可执行位允许您通过以下方式调用(执行)脚本:
./script.bash
(或者无论它叫什么)。