0

Unicode で名前が付けられたファイルに対してプロセスを実行する必要がありますか? バッチファイルの使い方

私は試した :

 dir /b %folder% > dir.lst

 ::cmd /u /c dir /b %folder% > dir.lst
 FOR /F "delims= tokens=*" %%G IN (dir.lst) DO ( 
 echo %%G
 @set filename2=%%G
 @echo %filename2%


 @set filename=%pathlogs%\!filename2!
 @echo %filename%
 @echo %filename2%
 @%binaries%\gawk -v fn=%filename% -v fn2=%filename2% -f %scripts%\AlexBank_barcode.awk                               %folder%\%filename2% 2> %scripts%\AlexBank_barcode.fil
 @%binaries%\sort -k 1.129,1.144 -T F:\tmp  %pathlogs%\%filename2%.log >      %pathlogs%\%filename2%.log.tmp 2> %scripts%\%filename2%".sort.fil"
 @set filename3=%filename%.log.tmp1
 @%binaries%\gawk -f %scripts%\AlexBank_collect_barcode.awk %pathlogs%\%filename2%.log.tmp 2> %scripts%\AlexBank_collect_barcode.fil
 @set filename3=%filename%.separate_all.log
 @%binaries%\gawk -f %scripts%\AlexBank_separate_barcode.awk %pathlogs%\%filename2%.log.tmp1 2> %scripts%\AlexBank_separate_barcode.fil

 @set filename3=%filename%.separate_statement_le.awk.log

@%binaries%\gawk -v fn=%filename3% -f %scripts%\AlexBank_separate_statement_le.awk %pathlogs%\%filename2%.log.tmp1 2> %scripts%\%filename2%".AlexBank_separate_statement_le.awk.fil" @set filename3=%filename%.separate_statement_gt.awk.log @%binaries%\gawk -v fn=%filename3% -f %scripts%\AlexBank_separate_statement_gt.awk %pathlogs%\%filename2%.log.tmp1 2> %scripts %\%filename2%".AlexBank_separate_statement_gt.awk.fil" )

4

1 に答える 1

0

ここには 2 つのオプションがあります。

  1. コンソール ウィンドウの TrueType フォントを設定する
  2. for /fの出力を反復処理するために使用しないでくださいdir /b。ほとんどの場合、これは不要であり、正しく設定するのがより複雑で、脆弱であり、設定が少し間違っていると Unicode ファイル名で失敗します。forファイルを直接反復処理するために使用できます。

    for %%F in (%folder%\*) do ...
    
于 2013-08-27T20:46:54.230 に答える