1

次のファイルを含むディレクトリが与えられた場合

image1.txt
image2.txt
image3.txt

最も古いファイルを取得したい (古いセットの日付が最初になるように、ファイルをデータで並べ替える):

dir /b /od c:\test\image?.txt | findstr ^1

cmd.exe に手動で入力すると、うまく機能します。ここで (バッチ スクリプトで) このコマンドの出力を変数に入れたいと思います。これどうやってするの?ありがとうございました!

更新: ループを使用せずに直接的な方法があるかどうか疑問に思っていますか?

4

4 に答える 4

2
For /F %%A in ('"dir /b /od C:\test\image*.txt|findstr ^1"') do set myVar=%%A

Forループを介して実行できます。コマンドラインで試してみてください。テストしたところ、正常に動作します

出力:

set myVar=image1.txt

コマンドラインで Set を実行すると、次のことがわかります。

myVar=image1.txt
NUMBER_OF_PROCESSORS=2
于 2012-04-12T20:13:00.230 に答える
-2

set variableName = dir /b /od C;\test\image?.txt | 検索文字列 ^1

注: これはテストされていません。ソース:

グーグル

于 2012-04-12T20:09:14.993 に答える