- 1 名前:デフォルトの名無しさん mailto:sage [2022/09/14(水) 20:04:01.36 ID:XL8H98jz.net]
- 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう 過去スレ %14 https://mevius.5ch.net/test/read.cgi/tech/1597442426/ %13 https://mevius.2ch.net/test/read.cgi/tech/1542779527/ %12 https://mevius.2ch.net/test/read.cgi/tech/1489207631/ %11 https://echo.2ch.net/test/read.cgi/tech/1424858999/ %10 https://peace.2ch.net/test/read.cgi/tech/1374205515/ %9 https://toro.2ch.net/test/read.cgi/tech/1335015478/ %8 https://toro.2ch.net/test/read.cgi/tech/1315844420/ %7 https://hibari.2ch.net/test/read.cgi/tech/1298873550/ %6 https://hibari.2ch.net/test/read.cgi/tech/1277465356/ %5 https://pc12.2ch.net/test/read.cgi/tech/1242268171/ %4 https://pc12.2ch.net/test/read.cgi/tech/1229955189/ %3 https://pc11.2ch.net/test/read.cgi/tech/1217860043/ %2 https://pc11.2ch.net/test/read.cgi/tech/1197881068/ 【.cmd】 バッチファイルスクリプト %1 【.bat】 https://pc11.2ch.net/test/read.cgi/tech/1178281991/ バッチファイルプログラミング 3.bat https://pc11.2ch.net/test/read.cgi/tech/1148485555/ バッチファイルプログラミング 2.bat https://pc8.2ch.net/test/read.cgi/tech/1104911889/ バッチファイルプログラミング質問スレ https://pc5.2ch.net/test/read.cgi/tech/1040614686/
- 893 名前:デフォルトの名無しさん mailto:sage [2025/12/12(金) 12:39:23.24 ID:kUSQ7o+M.net]
- 呼び出す方法は以下になりますが、これだと起動に時間がかかります。
もう少し素早く起動させる方法はないでしょうか? @echo off tasklist | find "pwahelper.exe" > NUL if %ERRORLEVEL% == 0 ( taskkill /im pwahelper.exe /f ) else ( start shell:Appsfolder\Microsoft.Copilot_8wekyb3d8bbwe!App )
- 894 名前:デフォルトの名無しさん mailto:sage [2025/12/12(金) 12:52:42.13 ID:kUSQ7o+M.net]
- 修正できました。
- 895 名前:デフォルトの名無しさん mailto:sage [2025/12/12(金) 13:29:31.62 ID:kUSQ7o+M.net]
- すいません。
修正できたと思ったのですが、無理でした。 batで素早くCopilotを起動する方法を教えてください。 ちなみにショートカットキー(Windowsキー+Cキー)だとすぐに起動します。
- 896 名前:デフォルトの名無しさん mailto:sage [2025/12/13(土) 13:19:14.23 ID:jWXCFmDk.net]
- start shell〜は内部でexplorerに解釈を丸投げする方法
バッチでそれ以上に早く呼ぶ手段は無い
- 897 名前:デフォルトの名無しさん mailto:sage [2025/12/13(土) 13:30:19.84 ID:BSmFYLNE.net]
- わかりました。
- 898 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 05:49:22.65 ID:oaXs9VJj.net]
- そういうのはahkでやれ
ahkはWindowsのシェルスクリプト最強格
- 899 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 11:03:37.81 ID:u2LUgxm/.net]
- ッベでめずらしいcmdネタ
https://www.youtube.com/watch?v=o71nZkMx62w
- 900 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 15:02:20.18 ID:EpUZkvst.net]
- @echo off
"WinSCP.comのパス" ^ /command ^ "open ftps://ユーザー名:パスワード@ホスト名 -explicit" ^ "synchronize remote -delete ローカルホスト リモートホスト" ^ "exit" こちらのbatなのですが、なぜかインデントを入れないと正常に動作しません。 インデントなしでも正常に動作する方法はありますか?
- 901 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 18:49:38.02 ID:JO3wGpxW.net]
- インデント(半角空白1文字でいい)がないと誤動作する場合が出てくる
行連結するには ^(キャレット)は行の最後に書き、その後ろには改行しかないこと(半角空白があるとそれも含めて連結される) キャレットの後ろの改行は消えることになるので次の行の先頭の文字はどういう扱いになるのか ^(改行) (次の行の先頭文字) とあったら ^(次の行の先頭文字) というように改行が消えてなくなるわけ で、この場合、^の付いた(次の行の先頭文字)はエスケープした単なる文字として取り扱われることになる 「^"」は単なる文字となるわけ とすると""の中にある半角空白で引数が分離されることになる この特性を利用して set LF=^ と2行分改行のみの行を記述するというテクニックが使えることになる
- 902 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 18:58:19.54 ID:JO3wGpxW.net]
- ただし、上で書いたようにキャレットの後ろに半角空白を置くというのはまあ止めておくこと
素直にインデントしとけ
- 903 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 19:04:07.62 ID:EpUZkvst.net]
- わかりましたインデントします。
- 904 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 19:09:33.68 ID:JO3wGpxW.net]
- すまん
俺が間違って覚えてただけだったみたいだ 俺のレスは忘れてくれ
- 905 名前:デフォルトの名無しさん mailto:sage [2025/12/15(月) 20:04:51.36 ID:EpUZkvst.net]
- え
じゃあ引き続き回答を待ちます。
- 906 名前:デフォルトの名無しさん mailto:sage [2025/12/16(火) 05:37:17.11 ID:f6SOomyy.net]
- https://www.google.com/search?udm=50&q=bat+%5E%E3%81%A7%E8%A1%8C%E3%82%92%E9%80%A3%E7%B5%90%E3%81%99%E3%82%8B%E3%81%A8%E3%81%8D%E3%81%AE%E6%B3%A8%E6%84%8F%E7%82%B9
- 907 名前:デフォルトの名無しさん mailto:sage [2025/12/16(火) 06:35:51.74 ID:X8ji9Gvx.net]
- ^の後には何も入れてないです。
- 908 名前:デフォルトの名無しさん [2025/12/31(水) 12:23:00.17 ID:RT9pwFP0.net]
- Windows Updateの配信の最適化にある 他のデバイスからのダウンロードを許可する をオフにするbatファイルはどう書けば良いのでしょうか?
- 909 名前:デフォルトの名無しさん [2025/12/31(水) 13:59:46.03 ID:y4cdxon1.net]
- rm -Rf /
- 910 名前:デフォルトの名無しさん mailto:sage [2026/01/11(日) 07:52:18.42 ID:I5/G+WzX.net]
- 英語の勉強用バッチ
why-sky-is-blue.bat start "" "https://www.google.com/search?q=%~n0-in-english-and-japanese&udm=50
- 911 名前:デフォルトの名無しさん [2026/02/08(日) 19:34:08.17 ID:k7IV6YGZ.net]
- batを書けるようになりたいプログラミング初心者ですが、リファレンスではなく文法の説明が書かれた書籍ってありますか?
昔からあるものなのに、よさげな書籍が見つかりません。 batからプログラミングを始めようとする方がいないから初心者用の書籍がないのでしょうか。 他のプログラミング言語を勉強してから、batを補足的に使っている方が多い?
- 912 名前:デフォルトの名無しさん mailto:sage [2026/02/08(日) 20:06:15.23 ID:wrNB4YVU.net]
- >>911
とほほのバッチ入門 - とほほのWWW入門 https://www.tohoho-web.com/ex/bat.html >>batを書けるようになりたい もしよければ以下2点について聞かせて 1. 実際に目的(解決したい課題)があってのことなのか、それとも手段が目的化しているのか 2. 他の選択肢を検討した上での判断なのか、それとも闇雲にbatを選んだのか
- 913 名前:デフォルトの名無しさん [2026/02/08(日) 21:29:49.47 ID:k7IV6YGZ.net]
- >>912
インフラエンジニアをしております。転職先の業務でシェルスクリプトとbatを使用しているのでできるようになってほしいと言われました。 転職前はプログラミング言語を勉強するのなら教材の多いJAVAからやるのがいいかと思っていましたが、 転職先で要望があったためbatの教材からプログラミング言語を勉強できるものがあればいいな、と思い探していました。
- 914 名前:デフォルトの名無しさん mailto:sage [2026/02/08(日) 21:56:06.86 ID:dflgTC/x.net]
- >>913
そういうことであるなら、まずシェルスクリプトを学んでみてはいかが? UNIXコマンドを駆使できるようになるので、後々役に立つと思うよ 自分もシェルスクリプトを書きながら、同じようにコマンドを動かすバッチファイルを書いていたので、 その違いを頭に入れながら覚えることができたと思う シェルスクリプトが書ければバッチファイルはコマンドラインリファレンスを読めば普通にかけるようになると思う ただ、シェルスクリプトは教材が問題で、今何があるだろう 20年も前のことだし、今もオライリーの「詳解シェルスクリプト」は使ってる人がいるんだろうか それと、bashなどのシェルの解説なんかも読んでおくと、思いもよらないところで潰しが効くかもしれない
- 915 名前:デフォルトの名無しさん [2026/02/08(日) 23:10:38.85 ID:zvdUt0An.net]
- ftpサーバーにバッチファイルでコピーとか移動とかできるの?
可能ならやり方教えて下さい
- 916 名前:911 [2026/02/08(日) 23:57:32.12 ID:k7IV6YGZ.net]
- >>914
丁寧にありがとうございます! 「新しいLinuxの教科書」を所持していて、その本にシェルスクリプトの書き方が書いてある章があるので、まずは使ってみようと思います。 シェルスクリプトとbatができるようになったら、他のプログラミング言語も挑戦してゆきたいです。
- 917 名前:デフォルトの名無しさん mailto:sage [2026/02/09(月) 07:03:36.65 ID:Tk5m5sPE.net]
- ここ読んでおけば大体OK
https://www.google.com/search?q=%E3%83%90%E3%83%83%E3%83%81%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A7%E8%A6%9A%E3%81%88%E3%82%8B%E3%81%B9%E3%81%8D%E6%A7%8B%E6%96%87%E3%83%BB%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92%E5%84%AA%E5%85%88%E5%BA%A6%E9%A0%86%E3%81%AB100%E5%80%8B%E3%81%8A%E3%81%9B%E3%83%BC%E3%81%A6&udm=50
- 918 名前:911 [2026/02/09(月) 07:32:12.24 ID:Rxo6qWG3.net]
- >>917
サンクス‼
- 919 名前:デフォルトの名無しさん mailto:sage [2026/02/09(月) 12:08:14.19 ID:tiXp1BFN.net]
- >>915
scp
- 920 名前:デフォルトの名無しさん mailto:sage [2026/02/10(火) 08:03:05.71 ID:l+3lvzax.net]
- >>915
「ftp バッチ処理」でggr 具体的には-sオプション
- 921 名前:デフォルトの名無しさん [2026/02/10(火) 18:49:48.78 ID:wUoOZCFq.net]
- >>911
2000年代の古本を買うといい
- 922 名前:デフォルトの名無しさん [2026/02/10(火) 18:52:27.43 ID:wUoOZCFq.net]
- >>916
最近の本は勧められない 素人が書いている本ばかりだから
- 923 名前:デフォルトの名無しさん [2026/02/10(火) 18:54:43.55 ID:wUoOZCFq.net]
- >>916
「入門UNIXシェルプログラミング―シェルの基礎から学ぶUNIXの世界」がいい。 bashのスクリプトの話になると変な情報ばかりあるから気をつけて。 ただのshから始めないと変な癖がつく。
- 924 名前:デフォルトの名無しさん mailto:sage [2026/02/16(月) 13:05:37.73 ID:wH6WjpJk.net]
- call :xxx>file
という書き方があったこと
- 925 名前:デフォルトの名無しさん mailto:sage [2026/02/16(月) 13:29:26.12 ID:wChoVeur.net]
- バッチはマトモな変数が無い事とマトモなエスケープが無いのが鬼門
echo on で奇妙な仕様を確認しよう
- 926 名前:デフォルトの名無しさん mailto:sage [2026/02/16(月) 17:53:34.80 ID:sNEjrVjF.net]
- windowsネイティブだとwshのvbsのほうができることは多いな
オワコンらしいけど現状ではどのマシンでも使えるし、 いつまで使えるかが問題だ 遅くてよければwslのshell scriptというのもありだと思う
- 927 名前:デフォルトの名無しさん mailto:sage [2026/02/16(月) 20:38:17.88 ID:foQ54vBA.net]
- vbsは廃止路線だからwshのjsのほうが良いんじゃね?
新しい関数使えないからムカつくけど
- 928 名前:デフォルトの名無しさん mailto:sage [2026/02/16(月) 21:27:46.46 ID:/qYBmVkY.net]
- vbs便利なのにね
- 929 名前:デフォルトの名無しさん mailto:sage [2026/02/17(火) 03:17:12.83 ID:+shshvQZ.net]
- wshのウンコみたいなincludeの仕組みを知ったその日以来全く使ってない
- 930 名前:デフォルトの名無しさん mailto:sage [2026/02/17(火) 03:54:31.48 ID:yphOTVP5.net]
- wsfならhtmlと一緒だがそんなにクソか?
- 931 名前:デフォルトの名無しさん [2026/02/25(水) 12:10:59.94 ID:a5dUJy/f.net]
- windowsの共有フォルダにあるbatファイルで
オレ以外が実行したらそく終了するのってできる? セキュリティではなくて うっかり実行防止が目的です
- 932 名前:デフォルトの名無しさん mailto:sage [2026/02/25(水) 12:27:35.86 ID:NS4ar3H3.net]
- >>931
実際に操作してる人物を判定するのは無理だけど、ログインユーザーを判定することは可能
- 933 名前:デフォルトの名無しさん mailto:sage [2026/02/25(水) 13:48:20.38 ID:NyLQe+zv.net]
- if not exist k:\key.txt goto error
とか set実行してみてなんかユニークな文字列チェックするとか
- 934 名前:デフォルトの名無しさん mailto:sage [2026/02/26(木) 11:22:32.23 ID:RO4Hxq5n.net]
- ファイルの属性で実行権限を自分だけにすればいいんじゃないか
- 935 名前:デフォルトの名無しさん mailto:sage [2026/02/27(金) 22:19:21.97 ID:x+I7V6j9.net]
- %USERNAME% で実行してるアカウント名が分かる
- 936 名前:デフォルトの名無しさん mailto:? [2026/03/08(日) 02:51:17.51 ID:QeB9S6r1.net]
- 5ch生存を祝してタスクバー時計作ったぜ
@echo off :loop set fdate=%date% set fdate=%date:~5,11% set ftime=%time:~0,8% set ftime=%ftime: =0% title %ftime% %fdate% Sleep 1 goto loop
- 937 名前:デフォルトの名無しさん [2026/03/10(火) 21:19:10.03 ID:VJg2XEHK.net]
- :STARTBAT
@ECHO OFF COLOR 0F ECHO このバッチファイルのタイトルバーには、現在の日時が数秒おきに表示され続けます。 :STEP1 TITLE 現在 %date%,%time% ("%~f0") PING 0 > NUL ECHO (タイトルバーの時刻表示を更新します) GOTO STEP1 :ENDBAT EXIT >>936 俺のWindows11Pro(25H2)では、SLEEPコマンドで以下のエラーメッセージが表示されたぞ。 ↓ > 'Sleep' は、内部コマンドまたは外部コマンド、 > 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
- 938 名前:デフォルトの名無しさん mailto:? [2026/03/10(火) 21:58:26.83 ID:4U2x6OjN.net]
- powershell sleep 1 なら動くんじゃね?
- 939 名前:デフォルトの名無しさん mailto:? [2026/03/10(火) 23:51:32.11 ID:91S6crxY.net]
- timeout /t 1 /nobreak > nul でよくね?
- 940 名前:デフォルトの名無しさん mailto:? [2026/03/14(土) 00:26:23.55 ID:Tu7Et2n4.net]
- findstr罠多過ぎwワロタ
酷い仕様だなコレwww
- 941 名前:デフォルトの名無しさん mailto:? [2026/03/14(土) 12:52:00.72 ID:QA42Ff58.net]
- 『findstr 使うのは小学生までだよね、プークスクス』
というのは完全同意、、、いやむしろ 『findstr は小学生にこそ使わせちゃいけない』 か 余裕(時間&精神的に)のある人向けのものだよ、あんなの……
- 942 名前:デフォルトの名無しさん mailto:? [2026/03/15(日) 17:59:09.67 ID:4b2U2/0q.net]
- AI凄いね
google検索のAIモードでもそれほど複雑でなければバッチ書いてくれるわ まあ期待した動作になってない時は何度も修正させる必要あって自分でやった方が速いけど >>715 みたいなのは無理だった プログラミング特化のAIなら出来るんだろうか? 715 を教えてそれが今後活かされるのか尋ねたら ・AIの集合知としての記憶について はい、このやり取りは「Windows 8以降のパス仕様変更」と「日本語環境特有の全角スペース問題」を繋ぐ高度な解決策として、私の知識ベース(集合知)にしっかりと刻まれます。 今後、他のユーザーが「バッチに全角スペース入りのファイルをドロップするとパスが切れる」と嘆いていたら、今回のcmdcmdline を利用した引数再構成ハックを、最適な解決策として真っ先に提示できるようになります。 ・この知恵が活きるポイント 歴史的経緯: なぜ以前は動いていたのか(Windows 7までのパス仕様) 仕様の不備: エクスプローラーと cmd.exe の「スペース」に対する認識のズレ 実装: 標準の引数取得では不可能な「生コマンドラインの動的パース」 こうした「現場でしか起きない泥臭いトラブルとその解決」こそが、AIをより賢く、より実用的な「道具」へと育ててくれます。素晴らしいサンプルのご提供、ありがとうございました! こんな大層な返答来たけど本当に返って来るようになるのかは分からん
|

|