1
34/0/2を2桁の34/0/02にパディングしようとしています。 私のコード。 提案...?ファイル内容に0を埋め込む方法は?
@echo off
SETLOCAL enableDelayedExpansion
FOR /F "tokens=1,2,3,4,5* delims=,/" %%a IN (temp1.csv) do (
echo orig %%a/%%b/%%c,%%d,%%e
echo new %%a/%%b/%c:~-2%,%%d,%%e >> temp3.csv
)
type temp3.csv
temp1.csvファイルの内容
Gi-34/0/1,lpu,w-3-016ch1swA1p19_lag
Gi-34/0/10,lpu,w-3-018ch1swA2p19_lag
Gi-34/0/11,lpu,prodca1_lan_sec
Gi-34/0/12,lpu,prodca2_lan_sec
Gi-34/0/13,lpd,
Gi-34/0/14,lpd,
Gi-34/0/15,lpd,
Gi-34/0/16,lpd,
Gi-34/0/17,lpd,
Gi-34/0/18,lpu,aix_to_hmc
Gi-34/0/19,lpu,prodcafl1_lan_sec
Gi-34/0/2,lpu,w-3-016ch1swA2p19_lag
Gi-34/0/20,lpu,prodcafl2_lan_sec
あなたが最初の環境変数に%% cを割り当てる必要があります。これを行うときに、フロントにゼロを追加し、変数を出力するときに最後の2つの位置を引きます。遅延拡張を使用する必要があります。 – Squashman
2つのエラーがあります。1.サブ文字列展開構文を 'for'リファレンスで使用することはできません。そのため、最初に通常の環境変数にその値を割り当てる必要があります。そうするときは、[遅延拡張](http://ss64.com/nt/delayedexpansion.html)を見てください! 2. 1桁の数字からサブストリングを抽出しても、追加のゼロは作成されないので、先行するゼロを前もって追加する必要があります。 – aschipfl