【.cmd】 バッチファイルスクリプト %15 【.bat】 (819レス)
【.cmd】 バッチファイルスクリプト %15 【.bat】 http://mevius.5ch.net/test/read.cgi/tech/1663153441/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
15: デフォルトの名無しさん [sage] 2022/09/26(月) 12:58:23.71 ID:3mhNpNjH 英語だと delayed expansion delayed variable expansion 説明文的には Enables the delayed environment variable expansion Setting EnabledDelayedExpansion will cause each variable to be expanded at execution time rather than at parse time http://mevius.5ch.net/test/read.cgi/tech/1663153441/15
16: デフォルトの名無しさん [sage] 2022/09/26(月) 17:38:32.28 ID:dNpEj5o9 set /a a=random は0なんやな 一般変数と処理が違うんだ http://mevius.5ch.net/test/read.cgi/tech/1663153441/16
17: デフォルトの名無しさん [] 2022/09/26(月) 21:36:40.64 ID:ou4YDIZU >>11 >>14 ありがとうございます。 うまく動きました! http://mevius.5ch.net/test/read.cgi/tech/1663153441/17
18: デフォルトの名無しさん [sage] 2022/09/28(水) 11:14:01.39 ID:RG22wEyx >>16 > 一般変数と処理が違うんだ 違わない set a= set random= set /a b=a, c=random echo %b%, %c%, %random% #set /a では環境変数として定義されていない文字列は0として扱われる set a=1 set random=1 set /a b=a, c=random echo %b%, %c%, %random% #特殊変数は環境変数として定義されると環境変数が優先され特殊変数としては機能しなくなる set random= echo %random% #環境変数を削除すれば元通り pause http://mevius.5ch.net/test/read.cgi/tech/1663153441/18
19: デフォルトの名無しさん [sage] 2022/09/28(水) 12:04:21.93 ID:Cg5haYXb >>16 set /a a=%random% http://mevius.5ch.net/test/read.cgi/tech/1663153441/19
20: デフォルトの名無しさん [sage] 2022/09/29(木) 13:35:46.81 ID:ezl+1hvw 確かに違わないんだけど、どう違わないのか勝手に補足。 set /?に基づくここでの用語定義: ・「環境変数」(一般変数) … 値が一旦決まれば勝手には値が変わらない普通の環境変数。Windowsの機能がベース。 ・「動的な環境変数」(dynamic environment variables)(特殊変数) …「RANDOM」「ERRORLEVEL」など。cmdの独自機能。 仕様仮定(私の認識): ・set /a での名前だけで値を参照できる機能は「環境変数」だけ対象としている。 ・cmdの構文解釈による「%〜%」で値を参照できる機能は 「環境変数」と「動的な環境変数」を対象としている。 以上を踏まえたうえで 「set /a a=random」の「random」は「動的な環境変数」ではなく「環境変数」であり、 『他の「環境変数」の扱い』と「違わない」。 「一般変数と処理が違う」のはcmdによる構文解釈の「%〜%」での扱い。 また、「set /a a=%random%」での「%random%」は まずcmdの構文解釈により「動的な環境変数」として「123」のように展開され 「set /a a=123」となり、setには「環境変数」すら使われていないように見える。 ※cmdの内部コマンドである「set」からは「動的な環境変数」も見えてもいいのにね。 同じく内部コマンドの「if」からは見えてるみたいだし。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/20
21: デフォルトの名無しさん [] 2022/10/05(水) 15:17:30.50 ID:NmGDxxah 質問です。 ファイルのフルパスを表示するときに、 このコマンド使っていますよ、という意味で rem %0 echo %0 と買いているんですが、remの方の変数まで展開されてしまいます。 展開させずに文字列のまま表示するにはどうしたらよいでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1663153441/21
22: デフォルトの名無しさん [sage] 2022/10/05(水) 15:28:26.09 ID:yuT90fin rem %%0 http://mevius.5ch.net/test/read.cgi/tech/1663153441/22
23: デフォルトの名無しさん [] 2022/10/05(水) 16:34:14.38 ID:NmGDxxah >>22 出来ました!ありがとうございます。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/23
24: デフォルトの名無しさん [] 2022/10/08(土) 17:33:40.37 ID:zk6uj/6h C:\test>"C:\test\app.exe" というコマンドを間違えて実行したらapp.exeが0バイトに書き変わったのですがなぜでしょうか http://mevius.5ch.net/test/read.cgi/tech/1663153441/24
25: デフォルトの名無しさん [sage] 2022/10/08(土) 17:43:53.04 ID:f2a8Snt9 空の標準出力をリダイレクトで書き込んでるからだろう http://mevius.5ch.net/test/read.cgi/tech/1663153441/25
26: デフォルトの名無しさん [sage] 2022/10/08(土) 17:48:05.02 ID:R/0NVeNc なぞなぞじゃね? http://mevius.5ch.net/test/read.cgi/tech/1663153441/26
27: デフォルトの名無しさん [sage] 2022/10/08(土) 18:00:30.98 ID:zk6uj/6h コマンドプロンプトからバッチファイルにコピペしたら間違えて作業フォルダが付いてしまって 何かのコマンドなのでしょうか http://mevius.5ch.net/test/read.cgi/tech/1663153441/27
28: デフォルトの名無しさん [sage] 2022/10/08(土) 18:59:40.31 ID:f2a8Snt9 オカルトかな? ん?お前のパソコン何かおかしくね? http://mevius.5ch.net/test/read.cgi/tech/1663153441/28
29: デフォルトの名無しさん [sage] 2022/10/08(土) 21:15:53.37 ID:4RiXxOsU >>27 日本語でOK http://mevius.5ch.net/test/read.cgi/tech/1663153441/29
30: デフォルトの名無しさん [sage] 2022/10/08(土) 21:20:11.87 ID:NCKRr8hU エラーになってもリダイレクトは実行されちゃうんだな バグとちゃうか http://mevius.5ch.net/test/read.cgi/tech/1663153441/30
31: デフォルトの名無しさん [sage] 2022/10/08(土) 21:31:19.08 ID:bRwGYufv プロンプトまでバッチにコピペするなよ http://mevius.5ch.net/test/read.cgi/tech/1663153441/31
32: デフォルトの名無しさん [sage] 2022/10/09(日) 11:18:46.47 ID:yk0ofCIK >>30 指定された実行対象ファイルがない、 というのは実行時エラーなので(構文エラーではない) そのエラーメッセージをファイルリダイレクトして記録できる事は有益。 なのでバグ(仕様バグ)ではないと思われる。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/32
33: デフォルトの名無しさん [sage] 2022/10/09(日) 12:38:18.26 ID:r7gKIzvL 一貫性のある動きだよな エラー出力は欲しいけど標準出力はリダイレクト自体をなかったことにしてくれというのは無理がある そもそもリダイレクト先がログファイルなら気にも留めないような話 びっくりする理由があるとしたらexeにリダイレクトしても容赦なく書き換えられるという点で、コマンドラインはそういう点で結構慈悲がない ある程度はパワーユーザー向けという位置付けなので気をつけるしかない http://mevius.5ch.net/test/read.cgi/tech/1663153441/33
34: デフォルトの名無しさん [sage] 2022/10/12(水) 04:44:03.67 ID:Jko2ebMR window-position異なる位置のバッチをそれぞれ作ってるのですが bat2個目を起動すると1個目の起動したバッチにつられてカスケード起動します 何か対処方法ありますでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1663153441/34
35: デフォルトの名無しさん [] 2022/10/13(木) 18:33:52.32 ID:Fb+ro4ZF UIから起動されたCMDからのバッチなのか判別する方法ありますか?LinuxでいうTERMみたいな http://mevius.5ch.net/test/read.cgi/tech/1663153441/35
36: デフォルトの名無しさん [sage] 2022/10/13(木) 20:39:40.77 ID:tHyHHwT5 うん 過去スレで全く同じ質問してる子いるから漁っておいで http://mevius.5ch.net/test/read.cgi/tech/1663153441/36
37: デフォルトの名無しさん [sage] 2022/10/30(日) 06:52:23.05 ID:i1fpLCEI zipファイルに書き込むコマンドはありますか? copy foo.txt bar.zip とやっても「bar.zipに上書きしますか?」になるだけなんですけど 上書きがしたいんじゃなくアーカイブしたいんです。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/37
38: デフォルトの名無しさん [sage] 2022/10/30(日) 08:16:49.21 ID:oF72FRjI 7za.exe http://mevius.5ch.net/test/read.cgi/tech/1663153441/38
39: デフォルトの名無しさん [sage] 2022/10/30(日) 17:16:25.85 ID:RObFZ+1A compressコマンドはcabだけだったかな? pwsh -c "gh compress-archive"参照 http://mevius.5ch.net/test/read.cgi/tech/1663153441/39
40: デフォルトの名無しさん [sage] 2022/10/30(日) 20:28:18.19 ID:WT6dub7d explorerで操作すると書き込めるからコマンドありそうな気がする http://mevius.5ch.net/test/read.cgi/tech/1663153441/40
41: デフォルトの名無しさん [sage] 2022/10/30(日) 20:49:57.93 ID:JhK1ASYS zipコマンドでググれ http://mevius.5ch.net/test/read.cgi/tech/1663153441/41
42: デフォルトの名無しさん [sage] 2022/10/31(月) 15:34:40.68 ID:aCuyX04T pwsh -c "Get-help -name compress-archive" http://mevius.5ch.net/test/read.cgi/tech/1663153441/42
43: デフォルトの名無しさん [sage] 2022/10/31(月) 22:51:09.43 ID:HZxZgtz6 >>40 Explorerと同じ圧縮処理は、ExplorerのCOMオブジェクト(Shell.Application)を操作する事でできる。 確か、正式に提供した機能ではないので動作は保証しない、非推奨、みたいな扱いだった気が。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/43
44: デフォルトの名無しさん [sage] 2022/11/02(水) 15:48:21.33 ID:ZBNaiNsJ 質問失礼します。 ファイル名の一部の文字列(例:4文字目から8文字目まで)を一括削除するバッチを作りたいのですが… [例]a1b2c3d4e5.m4a→a1b2e5.m4a 検索の結果、先頭4文字を削除するバッチ(下記)を見つけたので、アレンジしたいのですが、その方法がわからずにおります。 アレンジ方法がわかる方、もしくは別の方法でも構いませんので、教えて頂けないでしょうか? ------------------------ for %%i in (*) do ( if not "%%i"=="%~nx0" ( set vv=%%i call ren %%i %%vv:~4%% ) ) ------------------------ 参考になりそうなURLでも助かります。 http://mevius.5ch.net/test/read.cgi/tech/1663153441/44
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 775 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.019s