文件在jden中重命名为cmd中的csv转换

时间:2016-04-21 17:12:23

标签: python json csv batch-file

我试图通过命令提示符运行此python命令,如下所示:

python "C:\Users\Bhavik\Desktop\Plaid Conversions\json_to_csv.py" accounts "C:\Users\Bhavik\Desktop\New folder (2)\file.json" "C:\Users\Bhavik\Desktop\New folder (2)\file.csv"

其中

  • C:\Users\Bhavik\Desktop\Plaid Conversions\json_to_csv.py是python文件所在的位置
  • accounts - 是开始阅读记录的根节点
  • C:\ Users \ Bhavik \ Desktop \ New folder(2)\ file.json - json文件的位置
  • C:\ Users \ Bhavik \ Desktop \ New folder(2)\ file.csv - csv的目标路径

我正在尝试通过创建一个批处理文件来自动执行此过程,在该文件中它自己读取文件名并重命名使用相应文件名创建的csv文件。

以下是我正在尝试的代码:

C:  
:loop  
cd c:/Windows/system32  
set dir1=C:\Users\Bhavik\Desktop\PC  

for /r %X IN ("%dir1%\*.json") DO (   
        python "C:\Users\Bhavik\Desktop\Plaid Conversions\json_to_csv.py" accounts "%%~XI" "C:\Users\Bhavik\Desktop\PC\test.csv"  
        var name= $(echo %nxX | cut -f 1 -d '.')  
        rename C:\Users\Bhavik\Desktop\PC\test.csv name.csv  
        )  

goto loop  

这里我尝试设置目录并使其读取json文件名,并在python命令中使用,其中需要提供json文件目标。 但是我面临着一些问题。

  1. %% X此时出乎意料。
  2. 文件" C:\ Users \ Bhavik \ Desktop \ Plaid Conversions \ json_to_csv.py",第89行,中
        fp = open(json_file_path,' r')
    FileNotFoundError:[Errno 2]没有这样的文件或目录:' %% ~XI'

  3. '无功'不被视为内部或外部命令, 可操作程序或批处理文件。
  4. 大家好,
    我已经研究过代码并达到以下目的:
    C:
    :循环
    cd c:/ Windows / system32
    set dir1 = C:\ Users \ Bhavik \ Desktop \ PC2

    表示%X IN("%dir1%*。json")DO(
        set" filename1 =%~nX"
            echo%filename1%
            python" C:\ Users \ Bhavik \ Desktop \ Plaid Conversions \ json_to_csv.py"帐号"%X" " C:\用户\ Bhavik \桌面\ PC2 \ test.csv"
            重命名" C:\ Users \ Bhavik \ Desktop \ PC2 \ test.csv" "%文件名1%的.csv" )

    goto loop

    但我现在面临的问题是,当我设置文件名时,它显示文件夹中的第一个json文件,但它在echoing上显示的值是最后一个json文件,这就是它如何重命名它。我假设这是因为它解析整个文件夹,这就是为什么每次都回显最后一个文件。

    如何让它一次读取并回显一个文件并重命名?有什么建议吗?

1 个答案:

答案 0 :(得分:0)

对不起伙计们,

我没想过。以下是我为实现目标所做的工作:

C:
:循环
cd c:/ Windows / system32
set dir1 = C:\ Users \ Bhavik \ Desktop \ PC2
setlocal enabledelayedexpansion
对于%X IN(“%dir1%*。json”)DO(
        python“C:\ Users \ Bhavik \ Desktop \ Plaid Conversions \ json_to_csv.py accounts”%X“”C:\ Users \ Bhavik \ Desktop \ PC2 \ test.csv“
        重命名“C:\ Users \ Bhavik \ Desktop \ PC2 \ test.csv”“%~nX.csv”)

转到循环
谢谢