如何以更方便的方式启动我的应用程序?


9

我是Ubuntu新手。我有一个以以下方式打开的应用程序。我在控制台中输入:

cd ~/MyDirectory
./myapp +some arguments

如何找到解决方案,这样我就可以启动应用程序而无需每次都在控制台中键入这些命令?我正在考虑一个脚本,例如Windows中的蝙蝠脚本或.lnk。

在其他类似问题中,我没有找到解决方案,因为仅提及和讨论了脚本。我在其他问题中找不到如何使用“ cd”命令的方法,这个问题与我建议的其他问题并不相同。


@steeldriver,不,我没有找到解决此问题的方法。没有任何关于cd命令和通过脚本运行应用程序的信息。
尼克,

#1您是否希望解决方案是可以在桌面上单击的图标,还是需要/想要在命令提示符下运行的图标?#2参数多久会更改一次?
罗恩·约翰(RonJohn)

对话(在这种情况下,很安全)假定存在桌面。在脚本世界中,通常不会有。
mckenzm

Answers:


21

脚本太过分了。

使用.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

2
真的很感谢你。.desktop文件足以完成此任务。
尼克,

2
@allo如果OP寻求解决方案,这不是解决他问题的最佳方案,但是他不知道存在更好的解决方案,那么如果您知道一个更好的解决方案,则应该给他更好的解决方案。如果您没有看到自己很想念答案的地方。
Jacob Vlijm '19年

1
@dessert感谢您的编辑。我们可能不得不处理带有空格的路径:)
Jacob Vlijm '19

1
您可能希望编写./myapp …而不是仅仅myapp …因为当前目录.默认情况下属于PATH变量。
PerlDuck

1
@allo如果您认为现有答案还不够,请随时添加您自己的答案。
Fabby

13

创建一个具有以下内容的文件:

#!/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

然后它将出现在应用程序列表中


1
您的答案正在起作用,谢谢。但是真的很抱歉,脚本太难了,我不知道。我的答案是具体地用脚本而不是仅仅找到任何解决方法。我会+1给你。
尼克,

1

尽管您已经找到了可以双击的解决方案,但是有一种解决方案可以使从命令行运行更加简单:

第1步-编写脚本

这已经是所涵盖的答案LeonidMew,我将它拷贝到这里:

#!/bin/bash
cd ~/MyDirectory
./myapp +some arguments

然后

chmod u+x scriptname

第2步-易于执行

您需要创建目录~/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要写入文件并退出。或者,正如我已经说过的,请使用更简单的编辑器。

第3步-享受

现在,您位于哪个目录都无所谓,您只需键入scriptname并按即可Enter。您还可以在其中放置要执行的其他脚本和应用程序~/bin


1
您写了如何退出vim,+ 1只是在开玩笑,很不错的答案。您的解决方案很有用。仍然可以创建.desktop文件,以从应用程序列表或菜单运行脚本(取决于DE)。修补后,需要.profile注销/登录。也可以使用noexec选项挂载home,在这种情况下,需要将脚本放在/ usr / local / bin /中(使用sudo)。
LeonidMew
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.