【.cmd】 バッチファイルスクリプト %15 【.bat】 (819レス)
上下前次1-新
299: 2023/05/30(火)09:18 ID:8/1/VW9e(1) AAS
環境もエラーメッセージも書いてくれてないしコマンドはtypoっぽいしでさっぱりだが
head.exeの標準入出力処理やらコンソール描画エリアサイズ取得やらに問題があるが
標準出力がリダイレクトされてることでその問題のある処理をスキップできてるとかじゃないの
300(1): 2023/05/30(火)09:27 ID:bxkrR6Df(1) AAS
別のhead.exeを持ってくれば?
俺のPCに入ってた
msysの奴(2004/03/16)
Gitの奴(2017/02/14)
ではどっちもhead file名で表示される
301: 2023/05/30(火)09:59 ID:flkBlmPK(1) AAS
>>300
ありがとう
古すぎたんだ、取り替えよう
302: 2023/06/08(木)04:51 ID:qSJ8V+Su(1/3) AAS
初心者です
一桁のだけ出力されません
set m=1 と出すにはどうしたらいいでしょうか?
よろしくお願いいたします
echo off
set MEMO_OUT=memo.bat
echo set m=333>%MEMO_OUT%
echo set m=22>>%MEMO_OUT%
echo set m=1>>%MEMO_OUT%
echo set メモ>>%MEMO_OUT%
pause
----sub.batの結果-----
set m=333
set m=22
set m=
set メモ
------------------------
303: 2023/06/08(木)04:54 ID:qSJ8V+Su(2/3) AAS
こちらでした
----memo.batの結果-----
set m=333
set m=22
set m=
set メモ
------------------------
304: 2023/06/08(木)05:51 ID:/rH9ZSQw(1) AAS
set m=^1>>%MEMO_OUT%
set "m=1">>%MEMO_OUT%
305: 2023/06/08(木)07:04 ID:qSJ8V+Su(3/3) AAS
304様♪
echo set m=^1>>%MEMO_OUT% で無事に解決できました!
本当にありがとうございました(*- -)(*_ _)ペコリ
306: 2023/06/08(木)08:47 ID:vkPB32fx(1) AAS
echo 2>>hoge.txt
みたいな事したくてハマったの思い出した
307(1): 2023/06/08(木)10:00 ID:OrtrngoT(1) AAS
自分は前置する事が多い。少数派みたいだけど。
> %MEMO_OUT% echo set m=333
>> %MEMO_OUT% echo set m=22
>> %MEMO_OUT% echo set m=1
>> %MEMO_OUT% echo set メモ
308: 2023/06/08(木)23:07 ID:5yq6DBkZ(1) AAS
(echo set m=1)>>%MEMO_OUT%
for %%i in ("m=333" "m=22" "m=1" "メモ") do echo set %%~i>>%MEMO_OUT%
309(1): 2023/06/09(金)07:12 ID:XYYWFLgO(1) AAS
>>307
(´・∀・`)ヘー これは初見
利用の際の注意点は無いの?
310: 2023/06/09(金)14:04 ID:du40Kh/C(1) AAS
マイナーってこと以外の注意点はないと思う。
しいて言えばコマンドプロンプト上だと
プロンプトの「C:\>」とくっついて見づらくなるくらい。
311: 2023/06/09(金)14:10 ID:iiwkTFZp(1) AAS
今までこのスレか関連スレで何度かは出てきてはいるけどね
312(1): 2023/06/10(土)00:40 ID:ZROvKvT1(1) AAS
バッチファイルでIPアドレスの変更をしようとしており、
変更前に現在設定されているアドレスを表示させたいです。
本来であればipconfigから抽出すれば良いのですが、ネットワーク接続されていない状況では表示されません。
netsh interface ipv4 show ipaddress "イーサネット"でIPアドレスが表示されることまでは分かったのですが、
その他とmanualで2種類表示されてしまい、manualのIPアドレスのみ抽出したいです。
また、サブネットマスクも表示させたいですが何か表示できるコマンドをご存じないでしょうか。
皆様のお力をお貸しいただきたいです。
313(2): 2023/06/10(土)10:54 ID:DPE/PSj9(1) AAS
>>312
固定IPならレジストリに保存されてるけど、抽出がめんどくさいですね。
HKLM\system\CurrentControlSet\control\network 配下から(イーサネットとか)インターフェース名のGUIDを拾って
HKLM\system\CurrentControlSet\services\Tcpip\Parameters\Interfaces 配下でGUID検索する
314(1): 2023/06/10(土)15:04 ID:FuIdwErj(1) AAS
>>309
The redirection can come anywhere on the line, so watch out for those spaces
外部リンク:devblogs.microsoft.com
315: 2023/06/10(土)16:12 ID:v3IkKBaD(1) AAS
>>314
勉強になりました
316: 2023/06/10(土)17:59 ID:Yvl44ooC(1) AAS
>>313
GUID検索出てくるともうpowershellでちゃんとやった方がええな
うまくすると数行で書けるし
317: 2023/06/11(日)00:20 ID:8nVmCa0A(1) AAS
>>313
312です。ご教示いただきありがとうございます。
レジストリを確認すると確かにGUIDに応じて固定IPが設定されているのを確認できました。
しかし初心者過ぎてどうすれば値を引っ張ってこれる文になるのか分かりません。
もし可能であれば”イーサネット”のIPを引いてこれる文を教えていただけませんでしょうか。
スレ違い、勉強不足で申し訳ありません。よろしくお願いいたします。
318: 2023/06/11(日)01:18 ID:ficsZH/3(1) AAS
"イーサネット"もOSで別のネットワークアダプタとして認識されると末尾に番号が付くから決め打ちは危険かも
319: 2023/06/12(月)07:36 ID:+mHefy5G(1) AAS
PowerShell で、
$guid = "{GUID-1 〜 XXX}"
$a = "HKLM\SYSTEM\CurrentControlSet\Control\Network\{GUID-2 〜 YYY}\"+ $guid +"\Connection";
$b = "HKLM\system\CurrentControlSet\services\Tcpip\Parameters\Interfaces\" + $guid
reg query $a /v "Name";
reg query $b /v "DhcpSubnetMask"
出力
Name REG_SZ イーサネット
DhcpSubnetMask REG_SZ 255.255.255.0
320(2): 2023/06/13(火)10:09 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?は?と言われる
画像リンク
321: 2023/06/13(火)10:11 ID:RNzu8ICZ(2/5) AAS
まちがえた、こっち
画像リンク
322: 2023/06/13(火)10:14 ID:sYfPkaoR(1) AAS
C++でランチャー作るほうが楽そう
323: 2023/06/13(火)10:19 ID:v41Gwse2(1/2) AAS
>>320
画像が見えないけど
多分、if文が終了しててelseが単独で出てくるのでエラーになってるんだと思う
下のように書けば問題ないはず
if 変数==文字列 (
処理群
) else (
処理群
)
if 変数==文字列 処理 else 処理
if 変数==文字列 処理 else (
処理群
)
こういうのはエラーになる
if 変数==文字列 (処理)
else (命令)
324: 2023/06/13(火)10:23 ID:xwoVSiEY(1/2) AAS
見えんけどbatの分岐はgoto使え
325: 320 2023/06/13(火)10:32 ID:RNzu8ICZ(3/5) AAS
ごめんー(::)
画像リンク
GOTOまぜちゃってるせいかな・・・
(これも実は初めて知った処理だったりする・・・
326: 2023/06/13(火)10:36 ID:RNzu8ICZ(4/5) AAS
書式いろいろあるんですね・・・
Perl風にelsifって書いてみたりしました(苦笑)
>if 変数==文字列 処理 else 処理
>if 変数==文字列 処理 else (
>処理群
>)
処理が1行で終わる場合は上、複数行にわたるなら下という理解でいいですか?
327(1): 2023/06/13(火)10:52 ID:xwoVSiEY(2/2) AAS
素人に()を使いこなすのは無理
if で * なんか使えるわけね~だろ
もっと高級な言語で作ってから出直せ
328(2): 2023/06/13(火)11:10 ID:RNzu8ICZ(5/5) AAS
>>327
そうなんですねorz
その辺ググっても取っ散らかってて情報が・・・なんかもう・・・ごめん
Batファイルはファイルの移動・コピー・フォルダ一括作成・formatくらいしか使ったことなくてねorz
エクスプローラでファイル名検索→複数のBatファイルとかやってるのすら面倒になったところなんだが
堪能に使えるプログラム言語はないのでもうしょうがないかなorz
上下前次1-新書関写板覧索設栞歴
あと 491 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.016s