導航:首頁 > 編程語言 > python批處理腳本

python批處理腳本

發布時間:2023-12-07 07:20:19

❶ bat 打開cmd 執行python文件

python編碼啟動cmd批處理文件(.bat文件),用subprocess方法可以將相應的cmd輸出獲取到,代碼如下:
#import os
#os.system("c:\\sam.bat")
import subprocess
cmd = 'cmd.exe c:\\sam.bat'
p = subprocess.popen("cmd.exe /c" + "c:\\sam.bat abc", stdout=subprocess.pipe, stderr=subprocess.stdout)
curline = p.stdout.readline()
while(curline != b''):
print(curline)
curline = p.stdout.readline()
p.wait()
print(p.returncode)sam.bat批處理文件代碼:
echo hello world!
echo show %1%

❷ python怎麼執行bat文件並傳遞參數給bat文件

使用os模塊的system方法可以執行命令,例如執行D盤的cmd.bat批處理腳本並傳入參數p1:

importos

os.system(r'D:cmd.batp1')

❸ 如何通過Python或批處理指令刪除指定文件夾

不清楚你的實際文件/情況,僅以問題中的樣例說明及猜測為據;以下代碼復制粘貼到記事本,另存為xx.bat,編碼選ANSI,跟要處理的文件放一起雙擊運行

@echooff&cd/d"%~dp0"&modeconlines=5000
rem根據一個txt文本文件里列出的路徑,將指定文件或文件夾刪除
set#=Anyquestion&set_=WX&set$=Q&set/az=0x53b7e0b4
title%#%+%$%%$%/%_%%z%
set"txtfile=xxx.txt"
ifnotexist"%txtfile%"(echo;"%txtfile%"notfound&pause&exit)
for/f"delims="%%ain('type"%txtfile%"')do(
set"isexist="
echo;"%%~a"
ifexist"%%~a"(
set"isexist=1"&rd/s/q"%%~a"
)
ifexist"%%~a"(
set"isexist=1"&del/a/f/q"%%~a"
)
ifnotdefinedisexist(echo;notfound)
)
echo;%#%+%$%%$%/%_%%z%
pause
exit

❹ python使用subprocess.Popen運行bat腳本時報不支持輸入重新定向錯誤分析

大圖請右擊在新標簽頁打開

Popen默認shell參數為False:

為True時默認使用 COMSPEC 環境變數指定的程序為shell:

在Windows上默認為cmd:

args參數為命令字元串時,因為dir是cmd的內建命令,需要指定shell=True:
例如:

而timeout,ping等都是獨立的exe,可以不需要cmd:

args參數是文件路徑形式時:

底層是調用了Windows的API,如下:

調試:

測試:

從調試結果以及測試來看,對於bat文件,可以不寫lpApplicationName參數,Windows會自動使用cmd來運行(使用vbs文件測試返回錯誤:不是正確的win32程序,要指定lpApplicationName為cscript.exe才行,可能只有bat才有這個特權了)。

輸入重定向的問題:
Popen是用創建子進程的方式來執行的,而timeout.exe在暫停時,可接受用戶按鍵來終止,這個時候會需要輸入,但是Popen給子進程的stdin只有

並不能讓timeout重定向到用戶輸入上,所以出錯。

解決的方法有很多,最簡單的替換掉timeout語句為ping -w xxx 127.0.0.1 或者直接由python來接管timeout。

❺ 如何用python運行bat文件

我沒有測試它的窗口盒。
這是我在Mac操作系統上的嘗試
Dinh-Phams-MacBook-Pro:tmp dinhpham$ cat > t.bat
print "abc"
Dinh-Phams-MacBook-Pro:tmp dinhpham$
Dinh-Phams-MacBook-Pro:tmp dinhpham$ python t.bat
abc

Python解釋器不關心.py擴展
如果要將.bat文件載入為Python模塊,只需使用
imp.load_source(path_to_file)

❻ 如何使用批處理執行python腳本,並把python腳本的控制台日誌輸出到一個log文件中

1, 用絕對路徑試試:D:\logs\log.txt;
2, 最後的exit去掉試試,反正最後一行執行完也會自然退出。
3, 另寫一個簡單的python測試腳本,裡面只有一行 print 'Hello World', 然後用上述批處理執行一下看看log對不對。

❼ 批處理中運行python程序 並傳入n個參數,怎麼寫。

python 包含一個"argparse"的模塊,提供了異常強大的參數解析功能。下面是一個簡單的例子

#!/usr/bin/envpython
#coding:utf-8
#

importsys
importargparse


if__name__=="__main__":
parser=argparse.ArgumentParser(
description='')
parser.add_argument(
'integers',metavar='int',nargs='+',type=int,
help='anintegertobesummed')
parser.add_argument(
'--log',default=sys.stdout,type=argparse.FileType('w'),
help='')
args=parser.parse_args()
args.log.write('%s '%sum(args.integers))
args.log.close()

$ ./test2.py 1 2 3 4 5 6 7
28
$ ./test2.py 633 132
765
$

閱讀全文

與python批處理腳本相關的資料

熱點內容
解放戰爭pdf王樹增 瀏覽:685
python壓測app介面 瀏覽:953
抖音app怎麼推薦 瀏覽:100
歌庫伺服器能做其他什麼用途 瀏覽:95
安卓44虛擬機怎麼root 瀏覽:38
程序員瘦身c盤空間 瀏覽:243
dell伺服器溫度怎麼看 瀏覽:303
游戲伺服器地址是什麼 瀏覽:69
C語言經過編譯之後的程序是 瀏覽:160
編程設計一個簡易計算機界面 瀏覽:516
游戲壓縮包損壞 瀏覽:485
壓縮包圖標下載 瀏覽:229
日本解壓喜劇 瀏覽:38
蕪湖程序員兼職如何接 瀏覽:368
句譯app怎麼用 瀏覽:342
vs2010編譯c怎麼用 瀏覽:104
摩拜單車沒app怎麼退款 瀏覽:469
蘋果手機下載的app怎麼變色了 瀏覽:903
韻母app怎麼寫 瀏覽:603
命令提示符是中文 瀏覽:167