【.cmd】 バッチファイルスクリプト %15 【.bat】 (843レス)
上下前次1-新
1(1): 2022/09/14(水)20:04 ID:XL8H98jz(1)調 AAS
拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう
過去スレ
%14 2chスレ:tech
%13 2chスレ:tech
%12 2chスレ:tech
%11 2chスレ:tech
%10 2chスレ:tech
%9 2chスレ:tech
%8 2chスレ:tech
%7 2chスレ:tech
%6 2chスレ:tech
%5 2chスレ:tech
%4 2chスレ:tech
%3 2chスレ:tech
%2 2chスレ:tech
【.cmd】 バッチファイルスクリプト %1 【.bat】
2chスレ:tech
バッチファイルプログラミング 3.bat
2chスレ:tech
バッチファイルプログラミング 2.bat
2chスレ:tech
バッチファイルプログラミング質問スレ
2chスレ:tech
744(1): 06/16(月)20:18 ID:FL2oCcdJ(2/6)調 AAS
>>741
改良提案したのにごめん、%1に依存してるからNGかもと気づいた
ファイル名でなくディレクトリ名に & があって、パス全体では空白がない場合たぶんNG
745: 06/16(月)21:12 ID:3rn8pxf/(2/4)調 AAS
>>744
それは無いと思います
最初に引用符を全部削除して、%0と%1の間は空白一個です
最後に両側に引用符を付けています
だから引数は全て引用符に囲まれている
746: 06/16(月)21:23 ID:FL2oCcdJ(3/6)調 AAS
>>730 にもちょっとあれ表記で書いたけど
cmd.ехеがバッチを起動するときにクオートされてない & までしかバッチに渡さないんだよ
だから%1は&の前までしか入らない
747: 06/16(月)21:47 ID:FL2oCcdJ(4/6)調 AAS
あ、それでもいいのか? ごめん
748: 06/16(月)22:03 ID:3rn8pxf/(3/4)調 AAS
%cmdcmdline%を見ると%0は必ず引用符で囲まれている
%~d1はドライブ名なので最初の2文字だけですね
749: 06/16(月)22:12 ID:FL2oCcdJ(5/6)調 AAS
空白とパスの頭に一致すればいいんだから%1が&の前まででも十分で
それこそ %~d1 の代わりに %a:~1,2% でもいいわけだ
はやとちりしてすまん
750: 06/16(月)22:24 ID:3rn8pxf/(4/4)調 AAS
あ、今気付いたけどバッチ自体のフルパスに%があると不味いですね
%cd%.bat とかふざけた名前を付けると起動すらしない(笑)
751: 06/16(月)22:28 ID:FL2oCcdJ(6/6)調 AAS
あ、%~d1 を使う段階ではまだaの頭に " がないから %a:~0,2% か
今日はダメすぎる…
752(1): 06/16(月)22:43 ID:rarg6+Me(1)調 AAS
>>743
過去ログとか見てみると
ドロップして動画変換したいと言ってる人がいたけど
バッチにドロップするという概念がなかったって人もいたわ
D&Dは新しい変化といえるのかな
753: 06/16(月)23:13 ID:h70+cne9(2/2)調 AAS
そもそも昔はマウスが…
754: 06/17(火)01:09 ID:iFChncGT(1)調 AAS
>>752
それほとんど使わないし
ファイルのDDで誤ってバッチに突っ込んだりするから
機能停止したい
755(1): 06/17(火)01:48 ID:k94ULtHo(1/2)調 AAS
Windows11で新しいターミナルになって
せっかく画面に複数ファイルD&Dできるようになったのに
やっぱりスペースのないやつは " 付かない
馬鹿なのか
756: 06/17(火)16:27 ID:tmeQgGUx(1/2)調 AAS
Windowsにはライブラリという機能があってな
複数の場所のファイルをまとめて管理できる
エクスプローラーではデフォルト非表示だけど
有効にすると別のドライブのファイルもドラッグ&ドロップができたり
757(2): >>724 06/17(火)18:10 ID:+VkCgLWJ(1)調 AAS
だから >>715 で問題ないと言ってるだろ
いったい何を試行錯誤してんだ
758: 06/17(火)22:17 ID:tmeQgGUx(2/2)調 AAS
解説がなかったからだろ
759: 06/17(火)23:21 ID:v63kiG1M(1)調 AAS
>>757
確かに >>715 は UNCパスやドライブ文字が違うファイル
にも対応できてる すごいバッチだと思います
>>718 は行数は少ないけどドライブ文字を流用してるから手抜きではありますね
760: 06/17(火)23:56 ID:k94ULtHo(2/2)調 AAS
>>757
まあ冗長だと思ったからじゃね
761: 06/21(土)00:15 ID:UJBDQV9Q(1/2)調 AAS
>>755
ターミナルのコマンドライン引数は ; が区切り文字らしいので
バッチのパスや引数に ; があると別のタブができちゃう
弱点が増えてよかったね
762: 06/21(土)09:18 ID:P2MDKzd7(1)調 AAS
;って元々区切り文字じゃね
763: 06/21(土)23:59 ID:UJBDQV9Q(2/2)調 AAS
バッチのパスに ; があってもCMDは起動できる
ターミナルだと起動できない " で囲んでもダメ
764: 06/22(日)01:31 ID:GoovCRBR(1)調 AAS
ああPowerShellの話か
765(1): 08/01(金)00:06 ID:8i1j7N2J(1)調 AAS
Windows11でbatファイルの関連付けが
ターミナルになってる気がするんだけど
前からだったっけ?
766: 08/03(日)11:49 ID:ggxTCWx/(1)調 AAS
2年前には入ってたと思うけど
ストアアプリなので既存のユーザーには入らない
767: 08/03(日)20:26 ID:kVKBj15M(1)調 AAS
>>765
まずはターミナルアプリのことから知ってくれ
768(1): 08/05(火)07:13 ID:zm6JVwOO(1)調 AAS
去年にWindows11の新しいPCを買ったけど
最初からbatもwt窓だった
conhostもまだあるみたいやけど
今時どんな時に使うのか知らん
769: 08/06(水)07:51 ID:eYVzecPY(1)調 AAS
所詮ストアアプリだからWinPEとかでは動かない
770(1): 08/06(水)11:47 ID:jPPdovnJ(1)調 AAS
wtは文字表示の具合が微妙
たまに表示が乱れるし
771(1): 08/06(水)12:14 ID:a7ynNpBm(1)調 AAS
罫線とか全角判定は相変わらずぐちゃぐちゃよな
772: 08/06(水)16:14 ID:yOBvuTYH(1)調 AAS
>>768
設定→システム→開発者向け→ターミナル
で変更はできるがすぐ変わってしまう
773(1): 08/06(水)20:16 ID:DmAnEwRh(1)調 AAS
>>770-771
俺も今年1月あたりから同様の不具合に悩まされるようになったから、
「ConEmu」 https://conemu.github.io/ , https://github.com/ConEmu/ConEmu/releases
これの最新版である Build 230724 で代用するようになった。
ただし見た目は「Windows Terminal」のほうが好きだから、そのプレビュービルドも以下の2ヶ所で度々チェックしている。
https://github.com/microsoft/terminal/releases , https://apps.microsoft.com/detail/9n8g5rfz9xk3
774: 08/09(土)16:20 ID:S08gCjht(1)調 AAS
>>773
それはターミナルの一部の見た目の話だろ?
ここはターミナルアプリのタブを一度も触ったことがねえやつばかりだな。
775(1): 08/10(日)00:24 ID:vHIHeDq6(1)調 AAS
パスに日本語等の非ASCII文字が入ると、
まともにコマンド編集できなくなる時点で、欠陥品としか言いようがない
776: 08/10(日)01:30 ID:swuUdv2c(1/2)調 AAS
>>775
そんな日本語対応をMicrosoftがするわけねえだろ。
だいたいコピー&ペーストだってあとからできるようにしてくれたんだぞ?
777(1): 08/10(日)01:49 ID:YdGUalHl(1)調 AAS
一部のマルチバイト文字が混在すると文字の間隔が変
コードページを変えると更に別の文字も化けたりする
一度に大量の行を表示すると最後にゴミが出てくる
タブはあると便利ですが単独のバッチには不要
778: 08/10(日)18:33 ID:vNE7ex5+(1)調 AAS
>>777
コードページ、ターミナルアプリ(wt,conemu/cmderなど)、シェル(cmd,pwsh,bashなど)とフォントの相互作用なので完全解が難しいので
自分はシステムコードページ65001にして解空間を最大化している
779: 08/10(日)18:50 ID:swuUdv2c(2/2)調 AAS
単に老眼の話をしているだけのような気がしてきた
780(1): 08/11(月)00:25 ID:CPQs8BLp(1)調 AAS
同じ文字でconhostは正常なので、原因はcmdや老眼のせいじゃないな。
バッチはconhost使えばいいんじゃね。
ショートカット弄ると設定が戻ってしまうようだけど(笑)
781: 08/11(月)01:16 ID:eBBeTH67(1)調 AAS
どうもパス等が長くて表示が折り返されるときにおかしなことになるみたいだな
wtではひし形のはてなマーク、cmdでは中黒に置き換わって、
ウィンドウサイズを変更すると表示されるが、もとに戻すと文字化けが残ったまま
おかしな行が増殖したりする
782: 08/11(月)01:21 ID:BPQ8/IeS(1)調 AAS
文字間は隣の文字によって間隔を調整するのがM365やWindowsの普通になってきたので、その仕様を知らないのかもしれないね。
よくわからないのが、画面表示をそのまま見ようとするところ。
そんな少ないデータならいいけど、画面に表示されたものをそのまま見るというのはやはり一般人の使用だよね?
783: 08/11(月)01:39 ID:qEWBZoUZ(1/4)調 AAS
wt
全角の隣りの文字と重なってる
784: 08/11(月)01:59 ID:qEWBZoUZ(2/4)調 AAS
全角と半角の区別できてない出来の悪いワープロソフトみたいな感じ
785(1): 08/11(月)02:12 ID:qEWBZoUZ(3/4)調 AAS
[★★★★]
786: 08/11(月)19:29 ID:jApty1op(1)調 AAS
>>780
conhostはWindowsTerminalソース(の一部)をOSチームがコンパイルしてるだけなので
デフォルトや設定したフォントの線が疑われる
787(1): 08/11(月)20:16 ID:qEWBZoUZ(4/4)調 AAS
フォント合わせて>>785をwtに貼り付けてみ
ピッチが半角なので字が重なる
788(1): 08/11(月)22:36 ID:CnfwEDHt(1/2)調 AAS
>>787
こっちでは重ならない
https://i.imgur.com/y7yAZC2.png
Windows Terminal Preview
Version: 1.23.12102.0
設定/Profile/Appearance/Fontface->PlemolJP Console NF
789: 08/11(月)22:39 ID:CnfwEDHt(2/2)調 AAS
書き込めないけど
commanlineはcmd.exeのフルパス
790: 08/12(火)01:19 ID:MtCSZU3d(1)調 AAS
%ComSpec%
791: 08/12(火)09:42 ID:QRF63dtM(1)調 AAS
>>788
そのフォント (PlemolJP Console NF) は文字が半角だね
例えば MS Gothic だと全角なので重なる
https://imgur.com/a/Tu36sdZ
Windows ターミナル (プレビュー)
1.23.12102.0
792: 08/12(火)11:03 ID:eJzfGzgD(1/2)調 AAS
このスレはバッチファイルのスレ
以降ターミナルは出禁な
793: 08/12(火)11:29 ID:ZbzKnXb5(1)調 AAS
同じソースで表示が違うのは技術的な制約でもあるのかな。
794: 08/12(火)11:48 ID:eJzfGzgD(2/2)調 AAS
ターミナル関連の話題は以下のスレでどうぞ
Windows Terminal ターミナルスレ
2chスレ:tech
795: 09/02(火)16:43 ID:i1pFsEW3(1)調 AAS
start "" cmd
実行でこのコマンドを処理するにはメモリ リソースが足りません。
表示されるんだがこれ何なん
796: 09/02(火)20:02 ID:lXl1g7Hp(1)調 AAS
点々はどういう意味なの?
797: 09/02(火)21:26 ID:BhBAQR8u(1)調 AAS
start /?
798: 09/03(水)09:11 ID:dhexZ22K(1)調 AAS
昔は"タイトル"で""のパス指定の不具合を避けるためにstartコマンド時は当たり前だったけどな
startコマンドは内部コマンドだっけ、cmdのバージョンで違うのかな
799: 09/03(水)13:01 ID:LYp0OMy2(1)調 AAS
9xでは外部コマンド start.exe だったから command.com でも使えた
9xの拡張 cd ... とか復活しないかな
800(1): 09/03(水)18:46 ID:KF88luMo(1)調 AAS
昔はmoveも外部コマンドだったよな
内部コマンドって""で囲うとエラーになる
801: 09/04(木)10:07 ID:yqF1XoOK(1)調 AAS
"echo"
ほんとだ、エラーになった
802: 09/04(木)10:53 ID:tGb8/+Td(1)調 AAS
そもそも外部コマンドなんてのは無くて、やってるのはプログラムの実行
パスを "" で囲んでもエラーにならないのは不思議ではない
803: 09/04(木)17:41 ID:rkH6+lpV(1)調 AAS
>>800
エラーになるとは限らんぞ
同名の exe とか bat があるとそっちが実行される
804: 09/04(木)17:54 ID:vmz+sxn8(1)調 AAS
そんなもの作るなよ
805: 09/04(木)18:44 ID:zhnUgp6m(1)調 AAS
昔Hello,worldの次にif.exe作って大混乱した思い出
806: 09/07(日)00:28 ID:g4CPkrpa(1)調 AAS
795は start.exe というファイルがあったから
という可能性もあるのかな
807: 09/07(日)00:35 ID:g6X1tCRi(1)調 AAS
不審に思ったらwhereしろ
808: 09/07(日)14:31 ID:JaUUy90I(1)調 AAS
curl.exe がWindows標準で提供されるようになったの知らなくて、
あれ?、なんか違う、なんで?、ってなったの思い出した
809: 09/07(日)15:29 ID:upkpHxj9(1)調 AAS
powershellでcurlがエイリアスされてて混乱した人っていっぱいいると思う
810: 09/07(日)22:46 ID:LU1Xfm1C(1)調 AAS
busyboxを入れてるけど、
unixコマンドとwindowsコマンドでダブるやつがあるので、
動作が想定外になって、whereで確認することがある。
busyboxへのシンボリックリンクを優先・非優先のディレクトリで区別して、
system32とのパスとの優先度で使い分けてるわ。
811: 09/08(月)05:52 ID:FPjsYLdB(1)調 AAS
whereはちゃんとpath, pathext解析して優先度順に複数候補表示してくれるんだよな
ms製にしては気が利いてる
812: 09/08(月)12:35 ID:3fc6GDUF(1)調 AAS
内部コマンド名と同じ外部コマンドは除外するか、警告できないと危ない
813: 09/08(月)14:13 ID:YSLtRFr0(1)調 AAS
パスの管理ができていればそんなに心配することないよ
Windowsコマンドを優先しておけばまずそういった問題は起きないし
自分はわざわざ入れた外部コマンドをつかいたいから、これを優先してるけど、
バッチファイルを使うときなどに差し支えそうなときは、
> set PATH=C:\WINDOWS\system32;%PATH%
といったように、必要なパスを先頭に追加するようにしてる
814(1): 10/01(水)11:35 ID:yaFP74wm(1)調 AAS
Win11で拡張子.batのファイルを右クリックして編集の時のアプリを変える方法は?
815: 10/01(水)12:31 ID:L0tsff1s(1)調 AAS
レジストリのbatfileのedit
816(1): 10/01(水)13:02 ID:Yv+8qcgZ(1)調 AAS
バッチ内で環境変数を使うとおかしくなることがある
なるべくプログラム内で判断する
817: 10/01(水)13:06 ID:tFujMJWG(1)調 AAS
>>816
どういう風におかしくなるの?
まったくそんな経験は無いんだが
818: 10/02(木)01:16 ID:94UvuaYX(1)調 AAS
というか、バッチファイルの場合、環境変数が使えないと何も出来ないと思うんだけど
819: 10/02(木)06:03 ID:hmT74Uqz(1)調 AAS
特に聞きたいこともないようだしほっときゃいい
820(1): 10/11(土)19:44 ID:EgUKqw11(1)調 AAS
>>814
右クリック時に他のテキストエディタで開くショートカットを追加すればいいだけだろ
821(1): 10/12(日)08:31 ID:jZVWBoeK(1)調 AAS
>>820
そのためのSendToフォルダ利用は、初歩的な基本だよね。
「ファイルを指定して実行」→名前欄に「shell:sendto」と入力して「OK」
またはコマンドプロンプト画面でコマンドライン「start shell:sendto」を実行
822: 10/12(日)08:38 ID:PP4v40Vb(1)調 AAS
1工程多いから不満
823: 10/12(日)08:42 ID:SMvQmH4s(1)調 AAS
ランチャ・ファイラ側で^e押したら拡張子に応じた適切な編集ツール起動するように設定しとけ
824(1): 10/12(日)14:59 ID:3Mp/lKj+(1)調 AAS
815にあるようにレジストリの値を変更すればいいだろ
HKEY_CLASSES_ROOTの.batを見ると(既定)に「batfile」とある
さらにbatfileを見ると、
shell\edit\commandに「%SystemRoot%\system32\notepad.exe %1」とあるのでここを書き換えればいい
825: 10/12(日)23:39 ID:D80drn0C(1)調 AAS
>>824
Windowsのデフォルト設定がわからなくなるようなやり方を勧めるべきではない。
826: 10/13(月)03:14 ID:YwWo+azg(1)調 AAS
shell\他のテキストエディタで開く\command
というキーを作って、そこに他のテキストエディタで開くコマンドを記載すればいい
827(1): 10/13(月)08:12 ID:SftElVT9(1)調 AAS
>>821
かつてWindowsXPは、
SendToフォルダに46個を超えるショートカット等が入っていても、
SendToフォルダ内のサブフォルダにショートカット等が入っていても、
それら全てをファイル/フォルダの右クリック→「送る」から正常に選択できた。
しかしWindows7~Windows11の「送る」からは、
47個目以降のショートカットやサブフォルダ内のショートカットを選択できない仕様へ退化していた。
右クリックしたファイル/フォルダをSendToフォルダ内のサブフォルダ内へコピーする事なら可能だが…
WindowsXPとWindows7の間に発売されたWindowsVistaでは、どっちの仕様だったのだろうか?
828(1): 10/13(月)19:32 ID:iz0ZdZIk(1)調 AAS
>>827
右クリックメニューこそカスタマイズして伝統的な右クリックメニューにして使えよ。
829(1): 10/13(月)19:58 ID:xEmYFl1x(1)調 AAS
>>828
どのように?
830: 10/14(火)01:31 ID:QdU4k/SE(1)調 AAS
>>829
レジストリの値を変えるだけ
831: 10/17(金)23:17 ID:C469EUFZ(1)調 AAS
for %i in (1,2,3) do echo %i & echo 終わり
でループ終了後に1回だけ終わりって表示する方法ない?
意地でも一行で書きたい
832: 10/17(金)23:40 ID:8Pqh7mYa(1)調 AAS
(for %i in (1,2,3) do echo %i) & echo 終わり
833: 10/22(水)03:24 ID:cB+j7g0b(1)調 AAS
powershellに移行しない理由って何がありますか?
834: 10/22(水)04:18 ID:z62W5MBf(1)調 AAS
覚えるのがめんどくさい
835(1): 10/22(水)13:25 ID:bjMODV9W(1)調 AAS
コマンドが長すぎる
aliasで短く再定義すればいいのだろうが、面倒くさい
DOSで大体間に合っている
836: 10/22(水)17:48 ID:PaNPoiTZ(1)調 AAS
>>835
DOSではありません。
837(1): 10/24(金)01:15 ID:BSUWrJg+(1)調 AAS
もうちょっとまともな理由かと思ってたw
838: 10/25(土)14:55 ID:sdVmDvw2(1/2)調 AAS
>>837
PowerShellを使わせないようにWindowsの設定を変えている大企業もある
クソ企業だ
839: 10/25(土)14:55 ID:sdVmDvw2(2/2)調 AAS
ソフトバンクはPowerShellを使えないようにしている。
クソ。
840(1): 10/25(土)22:15 ID:NLho/GlD(1)調 AAS
何の設定を変えてるんだ?実行ポリシーの話?
841(1): 10/29(水)17:03 ID:NSCUi//C(1)調 AAS
>>840
ソフトバンクはコマンドプロンプトとターミナルを起動できなくしているクソ企業
842: 10/30(木)07:08 ID:q+RoJBty(1)調 AAS
草
843: 10/30(木)17:30 ID:k5qTIKM4(1)調 AAS
>>841 は少し間違っていた。古いWindows PowerShellとターミナルを起動できなくしている。
開発職にPowerShellを使わせたくない理由がわからない。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.036s