大多数 Makefile 用户使用命令行。因此他们不需要在 GUI 中调用它。但是 Makefile 也可以用作用户的管理工具。
就我而言,文员的任务是维护一个每天都在变化的文档,一旦她保存了文件,“来源”就会发生变化。我想让她把它转换成 PDF,用给定的模板在 PDF 上盖章,加密它,将它与其他几个文件合并,并为不同的部门用不同的邮票制作三种变体。
为此,我已经编写了一个 Makefile。有没有办法让她唤起 Makefile 而不会让我陷入进行额外命令行培训的泥潭?她可以保存文档,调用 Makefile,然后完成。
PS 这不是关于如何执行 shell 脚本或 .EXE 文件,因为问题中根本没有 shell 脚本或 .EXE 文件或任何可执行文件。
我有两种解决方案,我更喜欢解决方案 B
没有终端的最简单方法是,在所在的文件夹中添加一个包装脚本Makefile。
创建包装脚本
nano /your/make/file/folder/makeit
Run Code Online (Sandbox Code Playgroud)添加两条简单的线
#!/usr/bin/env bash
make
Run Code Online (Sandbox Code Playgroud)使脚本可执行
chmod +x /your/make/file/folder/makeit
Run Code Online (Sandbox Code Playgroud)配置 nautilus 每次询问是否双击可执行文本文件
gsettings set org.gnome.nautilus.preferences executable-text-activation ask
Run Code Online (Sandbox Code Playgroud)
或者不问就开始
gsettings set org.gnome.nautilus.preferences executable-text-activation launch
Run Code Online (Sandbox Code Playgroud)AMakefile有 mimetype
text/x-makefile
Run Code Online (Sandbox Code Playgroud)
因此,创建并使用带有包装脚本的桌面文件
创建包装脚本
mkdir -p ~/bin
nano ~/bin/makeit
Run Code Online (Sandbox Code Playgroud)添加下面的代码
#!/usr/bin/env bash
cd "$(dirname "$1")" || exit
make
Run Code Online (Sandbox Code Playgroud)创建桌面文件
nano ~/.local/share/applications/makeit.desktop
Run Code Online (Sandbox Code Playgroud)添加下面的配置
[Desktop Entry]
Name=Make It
Comment=Start the make command
Exec=/home/user/bin/makeit
Icon=
Terminal=false
Type=Application
Categories=Editor;
StartupNotify=true
MimeType=text/x-makefile;
Run Code Online (Sandbox Code Playgroud)
重要提示替换user该行Exec=与您的用户名,输出
echo $USER
Run Code Online (Sandbox Code Playgroud)重新启动 Unity/GNOME Shell,对于 GNOME Shell,例如Alt- F2,键入randEnter和 Nautilus with
nautilus -q
Run Code Online (Sandbox Code Playgroud)将Makefile与makeit脚本关联
打开您的文件管理器并右键单击 Makefile
点击 Open With Other Application
点击按钮 View All Applications
选择条目 Make It
| 归档时间: |
|
| 查看次数: |
951 次 |
| 最近记录: |