Python 板


LINE

大家好,請跟大家請教一下 先說一個實際範例,小弟我在跑abaqus的inp檔的時候,我可以編輯一個bat檔 內容是:call abaqus j=INPNAME 只要該bat檔跟INPNAME檔在同一個資料夾,當我執行bat檔時,bat會啟動cmd然後執行 abaqus 去讀INPNAME檔。 從這個範例來看,我不需要特地在bat檔裡面編輯cd/d INP所在的路徑 便可以讓cmd知道我目前的路徑並且告訴abaqus。 現在,小弟用python編寫了一個計算工具,並封包成exe檔。 計算過程類似abaqus這樣,執行該exe檔時載入一個txt檔案,然後完成我想要的計算。 如果我想要用bat去執行該exe檔,我必須要在bat檔作一個指定路徑的命令。 EX: cd/d EXENAME 路徑 call EXENAME 我如何仿照abaqus這樣,不需要特地輸入 cd/d EXENAME這樣的命令,讓他知道我的路徑 就是bat檔本身所在的位置並且告訴 EXENAME 呢?? 拜託大大們建議做法或參考資料。 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.190.37
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1548898838.A.91D.html
1F:→ BZnoo: call EXENAME ./文字檔.txt 01/31 10:19
bat只有這樣的內容的話,cmd會跳出不是內部或外部的執行檔,找不到EXENAME 我必須先在前面加一行 「cd/d EXENAME所在路徑」,如何省略這行也能讓cmd知道我要 執行EXENAME。 另外就是我要如何修改原始EXENAME的PYTHON檔,讓EXENAME知道我要讀的txt檔案路徑 就是bat檔所在的路徑。 有部分我沒說清楚,EXENAME所在路徑叫A路徑,bat與txt檔案所在路徑同為B路徑,A 路徑與B路徑不相同 ※ 編輯: caron0225 (60.248.190.37), 01/31/2019 12:35:39
2F:→ justoncetime: bat是在OS上執行,要能任意地方都能跑urexe當然是OS 01/31 19:05
3F:→ justoncetime: 解決,一般是去設定path. 01/31 19:05
4F:→ justoncetime: 如會先cd到bat位置,那就是os.getcwd()現工作目錄 01/31 19:09
5F:→ justoncetime: 如果想知道py自己位置os.path.realpath(__file__) 01/31 19:10
6F:→ justoncetime: 我是g: get curreny py file location, 當然另外要 01/31 19:11
7F:→ justoncetime: 有操作OS的觀念,遇到問題才能選擇比較萬用的方式. 01/31 19:12
8F:→ justoncetime: 尤其是你的程式要丟給別人用的時候 01/31 19:12
9F:→ justoncetime: 還要弄清相對/絕對路徑 01/31 19:14
10F:→ BZnoo: 其實只要在bat檔裡指定EXENAME的絕對路徑就行了,餘相同 01/31 20:09
11F:→ BZnoo: 第一行不要只 call //somedir1/somedir2/EXENAME ./某.txt 01/31 20:12
12F:→ BZnoo: 因為你執行時是在bat所在 ./某.txt 當然是被引用得到的嚕 01/31 20:12
13F:→ BZnoo: //指的是根目錄 若不同碟(區?)則前面要加上其名之類 查一下 01/31 20:15
感謝兩位大大的回答,已經解決我目前問題了!! 首先在windows的環境變數中去加入我的EXENAME路徑。 那麼在cmd中,不論在何種路徑下,都能執行EXENAME。 接著在EXENAME的原始python代碼中,透過os.getcwd()可以抓到我目前的工作路徑。 原本我一直以為os.getcwd()給的路徑指的是EXENAME的所在路徑,其實是指當前OS的 工作路徑,誤會很久了O_Q 感謝兩位大大們的回覆!! ※ 編輯: caron0225 (60.248.190.37), 02/01/2019 10:16:32 題外話,我在windows的環境變數中,並沒有看到abaqus在裡面,abaqus 是怎麼作到 不需要事前cd到執行檔所在路徑就可以執行呢? 是我在安裝abaqus軟體時,安裝檔把路徑給登錄到windows我看不到的地方嗎?? ※ 編輯: caron0225 (60.248.190.37), 02/01/2019 10:31:30
14F:→ justoncetime: docs.microsoft.com/windows/desktop/shell/ 02/01 16:13
15F:→ justoncetime: app-registration 好像是這個吧(自己併路徑吧) 02/01 16:14







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP