【发布时间】:2015-05-27 21:54:53
【问题描述】:
我知道如何运行我创建的脚本。但是我需要通过终端更改目录并运行我的脚本是一个痛苦的问题。
我需要运行slowloris 脚本,该脚本已进入桌面,现在将目录更改为桌面并运行。
然后我在 root 中有另一个;现在将目录更改为 root 并运行它。
我的问题是:
我怎样才能通过从任何路径输入 ./script 来运行任何 shell 脚本,就像我们通过从任何路径提供 msfconsole 从任何路径启动 Metasploit 一样。
【问题讨论】:
-
最简单的方法是选择一个目录来保存您的脚本(或脚本的软链接)并确保它在您的路径中。在 Linux 上,合理的选择是
/usr/local/bin。然后只需确保您的脚本是可执行的(例如chmod +x)。 (when choosing a scriptnameit is advisable to check if any other program already uses the name withwhich scriptnameortype scriptname) With the script location in your path, and it being executable, you can then simply run it from anywhere通过输入scriptname -
Shell 脚本是“shell 脚本”,而不是“.sh 脚本”,不需要文件扩展名。尤其是 Bash 脚本,不应使用 .sh 扩展名,因为此扩展名意味着脚本可以使用
sh scriptname.sh运行,而任何具有 bash 扩展名的脚本都不能保证以这种方式运行。 -
在任何地方输入
./script将永远运行除当前目录(又名./)以外的任何地方的脚本。即使你的PATH中某处有一个名为script的东西,调用./script也会告诉shell“不要查看$PATH,我想运行这里的那个”,如果有的话,后果很明显其实不是这样的脚本……
标签: linux bash shell unix terminal