導航:首頁 > 編程語言 > 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批處理腳本相關的資料

熱點內容
怎麼打開隱私與應用加密的菜單 瀏覽:416
我的世界伺服器小游戲的地址大全 瀏覽:578
在網路安全中加密安全機制提供了數據的 瀏覽:249
南京前端程序員私活怎麼收費 瀏覽:981
拓撲pdf 瀏覽:440
如何在工行app查我的訂單 瀏覽:214
車壓縮機改電動 瀏覽:83
如何尋找音樂app 瀏覽:831
一加加密的照片 瀏覽:200
阿里雲虛擬主機php 瀏覽:639
不卡點的解壓視頻 瀏覽:391
hex文件下載單片機 瀏覽:873
實現編譯器的自展技術 瀏覽:655
app開發者怎麼突破 瀏覽:418
安卓手機amr格式是什麼 瀏覽:556
找到最小的k個數並有序輸出python 瀏覽:595
thinkphp模板php標簽 瀏覽:165
如何識別毛筆字的app 瀏覽:670
安卓系統怎麼把圖片背景變透明 瀏覽:841
linuxtimercreate 瀏覽:41