[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ただいまコメントを受けつけておりません。
こんな感じ。attrib
でファイルの属性をとり、findstr
で判定。findstr
の結果は ERRORLEVEL
に格納されているのにそれを結果として利用。
REM isFile.bat attrib %1 > TMP_ATTRIB findstr /R "^A.*" TMP_ATTRIB 1>nul if ERRORLEVEL 1 ( REM ディレクトリ del TMP_ATTRIB exit /b 1 ) else ( REM ファイル del TMP_ATTRIB exit /b 0 )
こんな感じで呼び出す。以下のバッチスクリプトを保存して上述のバッチスクリプトを isFile.bat と命名して同じディレクトリに配置、exec.bat に判定したいファイルをドラッグ・ドロップすることで実行。
ドラッグ・ドロップしたファイル群をループで処理する際は for %%f in (%*) do ()
を用いる。バッチスクリプト内から別のバッチスクリプトを呼び出す際には call
を用いる。
REM exec.bat chcp 65001 echo off set execBatDir=%~dp0 for %%f in (%*) do ( call %execBatDir%\isFile.bat %%f if ERRORLEVEL 1 ( echo %%fはディレクトリ ) else ( echo %%fはファイル ) ) pause
ただいまコメントを受けつけておりません。