我创建了一个名为“testfile”的文件,并使用chmod +x testfile
可执行该文件。 为了执行文件“testfile”,我需要运行命令./testfile
。从当前目录执行Shell脚本而不使用'“./filename”
我需要知道有没有什么办法可以运行程序而不使用./
并使用testfile
命令执行文件?
下面显示的是“testfile”文件
echo Todays date is :
date
我创建了一个名为“testfile”的文件,并使用chmod +x testfile
可执行该文件。 为了执行文件“testfile”,我需要运行命令./testfile
。从当前目录执行Shell脚本而不使用'“./filename”
我需要知道有没有什么办法可以运行程序而不使用./
并使用testfile
命令执行文件?
下面显示的是“testfile”文件
echo Todays date is :
date
您可以执行它没有./使用:
sh testfile
或者
sh /path/to/file/testfile
编辑
如果您想直接与命令执行程序,你可以做的就是定义一个别名:
alias execute_testfile="sh /path/to/file/testfile"
然后,你将执行该程序时,你写
execute_testfile
或您定义的任何名称。
要使此别名持久化,请在〜/ .profile或〜/ .bash_profile文件中包含alias ...
行。
是的,但我需要执行我的文件没有任何这些。就像执行已经在linux中的命令一样。例如:top,ps,ls等 – 2013-02-18 09:45:04
啊,对,在这种情况下,你可以做的是定义一个别名:别名execute_testfile =“sh/path/to/file/testfile”。然后,无论何时写'execute_testfile'(或者你定义的任何名字),你都会执行这个程序。 – fedorqui 2013-02-18 09:47:04
它的工作,非常感谢你! – 2013-02-18 09:51:43
您需要添加.
您PATH
变量像这里面一个简单的代码:由
> echo 'echo Hello, World!' > mycommand
> mycommand
-bash: mycommand: command not found
> ./mycommand
Hello, World!
> PATH=".:$PATH";
> mycommand
Hello, World!
>
感谢您的回复,但我在哪里添加 - PATH =“。:$ PATH”;' – 2013-02-18 09:28:59
在〜/ .bashrc中 – 2013-02-18 09:31:12
@frozenhaart在运行命令之前在shell提示符下执行瘦命令。在答案中增加了更多细节。 – 2013-02-18 09:33:45
您可以在.profile文件中定义PATH变量,您可以在主目录下找到它。
vi ~/.profile
添加到您的.profile文件
/path/to/dir/:$PATH
结束转换为 “添加/路径/到/ DIR /对什么PATH变量设置”
如果你想添加目录到PATH的系统,你可以的所有用户:
vi /etc/environment - edit, save your changes
source /etc/environment
echo $PATH - should now return your new PATH
Ubuntu的服务器上的作品,我猜想所有Debian发行版,我不知道其他发行中的/ etc /环境,或者如果PATH中指定的其他地方
别名仍然是一个更好的解决方案
vi ~/.bashrc
添加到该文件的末尾
alias <your_script> ='/path/to/your_script.sh'
注销,重新登录 - 你不应该必须再输入./.sh”
感谢您的帮助! :) – 2013-02-19 04:17:26
'出口PATH = /:$ PATH',但是这是不好的。 – 2013-02-18 09:26:28
请不要将它称为'test',因为该命令已经存在。 – dogbane 2013-02-18 09:31:22