Re: [問題] 點兩下可執行指令的sh怎麼寫?

看板Linux作者 (路人甲)時間5年前 (2018/08/21 10:05), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《qwerty754892 (Q仔)》之銘言: : 標題: [問題] 點兩下可執行指令的sh怎麼寫? : 時間: Wed Aug 15 12:43:22 2018 : : : 各位鄉民午安 : 最近因工作需要被要求使用ubuntu : 不過全公司都沒有人會用 : 自行摸索一下大概會用一些 : : 有個工作內容是要執行指令查詢軟體運行進度 : 但每次都要在特定路徑開啟終端機 : 然後輸入制式化的指令 : 十分麻煩 : : 記得在windows可以做一個bat檔 : 點兩下就可以執行批次檔 : 但在linux下,我直接文本輸入的指令 : 改了允許檔案作為程式執行功能 : 還是不能做到這件事,每次都用文本開啟 : 快把我逼瘋了 誰來救救我呢? : : https://i.imgur.com/BeJfU6x.jpg
: 我想執行的指令就一條 : /home/ct/status : 當然還有其他複雜的,但先解決簡單的吧… : : 而且右鍵查看可執行的方式並沒有終端機這個選擇 : http://i.imgur.com/MXiE6jz.jpg
: 實在不知道該怎麼辦 求求大家幫忙 環境 : Ubuntu 16.04.1 LTS [預先準備] test.sh 指令 vi test.sh 檔案內容 #!/bin/bash echo Hello World echo Hello World 2 read -n 1 -s -r -p "Press any key to continue" 指令 chmod +x test.sh [方法1] 透過 DoubleClick1.desktop 呼叫 test.sh 系統預設點選 View executable text files when they are opened ( https://i.imgur.com/N4wljW4.png
) 指令 vi DoubleClick1.desktop 檔案內容 [Desktop Entry] Type=Application Terminal=true Name=DoubleClick1 Icon=utilities-terminal Exec=gnome-terminal -e "bash -c '/home/john/Desktop/test.sh'" Categories=Application; 指令 chmod +x DoubleClick1.desktop 桌面點選 DoubleClick1 即可執行 [方法2] 透過 DoubleClick2.sh 呼叫 test.sh 系統自行點選 Run executable text files when they are opened ( https://i.imgur.com/Y8aZrCl.png
) ([方法1]也行) 指令 vi DoubleClick2.sh 檔案內容 gnome-terminal -e "bash -c '/home/john/Desktop/test.sh'" 指令 chmod +x DoubleClick2.sh 桌面點選 DoubleClick2.sh 即可執行 ------ test.sh的檔案路徑要用絕對路徑 : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.19.84.19 : ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1534308205.A.83C.html : 推 Bencrie: 圖上面不是有「執行軟體」? 08/15 12:53 : → qwerty754892: 那個選下去不是直接指令欸 08/15 12:54 : → qwerty754892: 繞圈圈繞很久 然後什麼事情都沒有發生 幾乎都試過了 08/15 12:55 : 推 Bencrie: 在那裡點執行本來就不會有 terminal 視窗啊 08/15 13:12 : → qwerty754892: 那請問我該如何做呢?我想點兩下直接執行指令 08/15 13:19 : → kdjf: 你是想要跳出terminal顯示執行結果嗎? 08/15 13:44 : → kdjf: 欸等一下 你的script想幹嘛可以說一下嗎? 覺得你應該搞錯了 08/15 13:47 : → qwerty754892: 我的指令輸進去會跳出某程式運行的狀態 像這樣 08/15 14:00 : → qwerty754892: https://i.imgur.com/BbSRiZu.jpg
08/15 14:02 : → qwerty754892: 不知道欸 半路學linux為了工作 腦袋還是在微軟模式 08/15 14:04 : 推 Bencrie: 電腦斷層影像 XD 我相信他有跑,只是你看不到結果 08/15 14:05 : → qwerty754892: 對呀 我知道他有跑 但我要隨時看他的狀態 08/15 14:10 : → qwerty754892: 結果我也看得到 只是每次都要輸入一堆有的沒的很累 08/15 14:11 : → qwerty754892: 想寫像bat的批次檔直接執行指令 比較快 省事 08/15 14:12 : 推 Bencrie: script 改成 gnome-terminal -x sh -c "/home/ct/status; 08/15 14:17 : → Bencrie: read -p 'Press any key to continue...' UNUSED" 08/15 14:18 : → qwerty754892: 那請問開啟方式要用哪個?我現在點開還是文檔編輯 08/15 15:04 : 推 b0920075: 在終端機執行就好了吧,為什麼一定要用點的 08/15 16:04 : → b0920075: 在bashrc寫一個alias,之後在terminal輸入指令就好了吧 08/15 16:05 : → qwerty754892: 痾……比較直觀?因為我看別人可以啊 為什麼我不行 08/15 17:20 : → qwerty754892: 然後第二個拍謝我看不懂 qq 08/15 17:20 : → qwerty754892: 而且我原本開終端機指令就一條 如果現在又要弄那麼 08/15 17:22 : → qwerty754892: 多東西 何必?主要就是想學著寫傻瓜程式,給下一個 08/15 17:22 : → qwerty754892: 同事/長官直接無腦上手啦 這是我的小願景 08/15 17:22 : 推 OSDBNetwork: https://bit.ly/2MrthE9 參考看看 08/15 18:05 : → rexsony: 照原Po的文字態度,知道也不想說。大概是這樣 08/15 19:22 : → rexsony: 還是回去寫Windows吧 08/15 19:23 : → qwerty754892: o大 謝謝,我再研究一下 看起來接近真相了!!! 08/15 20:10 : → qwerty754892: r大拍謝我有點看不懂我知道啥 win我也是略懂而以 但 08/15 20:12 : → qwerty754892: 謝謝你沒噓我 我會繼續努力學習 08/15 20:12 : → qwerty754892: 啊啊 我再看一次看懂了 不好意思冒犯您了 若知道還 08/15 20:15 : → qwerty754892: 請您多幫忙 我查了蠻多網站都有人問這類問題,不過 08/15 20:15 : → qwerty754892: 方法都不太一樣 綜合混雜也是每一個定論 但我是誠心 08/15 20:15 : → qwerty754892: 發問的 再次向您致歉 不知道那句有冒犯到您。對不起 08/15 20:15 : 推 Bencrie: 你的 script 有加 #!/bin/sh?屬性有 +x? 08/15 21:31 : → qwerty754892: 第一行 #!/bin/bash 或/sh都試過 預設開啟還是文本 08/15 21:49 : → qwerty754892: 屬性+x是………? 08/15 21:50 : → qwerty754892: https://i.imgur.com/AgNpBhz.jpg
自己爬文找到解決 08/15 21:51 : → qwerty754892: 辦法了 建立終端機捷徑在桌面 然後後面改成如圖片 08/15 21:51 : → qwerty754892: 執行指令後也不會自動關閉 完全符合我的需求 08/15 21:51 : → qwerty754892: 不過這樣好像只能執行單行的簡單指令?如果要換行不 08/15 21:52 : → qwerty754892: 知道要怎麼用 還是想學scrpit要怎麼寫 08/15 21:52 : → qwerty754892: https://i.imgur.com/KPHtNMi.png
08/15 21:55 : → qwerty754892: o大轉貼的文有效 ubuntu16預設好像沒有dconf-edito 08/15 21:55 : → qwerty754892: r 要用sudo另外安裝 依序設定完後雙擊檔案可以變成 08/15 21:55 : → qwerty754892: 執行模式而不是文本開啟了!! 那請問b大的方法是? 08/15 21:55 : 推 sppmg: 屬性x Google: chmod 。Linux中是否可執行由是否具有x屬性 08/15 23:56 : → sppmg: 決定,而非副檔名。 Debian中帶x的會詢問要執行還是開文檔 08/15 23:56 : → sppmg: , Ubuntu我就不知了。 08/15 23:56 : → sppmg: 我覺得文字、態度沒什麼問題啊!只不過是想點兩圖示執行罷 08/16 00:00 : → sppmg: 了。對日常使用不是終端機的人來說,當然還是弄個圖示方便 08/16 00:00 : → sppmg: 。以我來說,就算寫個 script ,有時也是建個圖示到工作列 08/16 00:00 : → sppmg: 。最簡單像是 sync ,沒事多按幾下 XD。 08/16 00:00 : 推 Bencrie: sync 可以按 magic key 啊 XD 08/16 00:59 : → hijkxyzuw: 要寫 launcher 吧 08/18 11:48 : → hijkxyzuw: 桌面右鍵應該有個建立啟動器,把指令寫成指令檔路徑 08/18 11:53 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.121.235.139 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1534817145.A.F53.html
文章代碼(AID): #1RUtDvzJ (Linux)
文章代碼(AID): #1RUtDvzJ (Linux)