当前位置: 首页>>技术问答>>正文


如何在不输入完整路径的情况下运行脚本?

, , ,

问题描述

我想知道是否有办法在不键入完整路径的情况下运行程序/shell脚本:

/opt/idea/bin/idea.sh

最佳解决方法

您只需创建symlink即可。在/usr/local/bin中创建它。您只需要运行命令:

sudo ln -s /full/path/to/your/file /usr/local/bin/name_of_new_command

之后你应该使你的file可执行:

chmod +x /full/path/to/your/file

现在,您应该可以在终端中随时运行name_of_new_command

请注意,这仅适用于Linux的家庭使用。

次佳解决方法

您可以将/opt/idea/bin添加到您的PATH变量中:

PATH=/opt/idea/bin:"$PATH"

在此之后,您只需使用idea.sh即可运行它。

您可能希望在~/.bashrc文件中添加此行。

第三种解决方法

您可以在~/.bashrc中创建一个函数:

some-name () {
    /path/to/your/file
    # or:
    #cd /path/to/your
    #./path
}

或者您可以创建一个alias

alias some-name='/path/to/your/file'
# or  
#alias some-name='cd /path/to/your/; ./file'

在这两种情况下,您都可以通过调用来运行它:

$ some-name

如果文件不依赖于它的运行位置,请考虑将其添加到~/bin

mkdir -p ~/bin
cp /path/to/you/file ~/bin
# or mv /path/to/you/file ~/bin
# or ln -s /path/to/you/file ~/bin

~/bin(如果存在)会自动添加到您的$PATH中。然后直接调用file

$ file

(虽然名称选择不当,但请考虑称之为不那么通用。)

第四种方法

您可以使用以下命令创建启动器:

gnome-desktop-item-edit --create-new <path-where-to-save>。我会打开这个窗口。

command-line,bash,scripts,ubuntu

将其命名为您喜欢的名称,并在命令框中键入以下内容

sh -c '/opt/idea/bin/idea.sh'并保存。

现在,您可以使用新创建的启动器运行该文件

要么

您可以创建包含以下内容的.desktop文件

[Desktop Entry]
Name=<whatever-you-want>
Exec=sh -c '/opt/idea/bin/idea.sh'     
Terminal=false
Type=Application
Icon='<path to an icon file if you want>'

现在将.desktop扩展名保存在任何地方。

使用此命令chmod a+x <your-desktop-file>使其可执行

现在双击打开它。

第五种方法

我们可以使用bind命令来调用它来定义函数和添加热键。打开~/.bashrc文件并将以下行添加到其中:

# define function that opens your program in working directory
Openprog(){
    /your-Program/path/here
}

# bind hotkey to it (<F12>)
bind -x '"\e[24~":"Openprog"'

现在,当您按F12时,您的程序将启动。

注意:确定转义码的快速方法:

打开终端并按Ctrl + V。现在按您喜欢的键盘快捷键。应出现正确的转义码。只需确保将^[替换为\e,然后再添加快捷方式,例如用\e[24~代替^[[24~

第六种方法

我们也可以使用bash_aliases直接运行/opt/idea/bin/idea.sh文件

通过运行打开~/.bashrc文件,

gedit ~/.bashrc

删除行前的#并保存,以便行看起来像,

if [ -f ~/.bash_aliases ]; then
    . ~/.bash_aliases
fi

现在打开~/.bash_aliases文件,

gedit ~/.bash_aliases

在该文件中添加以下行并保存,

alias idea='cd /opt/idea/bin && sudo ./idea.sh'

最后获取~/.bashrc文件,

source ~/.bashrc

现在您可以直接运行/opt/idea/bin/idea.sh文件,

idea

第七种方法

除了其他好的答案之外,请考虑将符号链接到~/.local/bin并将此目录添加到PATH(例如,在.bashrc中)。此方法不需要特殊权限(例如,与符号链接到/usr/local/bin不同)。这样,您可能有一个标准的目录结构,而不会充斥您的$ HOME。在这些https://unix.stackexchange.com/问题上阅读更多相关信息:

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1936.html,未经允许,请勿转载。