簡體   English   中英

Python-在目錄中的每個文件上執行命令行功能?

[英]Python - Execute command line function on every file in a directory?

我有一個要導入MySQL的CSV文件目錄。 大約有100個文件,手動導入很麻煩。

我的命令行是這樣的:

mysqlimport -u root -ppassword --local --fields-terminated-by="|" data PUBACC_FR.dat

這些文件都是XX.dat類型,即AC.datCP.dat等。在處理它們之前,我實際上首先對其進行了rename 's/^/PUBACC_/' *.dat (通過rename 's/^/PUBACC_/' *.dat )。 理想情況下,我希望能夠在一個腳本中完成兩項任務:重命名文件,然后運行命令。

根據我發現的閱讀內容,類似這樣的內容:

for filename in os.listdir("."):
    if filename.endswith("dat"):
        os.rename(filename, filename[7:])

有人可以幫助我開始使用可以完成此任務的腳本嗎? 讀取文件名,重命名它們,然后為每一個運行mysqlimport命令?

謝謝!

我想可以使用以下類似的python代碼:

import subprocess
import os


if __name__ == "__main__":
    for f in os.listdir("."):
        if (f.endswith(".dat")):
            subprocess.call("echo %s" % f, shell=True)

顯然,您應該將命令從echo改為命令。

有關使用子流程的更多詳細信息,請參見http://docs.python.org/2/library/subprocess.html ,或查看可能的重復項。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM