在 Linux 中,我总是cd
选择一条较长的路径,然后运行脚本:
cd /scratch/someDir/someOthernestedDir/
./shellscriptName.sh
如何避免输入这个较长的路径,然后一步执行命令?
任何路径中的类似以下内容都应该执行我想要的操作:
executeMyCommand
PS:我用的是C-shell。
[subhrcho@slc04lyo bin]$ echo $0
csh
答案1
运行脚本的主要方法有3种,无需指定完整路径。
将包含脚本的目录添加到您的
$PATH
.然后,您将能够从任何目录按名称执行脚本,就像任何其他程序一样。如果您正在使用csh
,请将其添加到您的~/.cshrc
:set path = ($path /scratch/someDir/someOthernestedDir/)
将脚本的链接放置在路径中已有的目录中。例如
/usr/bin
:ln -s /scratch/someDir/someOthernestedDir/shellscriptName.sh /usr/bin
设置别名为@EightBitTony建议,将此行添加到您的
~/.cshrc
:alias executeMyCommand '/scratch/someDir/someOthernestedDir/shellscriptName.sh'
答案2
命令别名。
alias name definition
例如
alias executeMyCommand '/scratch/someDir/someOthernestedDir/shellscriptName.sh'
从这里。
添加命令别名
使命令别名成为工作环境的永久部分:
- 编辑 shell 启动文件 .cshrc 并添加定义别名的行。
- 保存更改并离开编辑器。
获取 shell 启动文件以使更改立即生效。例如:
源.cshrc