【.cmd】 バッチファイルスクリプト %15 【.bat】 (773レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
330
(1): 2023/06/13(火)13:37 ID:lkLOH6hL(1/3)調 AAS
素直にif文書くとこんなん。※インデントは全角スペース
:loop_begin
if "%~1" == "" goto loop_end
echo,%~nx1| findstr /ri /c:"co" >nul 2>nul
if not errorlevel 1 (
  cov.exe "%~dpnx1"
) else (
  echo,%~nx1| findstr /ri /c:"auto" >nul 2>nul
  if not errorlevel 1 (
    auto.exe "%~dpnx1"
  ) else (
    echo,%~nx1| findstr /ri /c:"rec" >nul 2>nul
    if not errorlevel 1 (
      rec.exe "%~dpnx1"
    )
  )
)
shift & goto loop_begin
:loop_end

Perl知ってるなら大丈夫だと思うけど
「を含む」じゃなくて「で始まる」なら>>329か「^」を付け「/c:"^co"」とかに。
331
(2): 2023/06/13(火)13:47 ID:lkLOH6hL(2/3)調 AAS
「&&」と「||」使うとこう。※記述量は減るがマイナー。
echo,%~nx1| findstr /ri /c:"co" >nul 2>nul && (
  cov.exe "%~dpnx1"
) || (
  echo,%~nx1| findstr /ri /c:"auto" >nul 2>nul && (
    auto.exe "%~dpnx1"
  ) || (
    echo,%~nx1| findstr /ri /c:"rec" >nul 2>nul && (
      rec.exe "%~dpnx1"
    )
  )
)

フラグ使うとこう。
set result=
for %%A in (rec auto co) do (
  echo,%~nx1| findstr /ri /c:"%%A" >nul 2>nul && set result=%%A
)
if "!result!" == "co" cov.exe "%%~dpnx1"
if "!result!" == "auto" auto.exe "%%~dpnx1"
if "!result!" == "rec" rec.exe "%%~dpnx1"

複数マッチする事がない、または複数マッチして複数実行してよいなら
バッチにディレクトリパス渡してこう。(gotoのループ無し)
for %%A in ("%~1\*co*") do (cov.exe "%%~A")
for %%A in ("%~1\*auto*") do (auto.exe "%%~A")
for %%A in ("%~1\*rec*") do (rec.exe "%%~A")
333
(1): 2023/06/13(火)18:38 ID:lkLOH6hL(3/3)調 AAS
>>329もその方法だし、マイナーって事はないと思う。

if文本体だとANDとかORを表現し辛くて自分はfindstrにしがち。
今回だと拡張子の条件(jpg, jpeg, webp, png?)のいずれかにマッチしたら目的の処理、
またはいずれにもマッチしなかったらgoto next_loop、みたいな場合に楽。
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.023s