- 1 名前:デフォルトの名無しさん [2008/08/04(月) 23:27:23 ]
- 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。 ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。 【前スレ】 (関連スレは>>2) 【.cmd】 バッチファイルスクリプト %2 【.bat】 pc11.2ch.net/test/read.cgi/tech/1197881068/
- 413 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 00:03:51 ]
- 特定の文字だけ色を付けて表示なんて出来ませんよね?
COLORだと全部変わってしまう・・・・
- 414 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 00:23:00 ]
- その文字の場所にだな、セロファンを貼ってだな
- 415 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 04:34:22 ]
- >>413
PowerShell入ってるなら powershell -command "&{write-host hello -ForegroundColor red}" とやれば赤い文字でhelloと出る。 ただ古いマシンではめっちゃ遅いけど。
- 416 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 12:17:39 ]
- ttp://blog.hiros-dot.net/%E6%8C%87%E5%AE%9A%E3%81%97%E3%81%9F%E5%B9%B4%E6%9C%88%E3%81%AE%E3%82%AB%E3%83%AC%E3%83%B3%E3%83%80%E3%83%BC%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B%E3%81%9D%E3%81%AE%EF%BC%92PowerShellTips.aspx
- 417 名前:デフォルトの名無しさん [2008/10/03(金) 20:15:03 ]
- バッチ処理で、XPのミュートのON/OFFを切り替えたいのですが、
記述方法ありますか?
- 418 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 20:55:18 ]
- WSHならできるだろggれ
- 419 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 21:10:20 ]
- PC初心者
pc11.2ch.net/pcqa/ パソコンの使い方 Windows pc11.2ch.net/win/ ウインドウズの使い方 初心者〜管理者まで必読!コマンドライン(DOS Pt.7) pc11.2ch.net/test/read.cgi/win/1217738171/
- 420 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 21:15:42 ]
- ↑お子様は早く寝ましょう
- 421 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:25:25 ]
- sleep 1000
- 422 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:29:04 ]
- VB6.0でもバッチファイルつくれますか
作り方はどうすればいいの コンパイルすればいいのですか?
- 423 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:31:51 ]
- vbでバッチファイル出力
- 424 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:37:13 ]
- きっとコンソール用のプログラムを作りたいのだろうけど、ネットでからかわれそうな要素満載だね。
- 425 名前:デフォルトの名無しさん mailto:sage [2008/10/03(金) 22:47:39 ]
- >>422
Open "hoge.bat" For Output As #1 Print #1, "@echo off" Close #1
- 426 名前:デフォルトの名無しさん [2008/10/05(日) 12:15:08 ]
- 425ばかすぎるわろた
- 427 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 17:20:20 ]
- >>425
VBつかったことないけど昔のMS-BASICまんまなのに感動した。
- 428 名前:デフォルトの名無しさん [2008/10/05(日) 18:45:22 ]
- 前からおもってたんだけど、コメントのremって何の略だろ??remarkとかかな?
- 429 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 18:52:39 ]
- rememberだと思うよ
ttp://www.google.co.jp/search?hl=ja&q=bat+rem+remark&lr=
- 430 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 19:01:45 ]
- BASICのREMから来たものだと思う。
で、BASICのREMはリマークの略という意味だったはず。
- 431 名前:デフォルトの名無しさん [2008/10/05(日) 19:59:53 ]
- rememberでもremarkでもいいけど、なんかremって覚えにくいな〜。
もうちっとわかりやすくしてくれればいいのに。comeとか。
- 432 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 20:03:08 ]
- comm だろ...
- 433 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 20:13:04 ]
- >>431
' 使え
- 434 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 20:15:09 ]
- ラインコメントなんて手書きしないでエディタマクロの^/かなんかで入れるようにしとけ
- 435 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 20:33:41 ]
- >>433
''' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
- 436 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 21:06:31 ]
- パソコンを起動しても一番最初に出るメーカーロゴが
出るだけになって全く何も受け付けなくなってしまった のですが何処が壊れているのでしょうか?
- 437 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 21:09:21 ]
- 君の目
- 438 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 21:16:52 ]
- 横をたたいてみろ
- 439 名前:438 mailto:sage [2008/10/05(日) 21:24:41 ]
- たたいたら直りました
- 440 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 21:33:20 ]
- >>431
: つかえ
- 441 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 21:48:16 ]
- インストールはどこでできますか?
初年度ってどういうことですか?
- 442 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 22:06:58 ]
- >441
インストールはしなくても最初から入ってるよ
- 443 名前:デフォルトの名無しさん mailto:sage [2008/10/05(日) 23:22:51 ]
- >>431
BASIC もしらんのかよ
- 444 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 00:28:12 ]
- >>436
HDD
- 445 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 01:07:40 ]
- >443
おぢさんには常識だけど、最近の子は本気でBASIC知らんぞ 初めて触ったのがHSPとかJavaとかPerlとか BASICでもVB系(VBSやVBA)が初めてのBASICだったりな
- 446 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 02:44:11 ]
- BASICなんてやらなくてもおk
寧ろやらない方がいい
- 447 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 02:59:47 ]
- BASICはグラフィックが超簡単に扱えるのがよかった
- 448 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 03:09:15 ]
- 今の言語はグラフィックス関連はライブラリに飛ばされちゃってるからなあ
しかも複雑なライブラリ多いし
- 449 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 10:44:09 ]
- ActionScriptなら簡単だお
- 450 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 12:06:49 ]
- コマンドプロンプトって実行ファイルをどのようにして判断しているの?
実行ファイルをexefile.txtみたいにリネームしても普通に実行される。 しかし拡張子なしだと動かない。 拡張子ありだとjpgだろうがtxtだろうが実行ファイルとして扱われてる。
- 451 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 12:14:27 ]
- うそくせーと思ったらほんとだったw
ファイルの先頭覗いてMZPだったら実行、それ以外なら関連付けで開く といったコードが入ってるんでしょ。
- 452 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 13:07:52 ]
- バッチとまったく関係ないし、
パソコンの使い方の話は板違い PC初心者 pc11.2ch.net/pcqa/ パソコンの使い方 初心者〜管理者まで必読!コマンドライン(DOS Pt.7) pc11.2ch.net/test/read.cgi/win/1217738171/
- 453 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 13:11:39 ]
- COMMAND.COM ではそんなことなかったはずだから
CMD.EXE かな?
- 454 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 13:19:01 ]
- >>451
そういう動作でもないっぽい。 適当なファイルを.exeに変えたら中身に関わらずバイナリとして実行しようとするし、 適当な.exeを.batや.cmdにリネームするとバッチとして実行しようとする。 よくわからん。
- 455 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 13:27:55 ]
- 何も考えてないんだろ。
for文とか場当たり的な拡張を繰り返したような文法だし。 継ぎ足し継ぎ足しなケース分けのコードがいっぱい入ってそう。
- 456 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 14:13:53 ]
- >>450
メモ帳かバイナリエディタでexeファイルを開いてみろ。 先頭にMZ〜ってあるだろ?それで判別してる。 詳しくは「ヘッダ」でググれ
- 457 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 14:23:58 ]
- >>452
病人は病院に行きましょう
- 458 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 14:28:55 ]
- >>457
いい加減スレ荒らすのやめてくれ。お前みたいなのが人生かけてマンマークしたところで メンヘラが消えたためしがなんだが。
- 459 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 16:20:49 ]
- 拡張子が com, exe → ヘッダ部分を読んでMZならexe実行。でなけりゃ com 実行。
それ以外→とりあえずヘッダ部分を読んでMZならexe実行。でなけりゃ関連づけ。 じゃないかと推測。
- 460 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 16:37:01 ]
- ここはお前の日記帳じゃねえよ
チラシの裏にでも書いてろ
- 461 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 17:34:01 ]
- 拡張子が付いてればCreateProcess それでエラーなら関連付けへ
- 462 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 17:37:09 ]
- また推測か
氏ねやゴミ
- 463 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 17:43:10 ]
- ollyで調べた
- 464 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 22:17:35 ]
- >>456
それは知ってるんだけど、そこに何故拡張子のあるなしが関係する?というのが メインの疑問で。 MZとだけ書いたテキストファイルmz.txtをコマンドプロンプトから開こうとすると 実行ファイルとして扱われるんだな… かといって拡張子を消したらダメ。
- 465 名前:デフォルトの名無しさん mailto:sage [2008/10/06(月) 23:30:55 ]
- start mz.txt
- 466 名前:デフォルトの名無しさん [2008/10/10(金) 12:00:18 ]
- UNIX 系のシェルにある where コマンドと同じような
働きをするコマンドって用意されていますか? PATH で指定されるディレクトリ群の中に同名の実行ファイル があった時にどれが実行されるのかを表示してくれるコマンドです.
- 467 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 12:02:57 ]
- Vista には where あるよ
- 468 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 12:05:07 ]
- パソコンの使い方の話は板違い
PC初心者 pc11.2ch.net/pcqa/ パソコンの使い方 初心者〜管理者まで必読!コマンドライン(DOS Pt.7) pc11.2ch.net/test/read.cgi/win/1217738171/
- 469 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 12:26:42 ]
- >>467
- 470 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 14:30:17 ]
- XPにもあるけど?
C:\Program Files\Support Tools\Where.Exe
- 471 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 14:37:24 ]
- つかえfor
for %I in (notepad.exe) do echo %~f$PATH:I
- 472 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 21:42:49 ]
- >>470
ないぞ?
- 473 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 23:43:54 ]
- あるぞ
- 474 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 23:45:50 ]
- 素のXPには無い
- 475 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 00:07:21 ]
- ftp://ftp.microsoft.com/reskit/y2kfix/x86/where.exe
- 476 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:13:21 ]
- バッチで画像を出す方法ってありますか?
- 477 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:14:08 ]
- ところで、タイトルの%3って、バッチなら%%3の方が委員では
- 478 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 01:33:21 ]
- echo 画像
- 479 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 02:00:06 ]
- start 画像
- 480 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 02:38:54 ]
- >476
start "" 画像ファイル とか。ビューアを指定したいならビューアで開く。 コマンドプロンプトの画面内に表示したいなら、無理じゃないかな。
- 481 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 03:53:38 ]
- >>477
- 482 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 14:38:43 ]
- アスキーアートを表示する
- 483 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 15:00:52 ]
- echox使ってカラーでビットマップ表示しろ
- 484 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 16:43:08 ]
- 拡張子無しのファイルとフォルダを区別する方法ってありますか?
今まで、 if "%~x1"=="" goto fol でやってたのですが、拡張子無しのファイルも含まれることに最近気づいたので
- 485 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:24:28 ]
- 普通にある
そんな馬鹿なことやってるのお前だけだ
- 486 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:38:40 ]
- >>484
if exist "%1\nul" goto fol
- 487 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 17:49:46 ]
- >>486
それローカルドライブには通用するんだけど ネットワークドライブだとファイル\nulも 真になっちゃっていまいちなのよね。 確実なのは dir /ad "%~1" >nul 2>&1 if %ERRORLEVEL% == 0 goto fol かな。
- 488 名前:デフォルトの名無しさん mailto:sage [2008/10/11(土) 19:18:15 ]
- >>487
振り分けできました。ありがとうございます。 >>486 自分の環境ではうまく動作しなかったので、今回は487を使うことにしました。 ありがとうございます。
- 489 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 10:39:32 ]
- >>476
mspaint 画像.jpg
- 490 名前:デフォルトの名無しさん [2008/10/13(月) 13:49:30 ]
- さっきどっかのレスで見かけた
cmd / 〜あと似たことがいくつか でファイル名を指定して実行したら全てのデータが消えた・・・ 戻す方法は無いのでしょうか?
- 491 名前:デフォルトの名無しさん [2008/10/13(月) 13:56:16 ]
- >>490
あとシステムの復元使ってもファイルは消えたまんまだった 誰かタスケテ
- 492 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:06:24 ]
- >>490-491
ttp://cowscorpion.com/Software/FileRecovery.html
- 493 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:10:13 ]
- dir /ad "c:\System Volume Information"
うまくいかねぇ
- 494 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 14:15:03 ]
- if exist "c:\System Volume Information\nul" goto fol
こっちもあかん
- 495 名前:デフォルトの名無しさん [2008/10/13(月) 14:49:08 ]
- >>492
not foundでした・・・
- 496 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 15:06:52 ]
- not foundじゃないよ
- 497 名前:デフォルトの名無しさん [2008/10/13(月) 15:10:33 ]
- ほんとだorz
ちょっと試してきます
- 498 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 15:43:44 ]
- >>493-494
System Volume Informationに対するアクセス権ないからだと思われ それケースにも対応するならこんな感じかな? dir /ad /b "%~dp1" | findstr /x /c:"%~nx1" >nul 2>&1 if %ERRORLEVEL% == 0 echo folder
- 499 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 16:27:03 ]
- ウイルス危険
- 500 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 19:25:16 ]
- >>487
少し前にそのへんを検証したページを見た記憶があるんだが、思い出せん。 ベストなのは exist "%1\." とかだったかなぁ。
- 501 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:10:34 ]
- >>500
ttp://otn.blogtribe.org/
- 502 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:41:34 ]
- exist "%1\."?
なんかもうperlに近いな
- 503 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:44:47 ]
- 「パソコンの使い方」と言う人来ないねw
- 504 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:51:50 ]
- 召喚するなw
- 505 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 20:54:26 ]
- if exist "ファイル\." echo 駄目やんけ
- 506 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 21:02:35 ]
- if exist 「パソコンの使い方」と言う人 echo 来るな
- 507 名前:デフォルトの名無しさん mailto:sagr [2008/10/13(月) 21:32:25 ]
- if exist "c:\System Volume Information\\*" goto fol
>>501 もあかん
- 508 名前:デフォルトの名無しさん mailto:sage [2008/10/13(月) 21:54:02 ]
- ここはお前の日記帖
- 509 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 00:47:37 ]
- >>507
だからそこはアクセス権の問題だろ。 別のディレクトリで試せよ。
- 510 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 01:17:01 ]
- >>498
dir /ad /b "%~dp1" | findstr /x /c:"%~nx1" >nul 2>&1 はSFNであかん
- 511 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 15:18:21 ]
- dirはdirectoryの中を見るもので、directory自身を見るものじゃない
すじも性能も悪いからやめとけ directory自身を見ろ
- 512 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 20:33:35 ]
- >>510
なるほど、SFNのことは考えてなかった。 じゃあこんなのはどうだろう。 echo "%~a1" | findstr ^d >nul if %ERRORLEVEL% == 0 goto fol
- 513 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 20:48:19 ]
- まどろしかよ
set a=%~a1 if %a:~0,1%==d goto fol
|

|