ubuntu 新建脚本shell并增加图标 双击应用实现python运行

1.使用nano创建shell脚本文件

需要在终端窗口中输入"nano"以打开文本编辑器。

nano

在创建脚本文件前,我们要了解脚本文件是如何运行的:

直接运行:直接在终端直接输入需要运行的脚本文件名称,系统或用缺省版本的shell运行脚本程序。

命令提示符中指定某个特定shell版本如:$bash script_name ,创定一个特定版本的临时子shell(此例为bash)来运行脚本程序,script_name是脚本文件名,会逐行执行脚本命令并依次输出结果。当脚本文件中的命令依次执行完毕,该临时子shell也自动结束运行,返回到用户原来使用的shell状态。

在脚本文件开头指定一个将要使用的shell:在脚本文件开头增添

 #!/bin/bash

注意:#!必须顶格,后面接全路径,可以从/etc/shell中获得全部的可用shell及其绝对路径。

在这里我们运用第三种方式指定运行的shell。

在通常的shell脚本中,用井号(#)用作注释行,shell不会处理shell脚本中的注释行,但是第一行的#!/bin/bash是个例外。

在指定了shell后,就可以创建一个脚本,

#!/bin/bash
#This is a simple script.

完成上述命令后,按 CTRL + X 保存脚本并退出。之后,系统会要求您确认,然后会要求您为该文件命名。将把文件保存为"xxx.sh"。按"y"进行确认。到这里就成功创建了一个简单的脚本

2. 使用vim编辑shell脚本文件

需要用到文本编辑器来创建一个文件,一般常用vim来做

 sudo apt-get install vim

由于我们是想要运行python文件 所以要切换到py文件运行的命令行和代码所在的文件位置

由于我的py文件运行是在基础环境上的 所以要抑制anaconda 环境只是用系统环境

PATH=/usr/local/jdk-17.0.4.1/bin:/usr/local/cuda-10.2/bin:/usr/local/cuda-10.2/bin:/home/nvidia/.local/bin:/usr/local/jdk-17.0.4.1/bin:/usr/local/cuda-10.2/bin:/usr/local/cuda-10.2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:.:

cd xx/xx/xx   # 代码所在位置

详细见Unbtun环境切换-CSDN博客

3. 运行脚本

如果在以上步骤后直接在终端输入文件名来运行,结果并不能运行,要让shell找到"xxx.sh"脚本,通过chmod命令来该便脚本文件的运行权限:

sudo chmod +x yourfile.sh

要想双击sh脚本来进行运行,从而方便不熟悉ubuntu系统shell使用的用户来执行程序。sh脚本中可以是启动项目程序的代码,或者其它运维代码。

3.1 dconf-editor 安装

dconf可以说是ubuntu系统的注册表,类似windows上的注册表,保存系统的相关配置,而 dconf-editor 是 dconf 的一个图形化操作程序。

sudo apt-get install dconf-tools

3.2 配置dconf

gsettings set org.gnome.nautilus.preferences executable-text-activation ask

3.3 配置要双击的文件

首选为文件填加可执行权限

sudo chmod +x yourfile.sh

右击该文件,点属性properties,将Allow executing file as program选中。

3.4 双击执行

因为之前3.2中选的是ask,根据需求进行点击。如果是选的launch,就相当于直接点击上图中的run.

执行过程无显示无输出,人但会有点击

4. sh快捷方式生成与图标配置

为了实现能够直接双击执行,不需要多余操作,而且为了页面更加美观,增加一个图标设置

下面以ubuntu桌面为例:创建desktop文件

# 文件名建议与软件名一致
sudo vim /usr/share/applications/idea.desktop

新建文件 xxx.desktop, 然后编辑该文件; 如下信息:

[Desktop Entry]
Name=My Idea # 执行文件的名称
Comment=Idea Studio # 执行文件的描述
Exec=/opt/ideaIU-2018.3.6/idea-IU-183.6156.11/bin/xxx.sh # 执行文件的路径
Icon=/opt/ideaIU-2018.3.6/idea-IU-183.6156.11/bin/xxx.png # 执行文件的图标
Terminal=true  # 是否开启terminal
StartupNotify=true # 是否开启启动提示
Type=Application # 软件类型
Categories=Application;Development;

将其弄成"可信任",对 idea.desktop点击右键"属性" 下的权限 执行栏 勾选 允许作为程序执行文件(E) 或者 sudo xxxx

# 设置权限为可执行
sudo chmod +x /usr/share/applications/idea.desktop
相关推荐
君逸~~35 分钟前
RK3568(二)——字符设备驱动开发
linux·驱动开发·笔记·学习·rk3568
牛奔44 分钟前
解决 Mac(M1/M2)芯片,使用node 14版本
linux·macos·编辑器·vim
wmxz5201 小时前
Linux环境安装Jenkins
linux·ci/cd·jenkins·持续部署·持续集成
黑蛋同志1 小时前
CentOS 上下载特定的安装包及其所有依赖包
linux·运维·centos
是程序喵呀2 小时前
部署GitLab服务器
运维·服务器·gitlab
●VON2 小时前
go语言的成神之路-标准库篇-os标准库
linux·运维·服务器·开发语言·后端·学习·golang
怡雪~2 小时前
k8s的Pod亲和性
linux·容器·kubernetes
清风 0012 小时前
一、使用 mdadm 工具在 Ubuntu 上创建 RAID 1(镜像)
运维·服务器·数据库
白白白白白kkk2 小时前
【Ubuntu】脚本自动化控制终端填充
linux·ubuntu·自动化