如何通过双击Windows中的.EXE文件来执行脚本?
如何通过双击就像Windows中的.exe
文件一样使bash脚本可执行? 我尝试创建一个启动器并将脚本分配给它 ,但有两个后果:
- 终端闪烁,消失,什么都没做。
- 您必须指定在终端中运行才能工作。
我有一个脚本在脱机PC上安装tomcat,包括脚本中tomcat的所有依赖项。 我需要让脚本像Windows一样双击,因为大多数使用脚本的人都不熟悉Ubuntu。
忘记上面的解释。 我想创建一个可以通过双击运行的脚本,而无需使用终端。 谁知道怎么样?
我测试了它,它工作正常。 确保您的脚本以正确的hash-bang开头,例如#!/bin/bash
然后按照下列步骤操作
按Alt + F2 ,键入dconf-editor
并按Enter键 。
在dconfg-editor转到:org➤gnome➤nautilus➤ org ➤ gnome ➤ nautilus ➤ preferences
点击executable-text-activation
然后从下拉菜单中选择:
启动 :将脚本作为程序启动。
要么
问 :通过对话框询问该怎么做。
关闭dconf-editor。 而已!
来源: 如何在Nautilus中运行可执行脚本? 答案由Basharat Sial提供。
在较新的版本上,在nautilus(文件)上,转到编辑>首选项>行为选项卡>,然后更改可执行文本文件的设置。
在Ubuntu和所有基于Unix的操作系统中,afaik默认情况下没有任何设置为可执行文件。 有两种方法可以做到这一点。
-
右键单击要执行的脚本或文件。 转到属性,然后转到权限选项卡。 单击“执行”复选框。
-
将终端
cd
打开到找到该文件的目录中。 输入chmod ugo+x filename
。 这将设置要执行的文件。
现在,您的用户可以双击他们的内容。
我认为这里缺少创建* .desktop文件:
$ cat shortcut-for-my-script.desktop [Desktop Entry] Type=Application Terminal=true Name=Click-Script Icon=utilities-terminal Exec=gnome-terminal -e "bash -c './script.sh;$SHELL'" Categories=Application;
如果为一个脚本创建多个* .desktop文件,则可以通过传递不同的参数来创建多个配置 ,这是一种非常舒适且用户友好的方式。
如果您正在使用XFce,则可以通过执行以下命令在Thunar中执行脚本:
xfconf-query --channel thunar --property /misc-exec-shell-scripts-by-default \ --create --type bool --set true
或者使用gui xfce4-settings-editor
并创建相同的属性
你必须检查3分:
- Nautilus / Nemo配置: https : //askubuntu.com/a/286651/301025
- 脚本文件必须是可执行文件 : https : //askubuntu.com/a/275714/301025
-
文件系统必须允许执行 :
- 在控制台中键入
mount
- 检查文件系统是否具有
noexec
标志 - 通过编辑
/etc/fstab
删除noexec
标志并重新安装修改后的系统(例如,重启工作)
- 在控制台中键入
当您在桌面中创建SHEL脚本或Whatever时,在命令行中,不要忘记发出脚本信号,以便在后台执行。
当他完成工作时脚本将会死亡。
基于umask
defualt值,默认情况下您没有对文件执行权限,必须更改mod才能获得执行权限,如下所示:
chmod u+x filename
特别适用于Android Studio您可以在此处关注我的原始答案 :
要创建桌面启动器:
- 单击“ 工具”菜单中的“
Create Desktop Entry..
。
-
它将提示输入密码,输入您当前登录的密码。
-
最后它将在Android Studio屏幕中显示通知,如:
- 你可以在Applications => Programming => Android Studio中看到,你也可以在重启系统后在桌面上看到。
谢谢。 🙂