0
FOR %%? IN (file_to_be_queried) DO (
    ECHO File Name Only       : %%~n?
    ECHO File Extension       : %%~x?
    ECHO Name in 8.3 notation : %%~sn?
    ECHO File Attributes      : %%~a?
    ECHO Located on Drive     : %%~d?
    ECHO File Size            : %%~z?
    ECHO Last-Modified Date   : %%~t?
    ECHO Parent Folder        : %%~dp?
    ECHO Fully Qualified Path : %%~f?
    ECHO FQP in 8.3 notation  : %%~sf?
    ECHO Location in the PATH : %%~dp$PATH:?
)

これはhttp://www.robvanderwoude.com/battech_fileproperties.phpで見ました。

しかし、それを適用しようとすると、ループ内で「セット」を使用しています

SET datetime_t = %%~t?

エコー datetime_t %datetime_t% > result.txt

ファイル内のみ表示

datetime_t
datetime_t
datetime_t
datetime_t

この変数はどうなりますか?空ですか?

4

1 に答える 1

1

これを試して:

setlocal enabledelayedexpansion
Rem Above is required for this to work

FOR %%? IN (file_to_be_queried) DO (
ECHO File Name Only       : %%~n?
ECHO File Extension       : %%~x?
ECHO Name in 8.3 notation : %%~sn?
ECHO File Attributes      : %%~a?
ECHO Located on Drive     : %%~d?
ECHO File Size            : %%~z?
ECHO Last-Modified Date   : %%~t?
ECHO Parent Folder        : %%~dp?
ECHO Fully Qualified Path : %%~f?
ECHO FQP in 8.3 notation  : %%~sf?
ECHO Location in the PATH : %%~dp$PATH:?

SET datetime_t=%%~t?
Echo datetime_t !datetime_t! > result.txt
Rem Notice use of "!"
)

そして、それはうまくいくはずです。

モナ

于 2013-11-11T10:38:29.663 に答える