- 1 名前:デフォルトの名無しさん [2008/08/04(月) 23:27:23 ]
- 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。 ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。 【前スレ】 (関連スレは>>2) 【.cmd】 バッチファイルスクリプト %2 【.bat】 pc11.2ch.net/test/read.cgi/tech/1197881068/
- 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
- 514 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 20:57:51 ]
- マトリョーシカって何?
- 515 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 22:28:20 ]
- ロシアの入れ子人形
- 516 名前:デフォルトの名無しさん mailto:sage [2008/10/14(火) 23:56:53 ]
- 古語【間怠(まどろ)し】 手緩い もどかしい
- 517 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 22:46:49 ]
- 通りすがりだがネタがなさそうなので投下しておこう。
AKAI ME30PII Simulator for Win32(2000/XP/Vista) ttp://ktbrick.tamajiri.com/ 試作で作ったとあるMIDI関連機器の操作部分だけクローン。 この程度と笑ってやってくれorz
- 518 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 22:51:32 ]
- >>517
000〜002を結合させたファイルをダウンロードさせたくない理由があるの?
- 519 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 23:24:19 ]
- >>518
単に借りているところの容量制限。
- 520 名前:デフォルトの名無しさん mailto:sage [2008/10/16(木) 23:47:24 ]
- >>519
納得
- 521 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:09:29 ]
- sakuratan.ddo.jp/imgboard/img-box/img20081019000521.jpg
計算が合わない・・・・・ @echo off set var=1 set flu=0 md K:\0 for %%i in (*.bmp,*.jpg,*.png,*.ico,*.gif,*.jpeg) do ( copy K:\東方\東方MAX\%%i K:\%flu%\ call :add %flu% ) pause :add IF %var%==600 ( set/a flu=%flu%+1+1+1 echo %flu% ←これecho %%flu%% set var=0 md K:\%flu% pause ) set/a var=%var%+1 exit/b いちおうK:\東方\東方MAXのなかの数千枚のがぞうを600枚単位でKドライブ直下に0〜どんどんフォルダつくって移動する ってな物を作ってるんですが フォルダの名前を出すための計算?がおかしいです。どこ直せばいいでしょうか ちなみにループ1週目が0になり2週目も0になり3週目で1になります。
- 522 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:10:28 ]
- ああ、ミスったset/a flu=%flu%+1+1+1 はテストのために書いた。
本当はset/a flu=%flu%+1です
- 523 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 00:28:26 ]
- >>164
- 524 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 01:07:01 ]
- 遅延環境変数の展開って理解されにくいよね
- 525 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 01:10:16 ]
- 環境変数の遅延展開って理解されにくいよね
- 526 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 01:16:33 ]
- set /a flu=%flu%+1 とかより set /a flu+=1 の方がスマート
- 527 名前:521 mailto:sage [2008/10/19(日) 02:39:48 ]
- 遅延環境変数なのかな?
書き換えて set /a sra=%flu%+1 とかにしてもsraに変数が入らない(´・ω:;.:... setlocal ENABLEDELAYEDEXPANSION を入れても!flu!が文字列としてしか認識されない(´;ω;`)ブワッ
- 528 名前:521 mailto:sage [2008/10/19(日) 02:44:52 ]
- >>527 変数に値が入らないの間違いだ(´・ω・`)
- 529 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 03:26:04 ]
- @echo off
setlocal ENABLEDELAYEDEXPANSION set var=1 set flu=0 md K:\0 for %%i in (*.bmp,*.jpg,*.png,*.ico,*.gif,*.jpeg) do ( copy K:\東方\東方MAX\%%i K:\%flu%\ call :add %flu% ) pause goto :EOF :add IF %var%==600 ( set/a flu+=1 echo !flu! set var=0 md K:\!flu! pause ) set/a var+=1
- 530 名前:521 mailto:sage [2008/10/19(日) 03:44:53 ]
- >>529 動いてないように見えて動いてたわ・・・・・
んでもこうするとコピー先指定どうするか・・・・
- 531 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 03:50:53 ]
- copyのとこも!flu!にして
- 532 名前:521 mailto:sage [2008/10/19(日) 03:59:24 ]
- ありゃ、なんだまた見た目に翻弄された(´・ω:;.:...
ご迷惑をおかけしました・・・・・・・・
- 533 名前:521 mailto:sage [2008/10/19(日) 04:00:33 ]
- @echo on で見てると出力先がK:\!flu!\って見えるから誤解してた。
皆さんトンクス
- 534 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 04:39:39 ]
- echo ZUN信者乙
- 535 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 15:10:43 ]
- >@echo on で見てると出力先がK:\!flu!\って見えるから
はぁ?
- 536 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 15:24:48 ]
- >>535
はぁ?w
- 537 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:56:45 ]
- >>535
展開されてないように見えるだろがw
- 538 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 19:59:44 ]
- >>529
> call :add %flu% 引数使ってなくね?
- 539 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 20:08:51 ]
- !にしなくていい%を!にして
!にしないといけない%を!にしてないのは ぱぁ?
- 540 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 20:40:16 ]
- > !にしなくていい%を!にして
どれよw
- 541 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 20:47:02 ]
- echo !flu!
md K:\!flu!
- 542 名前:デフォルトの名無しさん mailto:sage [2008/10/19(日) 21:07:17 ]
- 環境変数の遅延展開って理解されにくいよね
- 543 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 20:50:27 ]
- ディレクトリの中の実行ファイルを名前順に実行するには
どうしたらいいんでしょうか(´・ω・`) start /w ---.exe とか延々書いたりdirをテキストにリダイレクトして順次読めないか とか試してみたんですがうまくいきません('A`) どなたかおねがいします・・・
- 544 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:13:42 ]
- >543
まずパソコンの使い方を勉強しましょう PC初心者 pc11.2ch.net/pcqa/ パソコンの使い方 初心者〜管理者まで必読!コマンドライン(DOS Pt.7) pc11.2ch.net/test/read.cgi/win/1217738171/
- 545 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:14:49 ]
- >>544は荒らしなので無視していいです。
>>3を参照
- 546 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:17:09 ]
- >>543
start /w ---.exe でほんとにうまくいかないんですか?
- 547 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:19:21 ]
- コマンドラインが満足に使えない人ですか?
- 548 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:26:05 ]
- Vistaですがビッグローブの動画がみれません
コンポーネントをアップグレードしてくださいって言われるけどできません どうすればいいでしょうか?
- 549 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:28:19 ]
- そんな動画見なくていいよ
- 550 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:29:53 ]
- 役にたつ奴いねーから帰るわ。
- 551 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:33:51 ]
- >>546
や、うまくいくんですが量がおおくめんどいので ディレクトリの中全部を手っ取り早く処理できないかなー ってことでw テキストに入れてfor /f でとりだすのか・・・?くらいの知識しかねーす('A`) すんませんー
- 552 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:35:47 ]
- 友人からPCゲームを借りたのですが、マイコンピューターからCDーROMを開くと「デバイスの準備が出来ていません」と出ます
どうしたらいいですか?
- 553 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:38:51 ]
- >>551
カレントディレクトリの中のexeを実行するなら for %%i in (*.exe) do start /w %%i でどうでしょう
- 554 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:40:25 ]
- そんなゲームやらなくていいよ
- 555 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:41:11 ]
- >>552
友人に聞け
- 556 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:41:51 ]
- >>553
ありがとうございます! まさか1行で済むなんて・・・ もっと精進したいとおもいます・・・(;´Д`) ありがとうございました!
- 557 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:43:15 ]
- 馬鹿の来る所じゃない
- 558 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:46:18 ]
- 死ね
- 559 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 21:51:05 ]
- PCの電源を切ったのにモニターに気持ち悪い顔が映ってるんですがどうすればいいんですかね
- 560 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 22:03:44 ]
- 中に誰かいる
- 561 名前:デフォルトの名無しさん mailto:sage [2008/10/20(月) 22:17:28 ]
- 後ろに誰かいる
- 562 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 01:52:55 ]
- 鏡だ
- 563 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 02:08:47 ]
- >>556
NTFSなら名前順になるだろうけどFATだと順番ぐちゃぐちゃだぜ?
- 564 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 10:17:59 ]
- ヒント
質問者も解答者もパソコン初心者 プログラミングではなくてパソコンの使い方の質問
- 565 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 10:33:52 ]
- ↑荒しは必死ですね
- 566 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 11:59:12 ]
- >>564のパソコンの使い方とやらをまとめてwikiにでもしたら?
パソコン初心者用の使い方って事なら、大した手間じゃないよな?
- 567 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 18:22:16 ]
- >>404
かなり過去のものにレスするが、最近必要になったので調べてみた。 この程度ならデータ構造気にしなくていいわけでC/C++コンパイラでexe生成して バッチに組み込むことくらい簡単にできるはず。 第58章 コンソールアプリで文字色を変える homepage2.nifty.com/c_lang/intro/no_58.htm コンソールアプリを作ろう(3) www.geocities.co.jp/SiliconValley-PaloAlto/8945/delphi/tip5.html Japanese Windows 95 Doesn't Support Console Keisen Ruled Lines support.microsoft.com/?scid=kb%3Ben-us%3B145925&x=16&y=18
- 568 名前:デフォルトの名無しさん mailto:sage [2008/10/21(火) 22:36:43 ]
- コンソールカラーの活用について
ttp://msdn.microsoft.com/ja-jp/library/cc708913.aspx
- 569 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 00:58:39 ]
- 条件でタスクトレイにソフトが入ったら〜する、出たら〜するっていう条件にしたいんですけど、
どうすればいいでしょうか
- 570 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 01:00:45 ]
- そういうのはバッチでやらないでください。
- 571 名前:デフォルトの名無しさん mailto:sage [2008/10/22(水) 02:07:30 ]
- for /f %i in ('tasktray.exe /l') do echo %i
- 572 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 05:44:29 ]
- >>570なにでやるのがいいんでしょう?
>>571tasktray.exeなんてのがあるんですね。詳しくわからないので研究してみます。
- 573 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 09:44:06 ]
- ちょっと質問。
win xpでバッチファイルよりも洗練された仕様の言語でスクリプトを書こうと思ったら、 wshで対応してる言語を選ぶって事でオケ?
- 574 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 10:07:52 ]
- ここへ行け
初心者〜管理者まで必読!コマンドライン(DOS Pt.7) pc11.2ch.net/test/read.cgi/win/1217738171/
- 575 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 10:17:31 ]
- >>573
おけ >>574は荒らしなので却下
- 576 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 10:23:57 ]
- >>575
蟻
- 577 名前:デフォルトの名無しさん mailto:sage [2008/10/24(金) 22:02:34 ]
- >>573
Windows PowerShellという選択肢もあるよ 要インストールだけど
|

|