【.cmd】 バッチファイルスクリプト %15 【.bat】 (768レス)
前次1-
抽出解除 レス栞

3
(1): デフォルトの名無しさん [] 2022/09/16(金) 00:29:57.20 ID:9kvq1ahn(2/3) AAS
FOR /f "tokens=1,2,3 delims=," %%a in (%HOGE%) do (
ECHO %%a %%b %%c
)
の間違いでした。だれか助けて〜
195
(1): デフォルトの名無しさん [sage] 2023/03/01(水) 15:49:02.20 ID:tZuIfIoC(1) AAS
>>192
192(1): デフォルトの名無しさん [] 2023/03/01(水) 12:26:47.31 ID:fuKOGN7X(1/6) AAS
すいません
超初心者的な質問なんですが、
バッチファイルって、サブルーチンを設定する時に、一度実行されてしまうんですよね?
バッチファイルにサブルーチンなんて無い
サブルーチン的な事したければラベル書いてそこにジャンプする
当然ジャンプじゃなくて上から来た場合も普通に実行される
それが嫌ならラベルの直前に exit/b でも書いとけ
236: デフォルトの名無しさん [] 2023/04/13(木) 18:51:07.20 ID:dCQIGdp/(1) AAS
>>225
225(1): デフォルトの名無しさん [sage] 2023/03/10(金) 17:32:01.38 ID:eGLVllnw(1/2) AAS
散々コマンドリファレンスを読んだりググったけど分からないことを教えてください。

type data.txt | hoge.bat
みたいな事がしたいのですが、バッチスクリプトで、
・bash での read line
・VBScript での WScript.StdIn.ReadLine
のように、1行ずつ標準入力を読むことは可能でしょうか?やっぱり駄目でしょうか?

bing のチャットAIに丸投げしてみた

バッチスクリプトで標準入力を1行ずつ読む方法については、以下のような方法があります¹⁴。
- `for /f %%[アルファベット1文字] in ([ファイル名]) do ([処理])` を使う方法
- `set /p 変数名=` を使う方法

例えば、以下のようなバッチスクリプトで、data.txt の内容を hoge.bat に渡すことができます。
```
@echo off
for /f %%a in (data.txt) do (
echo %%a | hoge.bat
)
```
上記の例では、data.txt の内容を1行ずつ読み込み、hoge.bat に渡しています。¹
258: デフォルトの名無しさん [sage] 2023/04/28(金) 00:51:43.20 ID:aBUvFTO3(1) AAS
>>256
256(1): デフォルトの名無しさん [sage] 2023/04/27(木) 00:51:53.98 ID:DnKcM+QL(1) AAS
自己解決しました。
理屈がよくわかりませんが、!の直前に^^とすることでエスケープすることができました
echo RewriteCond %%{REQUEST_FILENAME} !-f >> !combined_directory!.htaccess
echo RewriteCond %%{REQUEST_FILENAME} !-d >> !combined_directory!.htaccess

echo RewriteCond %%{REQUEST_FILENAME} ^^!-f >> !combined_directory!.htaccess
echo RewriteCond %%{REQUEST_FILENAME} ^^!-d >> !combined_directory!.htaccess

お騒がせいたしました。
なんでだろう
^^どころか^も使わないものな
289: デフォルトの名無しさん [] 2023/05/10(水) 17:07:25.20 ID:7WScgW4R(2/3) AAS
>>288
288(1): デフォルトの名無しさん [sage] 2023/05/10(水) 07:27:54.84 ID:7bNTa4KZ(1) AAS
>>286
エラー表示で 「CALL /?」または「FOR /?」 とあるだろ
それ見ると %~ の使い方がわかるよ
どちらにせよ全角の引用符は消えない

AIがまだポンコツだし、その翻訳もおかしいので
あまり参考にならない
ありがとうございます、ヘルプを参照しました。

%~0 で 周りを囲んだダブルクォーテーションは除去できる、

%~BatFileTag% は 構文エラー、ですね。
305: デフォルトの名無しさん [] 2023/06/08(木) 07:04:40.20 ID:qSJ8V+Su(3/3) AAS
304様♪
echo set m=^1>>%MEMO_OUT% で無事に解決できました!
本当にありがとうございました(*- -)(*_ _)ペコリ
548: デフォルトの名無しさん [sage] 2024/06/17(月) 00:26:58.20 ID:BTOFB8aB(1) AAS
むしろpowershellのほうがググれば沢山出てくるし書きやすいと思うけどね
552: デフォルトの名無しさん [] 2024/06/17(月) 23:01:16.20 ID:4L+665Jw(1/2) AAS
ドラッグアンドドロップなんてバッチ処理の発想じゃねえなw
587: デフォルトの名無しさん [] 2024/11/08(金) 03:03:23.20 ID:NHkTpL6A(2/5) AAS
日本語のファルダだとダメなんですかね?
663: デフォルトの名無しさん [sage] 2025/02/17(月) 23:32:14.20 ID:l9ByBUai(1) AAS
for %%A in(*.xlsx *.xls)←ループ処理する時に、
*.xlsと*.xlsxを指定したら.xlsxは2回実行されてしまう。
*.xlsだけ指定すると1回だけ実行される。

含むではなくて、*.xlsで終わるか*.xlsxで終わるものを指定する検索はどうしたら出来ますか?
667
(1): デフォルトの名無しさん [sage] 2025/02/18(火) 18:45:22.20 ID:TLR0SIQr(1/2) AAS
dir /b|findstrよりももしかしたら遅いかもしれんが
for /f "tokens=* delims=" %%i in ('forfiles /m *.xls') do @echo %%~i
691: デフォルトの名無しさん [sage] 2025/03/17(月) 15:46:18.20 ID:HZpHcb9U(1) AAS
oh my posh for cmdなんてあるんだな
さすがにwtじゃないと駄目っぽいが
735: デフォルトの名無しさん [] 2025/06/14(土) 16:43:38.20 ID:yDCgYQHw(4/4) AAS
>>733
733(1): デフォルトの名無しさん [] 2025/06/14(土) 15:14:17.65 ID:eF2X+eHO(1) AAS
なにかおかしいと思ってたんだが
これ拡張子が.cmd のバッチファイルを想定してあるんだな
.bat だと無限ループするから変だと思った
そういうことなら set CMDLINE= の行を
set CMDLINE=!CMDCMDLINE:*%~x0" ="!
にすれば .cmd でも .bat でも .Cmd でも .BAT でもおけだな
766: デフォルトの名無しさん [sage] 2025/08/03(日) 11:49:08.20 ID:ggxTCWx/(1) AAS
2年前には入ってたと思うけど
ストアアプリなので既存のユーザーには入らない
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.041s