[問題] .desktop 檔的設定

看板Linux作者 (( ̄▽ ̄#)﹏﹏)時間12年前 (2013/09/15 02:38), 編輯推噓2(202)
留言4則, 4人參與, 最新討論串1/1
是這樣的 我現在有一個 bash script 然後額外設定了一個 .desktop 讓他可以直接用右鍵的方式執行 但是現在碰到一個問題: 有個程式在用這方法開啟時會出錯 顯示說找不到某檔案 但是已經確認過這檔案確實在該在的位置 而且直接切到他的那個目錄下用指令執行也都一切正常 後來發現是兩邊的 $PWD 不同導致的 用右鍵選單的 $PWD 是位在自己的家目錄 想要請問一下 .desktop 要怎麼弄才能讓它的 $PWD 會是那個程式所在的目錄 -- #1G5hAego (StupidClown)

07/31 00:23,
之前有看過GPS顯示現在位置在水庫裡的XD
07/31 00:23

07/31 00:32,
之前有看過G2S顯示現在位置在水庫裡的XD 看錯 嚇到了......
07/31 00:32

07/31 00:33,
樓上XDDDD
07/31 00:33

07/31 00:33,
XDDDD
07/31 00:33

07/31 00:34,
G2S:CP64在他的推文中提到了你
07/31 00:34
-- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.120.229.29

09/15 09:09, , 1F
script第一行先cd到程式所在目錄
09/15 09:09, 1F
嗯... 可以提示一下怎麼做嗎?

09/15 09:16, , 2F
或者在desktop的Exec=放上完整的檔案位置
09/15 09:16, 2F

09/15 11:40, , 3F
加上 Path=工作路徑
09/15 11:40, 3F
目前有問題的是按右鍵後那個被拿去傳入給 script 呼叫執行的程式有問題 並不是 script 本身有執行問題@@ == 後來是在 script 裏面 先用 readlink -f 把路徑還原成原本的路徑 (路徑上有 link) 再把他拆成 目錄 和 檔名 然後 cd 到目錄 直接為檔名過去才成功來著... == 順便想問一下 如果要用 sed 把像 /home/CP64/test/main.exe 這類的路徑 拆成 /home/CP64/test 和 main.exe 然後分別存進兩個變數 pattern 有啥比較簡潔的寫法嗎? 目前是直接用取代的方式掐頭去尾來著@@ ==

09/15 17:02, , 4F
用 basename 和 dirname ?
09/15 17:02, 4F
謝謝@@ 一想到處理就一頭熱的去弄完全忘了可以先查指令(つД‵) ※ 編輯: CP64 來自: 140.120.229.29 (09/15 17:05)
文章代碼(AID): #1IDAqskR (Linux)