ファイル内の特定の文字列を別の変数文字列に置き換えます。 名前がattack_1〜attack_100で、番号が1つしかない100個のファイルがあります。 また、私は1つのファイル名を持っています1.dat 私は特定の文字列ではなく、 "角度=変数"で置換する1.datファイルの文字列 "angle = 5"を持っていますそれぞれのattack.txtファイル。 2種類のバッチを書きますが、どちらもできません。cmdを使用して変数を検索して置き換えます
for /l %%x in (1, 1, 100) do (
echo %%x
set /p a=<C:\Users\amirhosssein\Desktop\airfoil\batch\JOU\attack_%%x.txt
%a%
powershell -Command "(gc 1.dat) -replace 'airfoilmesh', 'airfoilmesh_%%x' -
replace 'angle=5','angle=%a%' | Out-File Okjou%%x.jou"
)
ともうまく機能し、それらのこの
cd "C:\Users\amirhosssein\Desktop\airfoil\batch\JOU"
for /l %%x in (1, 1, 100) do (
echo %%x
powershell -command "$amir=Get-Content attack_%%x.txt"
powershell -command "Write-Output amir"
powershell -Command "(gc 1.dat) -replace 'airfoilmesh', 'airfoilmesh_%%x' -
replace 'angle=5','angle=%amir%' | Out-File Okjou%%x.jou"
)
非。 (空)
プロセス全体をPowerShellに変換することを強くお勧めします。 –
変数が(ある時点で)55(たとえば、 - angle = 55)になる可能性がありますか、言い換えれば、その値に1より多くの5がある可能性がありますか? – codemaker