
大多數 Makefile 使用者使用命令列。因此他們不需要在 GUI 中呼叫它。但 Makefile 也可以用作使用者的管理工具。
就我而言,一名職員的任務是維護一份每天都會更改的文檔,一旦她保存該文件,「來源」就會更改。我希望她將其轉換為 PDF,使用給定的模板在 PDF 上蓋章,對其進行加密,將其與其他一些文件合併,並為不同的部門使用不同的蓋章生成三個變體。
我已經為此目的編寫了一個 Makefile。有沒有辦法讓她呼叫 Makefile,而不會讓我陷入進行額外命令列訓練的泥淖?她可以儲存文檔,呼叫 Makefile,然後就完成了。
PS 這不是關於如何執行 shell 腳本或 .EXE 文件,因為問題中根本沒有 shell 腳本或 .EXE 檔案或任何可執行檔。
答案1
我有兩個解決方案給你,我更喜歡方案B
方案A
沒有終端的最簡單方法是在所在資料夾中新增包裝器腳本Makefile
。
建立包裝腳本
nano /your/make/file/folder/makeit
加入兩條簡單的線
#!/usr/bin/env bash make
使腳本可執行
chmod +x /your/make/file/folder/makeit
配置 nautilus 每次詢問是否雙擊可執行文字文件
gsettings set org.gnome.nautilus.preferences executable-text-activation ask
或不問就開始
gsettings set org.gnome.nautilus.preferences executable-text-activation launch
方案B
AMakefile
具有 mimetype
text/x-makefile
因此,創建並使用帶有包裝腳本的桌面文件
建立包裝腳本
mkdir -p ~/bin nano ~/bin/makeit
加入下面的程式碼
#!/usr/bin/env bash cd "$(dirname "$1")" || exit make
建立桌面文件
nano ~/.local/share/applications/makeit.desktop
新增下面的配置
[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;
重要的代替
user
在您的用戶名行中Exec=
,輸出echo $USER
重新啟動 Unity/GNOME Shell,對於 GNOME Shell 例如Alt- F2,鍵入
r
和EnterNautilusnautilus -q
將
Makefile
與makeit
腳本關聯起來開啟檔案總管並右鍵單擊
Makefile
點選Open With Other Application
點擊按鈕View All Applications
選擇條目Make It
答案2
crontab -e
只需建立一個每天(甚至每分鐘)運行該 Makefile 的cron 作業(通過)即可。
答案3
我發現了 nautilus 中的「在終端中開啟」功能。
- 右鍵單擊 Makefile 周圍的空白區域
- 選擇“在終端機中開啟”
- 類型
make
這並不完全是所要求的,但卻是最接近的解決方案。培訓新命令列使用者的一半困難是當前目錄的概念 - 在這種情況下可能是全部困難 - 使這個解決方案看起來不錯。