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

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
145: デフォルトの名無しさん [sage] 2023/01/13(金) 00:02:34.96 ID:XUJfPljW(1) AAS
>>142
142(1): デフォルトの名無しさん [sage] 2023/01/12(木) 00:00:34.91 ID:n3PiBbyH(1) AAS
バッチファイルの中で以下のコマンド

cmd /c 子バッチファイル.bat

でさらにバッチファイルを実行させたあと
子バッチファイルの実行中にCtrl + Cで処理を中断して

バッチ ジョブを終了しますか (Y/N)?

をYで終了させたときに、親バッチファイルでもそれを受け継いでるみたいで、また

バッチ ジョブを終了しますか (Y/N)?

と表示されてしまうのですが、親バッチファイルに戻ったときにはバッチファイルの続きを処理するようにできないものでしょうか?

ご存知の方がいらっしゃいましたらお教えください。
親バッチで
@echo off
start /wait "" "cmd /c %~dp0子バッチ.bat"
echo %errorlevel%
paiuse

子バッチで
@echo off
echo %~n0%~x0
ping 127.0.0.1 -n 3 > NUL 2>&1
exit /b 123

とすると子バッチがCtrl + Cで中断した場合親バッチの%errorlevel%に255、かつCtrl + Cの伝達はなし、
子バッチが最後まで終わった場合は親バッチの%errorlevel%に子バッチのexit /bの値123が返るのを確認したよ
要するにコンソールを複数出せばシグナルは伝達しない。意図した動作かは知らんけど
264: デフォルトの名無しさん [sage] 2023/05/05(金) 21:25:45.96 ID:Aaus9EG8(2/2) AAS
powershellはイニシャルコストが高いんだよな
PC起動後初回起動で相当待たされる
よく使う人にはいいんだろうが、1ヶ月に数回とかだと苦痛なんだよ
320
(2): デフォルトの名無しさん [sage] 2023/06/13(火) 10:09:20.96 ID:RNzu8ICZ(1/5) AAS
ググっても書式バラバラだわ実行したらエラーメッセージ出るわ、もうわからん助けて・・・。

やりたいこと:ファイル名ごとに渡すプログラムを変えたい。
わからないこと:
if 変数==内容(分岐処理)でいいのか、if 変数==内容 分岐処理なのかサイトによってバラバラだし
どっちにしてもelseなんて定義されてねーよばーかって出てしまう。
条件分岐の書式を教えてください。
参考にしたサイトの1つ:www.javadrive.jp/command/bat/index8.html
希望する処理内容:
処理用フォルダを丸ごとBatファイルにSendto
ファイル名にcoが含まれるJPG、Webp、PNGは、cov.exeに投げる
ファイル名にautoが含まれるJPG、Webp、PNGは、auro.exeに投げる
ファイル名にrecが含まれるJPG、Webp、PNGは、rec.exeに投げる
今書いてる内容:これでelse?は?と言われる
画像リンク

323: デフォルトの名無しさん [sage] 2023/06/13(火) 10:19:37.96 ID:v41Gwse2(1/2) AAS
>>320
画像が見えないけど
多分、if文が終了しててelseが単独で出てくるのでエラーになってるんだと思う
下のように書けば問題ないはず
if 変数==文字列 (
処理群
) else (
処理群
)
if 変数==文字列 処理 else 処理
if 変数==文字列 処理 else (
処理群
)

こういうのはエラーになる
if 変数==文字列 (処理)
else (命令)
343: デフォルトの名無しさん [] 2023/06/30(金) 00:04:29.96 ID:0Iq5JqfB(1/2) AAS
>>342
342(1): デフォルトの名無しさん [] 2023/06/29(木) 23:59:54.09 ID:8Orz0VrB(1) AAS
>>338
月のはじめに自分で削除
1時間間隔なので
358: デフォルトの名無しさん [sage] 2023/07/04(火) 20:16:07.96 ID:dJR+6uCy(1) AAS
お疲れ
360: デフォルトの名無しさん [sage] 2023/07/04(火) 21:30:04.96 ID:+24T6cXg(2/2) AAS
あとtmp,temp環境変数の書き換え
とくにフォルダとして使ってるものをファイル名にするのは危険
cmdの世界ではtmpがダメだがtempも使わないほうが良い
380: デフォルトの名無しさん [sage] 2023/07/06(木) 18:47:20.96 ID:X7484ET/(8/10) AAS
いや、それより、一番の問題はファイルを処理したらそのファイルのタイムスタンプ変わるから、
毎回同じファイルを処理してしまうんじゃね?これはひどい。
383: デフォルトの名無しさん [sage] 2023/07/06(木) 22:32:33.96 ID:gWNyo9yQ(1) AAS
最近はファイル名にユニコード文字を使うことも多いからなあ
612: デフォルトの名無しさん [sage] 2024/11/10(日) 19:42:53.96 ID:9SnRMU05(2/2) AAS
サブルーチンに置くというのは想定しなかったな
メインの、というかスクリプトの先頭に置く使い方しかしてないや
614: デフォルトの名無しさん [] 2024/11/10(日) 21:35:28.96 ID:p0BF9o8N(1) AAS
>>604
604(1): デフォルトの名無しさん [sage] 2024/11/09(土) 14:43:11.36 ID:A663IrvX(4/5) AAS
あと>>581はデータを引数渡し("%s%")してるので、「"」をデータ内に入れることができない
ファイル渡しすれば確実だが、他に環境変数(s)で渡す場合を示しておく
data=new ActiveXObject("WScript.Shell").Environment("Process")("s").replace(/12=34/g,"4567");
ありがとう。
何時間かやってるけどうまくいかないです。
?@if (0)==(0) echo off
rem ***
:start
?set /p "ss=ss:"
?set "ss=%ss:&=%"
?set /p "savename=保存名:"
?set ss=%ss% option "%savename%"
?echo %ss%確認1
?cscript //nologo /e:jscript "%~f0" "%URL%"
rem ***for /f "tokens=*" %%i in ('cscript //nologo /e:jscript "%~f0" "%ss%"') do set ss= %%i
?echo %ss%確認2
goto :start
rem ***
?@end

// JScript部分
// var data = WScript.Arguments(0);
?data=new ActiveXObject("WScript.Shell").Environment("Process")("ss");
?data = data.replace(/aaaaa/g, "bbbbb");
?data = data.replace(/12=34/g, "56=78");
?data = data.replace(/encoding=seg/g, "");
?WScript.StdOut.WriteLine(data);
?WScript.Quit();

これでやると?で?〜?が無視される。
?にvarという変数を与えても同じ。
?をdata = WScript.Arguments(0);にすると与えた入力が途中で途切れる(実際の入力値に”が入ってるため)
?の代わりにfor文だとbatが落ちる(AppleWebKit/537.36 の使い方が誤っています。)
こういうのをスラスラ書ける天才たちがうらやましい。
688: デフォルトの名無しさん [sage] 2025/03/08(土) 17:00:59.96 ID:oOL+XIfI(1/3) AAS
>>686
686(2): デフォルトの名無しさん [sage] 2025/03/07(金) 23:48:55.40 ID:qVctmwDB(1/2) AAS
タイムスタンプが1980/01/01 8:59:59より前だと表示されないだけ
が正解
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.066s