` `deepin是我国比较优秀的一款linux操作系统的发行版,外观漂亮,软件资源可满足日常使用。
` `为了方便建立desktop文件,写了一个脚本文件完成。
```
#!/bin/bash
#该脚本用于deepin下安装程序后菜单中没有启动图标时创建desktop文件
#注意请使用root权限运行该脚本
###################################################
echo "该脚本用于deepin下安装程序后菜单中没有启动图标时创建desktop文件"
echo "----------------注意事项------------------"
echo "1.请使用root权限运行该脚本"
echo "2.输入时请按提示输入,否则创建可能出错"
echo -e " "
echo "(1)输入你希望创建的文件名(英文),注意该文件名格式为xxx.desktop,如输入为 snape.desktop:"
read appname
file="/usr/share/applications/$appname"
if[ ! -f "$file" ];then
touch $file
echo "make file success"
else
echo "File already exists"
exit
fi
echo "(2)输入应用名称(英语),方便自己识别,比如的应用为notepad++,那么可以输入为 notepad:"
read name_es
echo "(3)输入运行程序完整路径,比如应用程序app.sh的路径为/home/soft/app.sh,那么你输入应该为 /home/soft/app.sh:"
read exec
echo "(4)输入应用程序图标路径,icon支持png格式的图片,不建议图片过大,加入你的icon.png在路径/home/soft/icon.png,那么你应该输入/home/soft/icon.png:"
read icon
echo -e "[Desktop Entry]">>$file
echo -e "Name=$name_es">>$file
echo -e "Exec=$exec">>$file
echo -e "Icon=$icon">>$file
echo -e "Terminal=false">>$file
echo -e "Type=Application">>$file
echo "创建文件完成"
```
` `为了是的创建的过程中更方便,以下采用zenity提供交互界面。因此需要运行下面的脚本需要安装zenity,使用`sudo apt-get install zenity`可安装。
```
#!/bin/bash
#文本信息框,提示安装
FILE_lince=`dirname $0`/file_config_temp_cache
if[ ! -f "$FILE_lince" ];then
touch $file
else
`rm -f $FILE_lince`
touch $file
fi
touch $FILE_lince
echo "该脚本用于deepin下安装程序后菜单中没有启动图标时创建desktop文件,注意请使用root权限运行该脚本。新建的桌面应用名为.desktop文件,请你新建的时候不要删除默认的这个后缀。如您已经清楚,请勾选下面的选择框,并确定运行该脚本。">>$FILE_lince
zenity --text-info \
--title="说明" \
--filename=$FILE_lince \
--checkbox="我清楚并确定开始运行!"
case $? in
0)
echo "准备处理...............";;
1)
`rm -f $FILE_lince` #删除临时文件
exit 0
;;
-1)
echo "发生意外错误。"
`rm -f $FILE_lince` #删除临时文件
exit 0
;;
esac
#文件保存对话框
lu="/usr/share/applications/.desktop"
FILE=`zenity --file-selection --title="新建desktop文件并保存" --save --filename=$lu`
if[ ! -f "$FILE" ];then
touch $FILE
echo "make file success"
else
echo "File already exists"
exit 0
fi
echo $FILE
appname=${FILE##*/} #扫描字符,截取最有一个/符号后面的字符出来
name_es=`echo $appname|cut -d '.' -f1` #截取.符号前的字符
FILE_EXEC=`zenity --file-selection --title="添加可执行文件"`
case $? in
0)
exec=$FILE_EXEC
;;
1)
echo "没有选择文件。"
exit 0 ;;
-1)
echo "发生意外错误。"
exit 0 ;;
esac
FILE_ICON=`zenity --file-selection --title="选择应用桌面图标"`
case $? in
0)
icon=$FILE_ICON
;;
1)
echo "没有选择文件。"
exit 0 ;;
-1)
echo "发生意外错误。"
exit 0 ;;
esac
echo -e "[Desktop Entry]">>$FILE
echo -e "Name=$name_es">>$FILE
echo -e "Exec=$exec">>$FILE
echo -e "Icon=$icon">>$FILE
echo -e "Terminal=false">>$FILE
echo -e "Type=Application">>$FILE
echo "创建文件完成"
#信息对话框
zenity --info --text="文件创建已完成!请您查看开始菜单中是否已经正常显示你刚刚添加的应用,若没有显示,请删除文件再来一次。"
exit 0
```
desktop创建过程
转载文章标签 desktop创建过程 深度Linux新建文件夹 desktop ico 启动图 文章分类 架构 后端开发
-
Ubuntu Linphone-Desktop 编译实践指南
Ubuntu18 编译 Linphone desktop master_5分支,实践过程中踩过很多坑,本篇是LInphone编译,打包实践过程。SystemLinux machine 5.4.0-150-generic #167~18.04.1-Ubuntu SMP Wed May3 x86_64 x86_64 x86_64 GNU/LinuxDevelopment environmentgcc
Linphone Linphone-desktop Linphone build Ubuntu Linphone Qt -
java面试问你有什么优缺点吗
JVM多线程SSM框架Java横向技术数据库消息中间件
java面试问你有什么优缺点吗 面试 java 职场和发展 Java