我是Ubuntu新手。我有一个以以下方式打开的应用程序。我在控制台中输入:
cd ~/MyDirectory
./myapp +some arguments
如何找到解决方案,这样我就可以启动应用程序而无需每次都在控制台中键入这些命令?我正在考虑一个脚本,例如Windows中的蝙蝠脚本或.lnk。
在其他类似问题中,我没有找到解决方案,因为仅提及和讨论了脚本。我在其他问题中找不到如何使用“ cd”命令的方法,这个问题与我建议的其他问题并不相同。
我是Ubuntu新手。我有一个以以下方式打开的应用程序。我在控制台中输入:
cd ~/MyDirectory
./myapp +some arguments
如何找到解决方案,这样我就可以启动应用程序而无需每次都在控制台中键入这些命令?我正在考虑一个脚本,例如Windows中的蝙蝠脚本或.lnk。
在其他类似问题中,我没有找到解决方案,因为仅提及和讨论了脚本。我在其他问题中找不到如何使用“ cd”命令的方法,这个问题与我建议的其他问题并不相同。
Answers:
脚本太过分了。
使用.desktop文件,例如:
[Desktop Entry]
Exec=/bin/bash -c "cd ~/MyDirectory && myapp some_arguments"
Name=Some App
Type=Application
some_app.desktop
NB
问题是它是否需要从其自己的目录运行。如果没有,该命令甚至可能更简单:
Exec='/home/MyUserName/MyDirectory/myapp' some_arguments
.desktop
文件足以完成此任务。
./myapp …
而不是仅仅myapp …
因为当前目录.
默认情况下不属于PATH变量。
创建一个具有以下内容的文件:
#!/bin/bash
cd ~/MyDirectory
./myapp +some arguments
然后使其可执行:
chmod u+x scriptname
现在您可以像这样调用此脚本: /pathtoscript/scriptname
您可以将其与v010dya的答案结合起来,然后将此脚本放入bin
$ PATH 中的任何脚本中,因此这两种调用方法都是可能的:在shell中的任何目录类型scriptname
或使用下面说明的桌面快捷方式。只是改变/pathtoscript
为脚本的实际位置即可。
为该脚本创建一个快捷方式,将其放入~/.local/share/applications/
并命名为somename.desktop,其内容如下:
[Desktop Entry]
Version=1.0
Name=Script
Comment=
Keywords=Script
Exec=/pathtoscript/scriptname
Terminal=false
X-MultipleArgs=true
Type=Application
Icon=preferences-system
Categories=GTK;Development;
StartupNotify=false
然后它将出现在应用程序列表中
尽管您已经找到了可以双击的解决方案,但是有一种解决方案可以使从命令行运行更加简单:
这已经是所涵盖的答案的LeonidMew,我将它拷贝到这里:
#!/bin/bash
cd ~/MyDirectory
./myapp +some arguments
然后
chmod u+x scriptname
您需要创建目录~/bin
并使bash在其中搜索命令。因此,在终端中,我们这样写:
mkdir ~/bin
mv scriptname ~/bin
vim ~/.profile
在这里,我在终端中执行所有操作,您当然可以dir
在主目录中创建目录,也可以通过自己喜欢的图形工具将脚本移动到该目录中。我也使用vim作为编辑器,但是对于初学者来说有点困难,我建议您学习,但是您可以使用其他编辑器(甚至是图形的)进行编辑.profile
在您的主目录中,请注意,此文件默认情况下是隐藏的。
您需要将以下内容添加到该文件的末尾
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
如果您使用的是vim,请按i开始添加文本,然后Esc结束添加。之后输入:wq
要写入文件并退出。或者,正如我已经说过的,请使用更简单的编辑器。
现在,您位于哪个目录都无所谓,您只需键入scriptname
并按即可Enter。您还可以在其中放置要执行的其他脚本和应用程序~/bin
。