0

複数のプロセッサで一連のファイルを実行するバッチ ファイルをセットアップしようとしています。コードは完成しましたが、残りの問題はコードのこのセクションにあります。基本的に、%%f はスペースの後の文字を含む完全なファイル名を格納します。ただし、%1 に到達すると、ファイル名のスペースの後のすべての文字が削除されます。

完全なファイル名を保持するようにこれを変更する方法を知っている人はいますか? ありがとう!

for /R %%f in (*.nas) do call :runnastran %%f

:runnastran
    "mywindow" を開始 "c:\test\nastran.exe" "c:\test\nastran.ini" "%1"

一時停止
4

2 に答える 2

1

%%f では引用符を使用する必要があります。その場合、%1 では必要ないと主張する人もいるでしょう。%1 でそれらを使用する場合は、"%~1" を実行する必要があります。これにより、既存の引用符が存在する場合は移動され、引用符が追加されます。そうすれば、呼び出し時に引用符が使用されていない場合でも安全であり、呼び出しで使用されている場合でも 2 つの引用符セットになることはありません。

for /R %%f in (*.nas) do call :runnastran "%%f"

:runnastran start "mywindow" "c:\test\nastran.exe" "c:\test\nastran.ini" "%~1"

pause
于 2013-09-11T16:22:59.343 に答える
0

DOSでパスを操作するときは、この方法で行うことができます

"c:\Dir1\Dir1.1\File.ext"

またはこの方法

c:\"Dir One"\"Dir One.One"\"File X.ext"
于 2013-09-11T16:20:49.880 に答える