1 名前:デフォルトの名無しさん [2006/05/25(木) 00:45:55 ] 前スレ バッチファイルプログラミング 2.bat pc8.2ch.net/test/read.cgi/tech/1104911889/ 関連スレ 初心者〜管理者まで必読!コマンドライン(DOS Pt.4) pc8.2ch.net/test/read.cgi/win/1116131036/ MS-DOS・Win3.1総合スレッド pc8.2ch.net/test/read.cgi/win/1025462258/ WSH(・∀・)スレッド! pc8.2ch.net/test/read.cgi/tech/1055075469/ バッチファイルプログラミングとは・・・・ ・ファイル拡張子が ".bat" ・複数のコマンドを使い、実行させるバッチファイルを作る を満たせばOK!
477 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 00:54:04 ] そもそもバッチ処理をするためのものなんだから .batでawkは使うな、ってのは本末転倒な意見だな。 もちろん「あえてバッチでやってみるスレ」とするのなら、それはそれで良いが。
478 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 08:43:44 ] >>477 あえてここでawkをやろうとするのが本末転倒
479 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 09:26:00 ] >478 過疎スレなんだし大目に見てやれ
480 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 11:51:28 ] awkやsedってSFU(ServiceForUnix)に入ってるんだったっけ? 標準じゃないよな? まず標準のみの環境かどうかが(ry
481 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 12:03:52 ] メタ議論ウザス
482 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 17:02:16 ] >>450 set /a f=i % 10 があったね
483 名前:デフォルトの名無しさん [2007/02/25(日) 21:30:39 ] すみません、DOS初心者です。 質問させてください。 test.txtの内容 -------------------- aaa(111) bbb(222) ccc(333) ddd(444) -------------------- というのを test2.txt -------------------- aaa(111) bbb(222) ccc(333) ddd(444) -------------------- というように並べて出力させたいのです。 aaa(111) bbb(222)←文字列の間にはtabで区切られています。 for文でできそうな感じですが、ド素人なものでよくわかりません(>_<) どなたか教えてください、お願いします!
484 名前:483 [2007/02/25(日) 21:37:03 ] すみません、使ってるOSはWindowsXP home editionです
485 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 21:39:31 ] マルチ死ねよ
486 名前:483 [2007/02/25(日) 22:38:08 ] スマソ、自己解決しますた @echo off for /F "tokens=1,2" %%a in (test.txt) do echo %%a >>test2.txt |echo %%b>>test2.txt >>485 荒らしてるわけではないんだから死ねはないんじゃないの
487 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 22:47:03 ] 死ねばいいよ
488 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 23:13:53 ] >>487 必死だな
489 名前:デフォルトの名無しさん mailto:sage [2007/02/25(日) 23:26:08 ] マルチなんて荒らしみたいなもんだろ
490 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 01:23:11 ] >>489 同意。本人にそのつもりは毛頭ないのがさらにたちが悪い。
491 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 01:55:36 ] いちいちマルチかどうか確認してるのがキモイ
492 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 02:31:39 ] >>491 意図せずにマルチを見つけることはあっても、 わざわざマルチかどうか探すヤツなんて居ねぇから。
493 名前:デフォルトの名無しさん [2007/02/26(月) 02:32:40 ] VISTAでもバッチできるの?
494 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 04:37:32 ] >>491 専ブラでお気に入りスレの更新チェック ↓ 新着があるスレを開いていくと、同じ質問をハケーン ↓ マルチ氏ね ってだけでしょ。 492の言うとおり、わざわざ確認なんかしなくても、 普通に新着をチェックしてればマルチは目に付く。
495 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 06:39:52 ] >>491 同じようなスレやコミュニティは住人もかなり被ることが多いから 嫌でも目につくんだよ
496 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 09:17:42 ] 自分はマルチするためにあちこち投下してるくせに答える方も同じように巡回してるとか 少しも思わない想像力のなさが嫌われる原因
497 名前:デフォルトの名無しさん [2007/02/26(月) 16:32:34 ] 質問があります。 WindowsXPでですが、今日日付で作られたディレクトリを、自動削除する バッチを作りたいと思っています。 例→20070226 今日も明日も明後日も、このバッチを起動しただけで削除したいのです。 rmdir /S /Q * でいけると思ったのですが、 「ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。」 というエラーが出てしまいます。 どのようにしたら実現できるでしょうか? なお店で売っているような標準の環境です。(sedやgrepはありません)
498 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 16:58:50 ] rmdir /S /Q %date:/=%
499 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 17:02:08 ] >>487 まずコマンドラインの使い方を勉強しましょう windows板にコマンドラインのスレがあるからそこへ行くといい
500 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 17:10:06 ] del /f /s /q *
501 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:23:05 ] >>486 なんでパイプなんか使ってんの?
502 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:25:41 ] パイプの使い方はWindows板で
503 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:27:53 ] NGワード: Windows板 にしたら少しは平和になれるかも
504 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:34:55 ] @echo off
505 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:41:09 ] DOS 3.3の頃は @echo off と書けなかったから echo offと表示されたものをエスケープシーケンスを使って わざわざ消したものだったなあ。
506 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:43:25 ] @echo off echo off ってのはよく見る。
507 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:46:30 ] >>506 初めてみたけど、そう書く人がよくいるのか。
508 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:15:04 ] >>506 の周りだけだろ。
509 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 14:17:40 ] DOSの頃はバッチの1行目に echo %ECHO% とよく書いてた。普段は環境変数ECHOにoffをセットしておいて、 デバッグのときはonをセットする。
510 名前:497 mailto:sage [2007/02/27(火) 17:42:05 ] >>489-500 返答が遅くなってしまいましたが、ありがとうごさいます。
511 名前:デフォルトの名無しさん [2007/02/28(水) 00:54:40 ] コマンドプロンプトでD:\が表示されているところから C:\AAA 以下の無数にあるフォルダの中のZTNというフォルダ内のbmpの 拡張視のファイルだけをD:\PPPフォルダの中に入れたいです。
512 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 01:01:28 ] >>511 xcopy
513 名前:デフォルトの名無しさん [2007/02/28(水) 01:19:48 ] cache内のファイルを削除したいんですけど cd cache del * これだと確認メッセージが出て自動で削除できません。 パラメータにそれっぽいのがなかったので。 強制削除はバッチファイルから行えないんですか?
514 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 01:38:01 ] del /?
515 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 09:54:22 ] 放っておくと初心者にパソコンの使い方を教えるスレになってしまうな やっぱこまめに誘導しないとダメか? 初めて来て過去ログ読まずに質問するやつがほとんどだからな
516 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 10:02:50 ] >>513 パソコン初心者がいきなりプログラミングは無謀 パソコン初心者向きの板へどうぞ PC初心者 pc9.2ch.net/pcqa/ Windows pc10.2ch.net/win/ ソフトウェア pc9.2ch.net/software/
517 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 12:48:54 ] いいスレタイ案を思いついた! バッチファイルプログラミングと初心者にパソコンの使い方を教えてこまめに誘導するスレ 4.bat まぁ次スレは建てる必要ないけどね。といっても、勘違いに踊ら(ry
518 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 13:55:43 ] >517 長いから書くなら>>1 に
519 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 13:58:39 ] つかスレタイに % って使えんの? 使えるなら %4 がいいなー
520 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 16:18:21 ] 誘導厨は無視しましょう >>517 却下
521 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 16:57:11 ] こういう利用がほとんどならプログラム板にある必要ない 次スレ不用
522 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 17:04:48 ] 不要だと思うなら来なければいいだけ
523 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 17:09:42 ] 寂しくて2chで馴れ合う中年釣り師と釣られ師カワイソス
524 名前:デフォルトの名無しさん mailto:sage [2007/02/28(水) 22:26:46 ] >>523 お前そんなことしてたのか 迷惑なヤツだな
525 名前:デフォルトの名無しさん [2007/03/01(木) 00:17:39 ] Q1.cd 〜で指定したところがないときにそこでバッチを終了するというのはどうすればいいでしょうか? Q2.Aフォルダ内のファイルをBフォルダに全部移すのはどうすればいいですか?
526 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 00:46:05 ] A1: if errorlevel 1 goto :eof B1: xcopy a b /s
527 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 00:49:08 ] ・・・ B1 ってなんだ・・・ ま、いいか。
528 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 15:51:26 ] >>511 ,>>525 move/?
529 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 17:06:25 ] パソコンの使い方はスレ違い
530 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 17:14:20 ] スレ違いではないので大丈夫です。
531 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 17:35:04 ] プログラミングじゃなくて初歩的なファイル操作 エクスプローラの使い方と同レベル
532 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 17:36:18 ] CUIがパソコンの使い方であった時代は終わった なんて
533 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 19:11:56 ] 次スレのスレタイ考えた 【ググるな】バッチファイルプログラミング 4.pl 【俺様に聞け】
534 名前:デフォルトの名無しさん mailto:sage [2007/03/01(木) 19:30:53 ] >>533 0点 はい次の自称釣り師の方どうぞ↓
535 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 10:55:09 ] ,、,、,|| ;'`,゙、.||'、 '; 、' /´;`'., ´' .; ' ; '、'. '; 、 ' ,' '.,´; ' l !j /ルゝ
536 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 11:32:35 ] 【まずググれ】バッチファイル初心者質問スレ 4.pl 【質問すんなカス】
537 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 18:28:43 ] Perlかよ
538 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 20:09:12 ] つ〜か、このスレにぐぐって解決できないような問題を解決できるやついるのか?
539 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 20:12:24 ] 解決できないから一生懸命誘導してるんだろ
540 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 23:15:28 ] >>538 スクリプトで出来ることを敢えてバッチでやる事に関しては
541 名前:デフォルトの名無しさん mailto:sage [2007/03/02(金) 23:17:19 ] つーか、ふと考えたこと 「オブジェクト指向バッチスクリプト」
542 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 01:04:38 ] >>419 @echo off setlocal set "path=%path:"=`%" :loop set "c=%path:~0,1%" if "%c%"==";" ( echo=%p:`="% set p= ) else ( set "p=%p%%c%" ) set "path=%path:~1%" if defined path goto loop if defined p echo=%p:`="%
543 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 03:47:33 ] >.>541 つ PowerShellスクリプト
544 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 10:51:42 ] PowerShellは一回入れてちょっと遊んだきり使ってないな。 スレの方も閑古鳥が鳴いてるし。
545 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 17:51:15 ] デバイスマネージャの任意のデバイスを有効/無効にする バッチファイルはどう書けばいいですか?
546 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 18:00:20 ] バッチファイルでは書けない。 コマンドラインのプログラムはあるが、スレ違いだから。
547 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 18:15:46 ] コマンドラインのプログラムがあればバッチで書けるだろ。
548 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 19:13:27 ] でもここはバッチファイルの構文的なことを語ったり質問したりするスレで 外部ツール探しや使い方についてはスレ違いだから。
549 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 19:16:08 ] 得意の屁理屈キタ━━━━(゚∀゚)━━━━!!
550 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 19:17:34 ] 勝手に「構文的なことを語ったり質問したりするスレ」と限定しないように。
551 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 19:22:26 ] >>545 知ってるけどスレ違いだから教えない。
552 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 19:38:02 ] 勝手に「構文的なことを語ったり質問したりするスレ」じゃないと決めつけないように。
553 名前:デフォルトの名無しさん [2007/03/03(土) 22:54:02 ] >>546 >>1 をよく読むように!
554 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 22:58:33 ] >>553 >>546 は病気なので何を言っても無駄っぽい。
555 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 23:09:27 ] >>1 に書かれてることは、>>10 や>>100 や>>500 なんかに書かれてることと等価。 全て一個人の発言であって1番目やキリ番だからといってスレへの影響力や強制力があるわけじゃない。 それが2chという個人が勝手な内容でスレ立て出来る掲示板での常識。 >>1 に強制力があったら、「このスレを開いた人は、今日中に自殺しなくてはならない」という内容を >>1 に書いてスレ立てするだけで、多くの人を殺すことが出来ちゃう。 もちろんスレ違い指摘も一個人の意見なので、従うも従わないも無視するのも踊らされて反応するのも自由。
556 名前:デフォルトの名無しさん mailto:sage [2007/03/03(土) 23:36:32 ] あらためてかくようなことかよ、ばか
557 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 00:01:18 ] 論理が破綻してるな。 やはり病気というのは真実だった
558 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 00:13:12 ] 557
559 名前:デフォルトの名無しさん [2007/03/04(日) 22:04:26 ] どなたかこんなバッチつくれません?? 2ファイルを1行ずつ改行して読み込む処理 x.txt y.txt ---- ---- aaa 111 bbb 222 ---- ---- ↓↓↓↓↓ z.txt ---- aaa 111 bbb 222 ----
560 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:14:03 ] >>559 ここは自分でプログラムを作る人の板だから 自分で作らない人が来るところじゃない
561 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:15:56 ] >559 win板に行った方がいいよ
562 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:17:29 ] 初心者〜管理者まで必読!コマンドライン(DOS Pt.5) pc11.2ch.net/test/read.cgi/win/1152544955/
563 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:31:31 ] >>559 初心者〜管理者まで必読!コマンドライン(DOS Pt.4) の>74,>87に似たようなものがある。 が、WSH使ったほうが簡単
564 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:32:40 ] 誰か病院に連れて行ってやれ
565 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:38:53 ] >>559 限界はおぬし自信が見極めるのじゃ @echo off setlocal enableextensions enabledelayedexpansion for /f "skip=2 tokens=1* delims=]" %%i in ('find /n /v "" x.txt') do set L%%i=%%j for /f "skip=2 tokens=1* delims=]" %%i in ('find /n /v "" y.txt') do ( if defined L%%i (echo !L%%i!) else (echo.) if not ""=="%%j" (echo %%j) else (echo.))
566 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:54:13 ] >>565 x.txt が y.txt より長いと表示されないし スペースのみの行だと echoはoffです になるな。だめだめ。 しかし、echo コマンドはなんで拡張オプション作ってくれなかったんだろう・・・
567 名前:デフォルトの名無しさん [2007/03/04(日) 22:57:33 ] echo=… と書けば…が空白でもechoはoffですとは表示されないよ。
568 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 22:57:34 ] 道具を使い分けるのがプロ 日曜プログラマにはそれができない
569 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 23:01:16 ] Windows PowerShell徹底解説:ITpro UNIXシステム管理者にとって,Windowsスクリプティングは長い間笑いの種だった。 これにはいくつかの理由があったが,代表的なのは,Windowsにはスクリプティングを 本当の意味で役立つものにするための主要機能の多くが欠けていたことだ。 itpro.nikkeibp.co.jp/article/COLUMN/20061106/252598/ - 114k - キャッシュ - 関連ページ
570 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 23:04:24 ] >>567 あ、ほんとだ。 知らなかったよ、サンクス!
571 名前:デフォルトの名無しさん mailto:sage [2007/03/04(日) 23:19:19 ] んじゃ、改訂版 @echo off setlocal enableextensions enabledelayedexpansion for /f "skip=2 tokens=1* delims=]" %%i in ('find /n /v "" x.txt') do ( set L%%i=%%j set LastX=%%i ) for /f "skip=2 tokens=1* delims=]" %%i in ('find /n /v "" y.txt') do ( set LastY=%%i echo=!L%%i! echo=%%j ) set /a LastY=%LastY:~1% + 1 for /l %%i in (%LastY%, 1, %LastX:~1%) do ( echo=!L[%%i! echo= )
572 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 14:56:57 ] WSH使えば簡単だっちゅうに @if(0)==(0) ECHO OFF CScript.exe //NoLogo //E:JScript "%~f0" %1 %2 GOTO :EOF @end var fso=new ActiveXObject('Scripting.FileSystemObject'); var f1=fso.OpenTextFile(WScript.Arguments.Item(0)); var f2=fso.OpenTextFile(WScript.Arguments.Item(1)); while(!f1.AtEndOfStream || !f2.AtEndOfStream){ if(f1.AtEndOfStream) WScript.Echo(); else WScript.Echo(f1.ReadLine()); if(f2.AtEndOfStream) WScript.Echo(); else WScript.Echo(f2.ReadLine()); }
573 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 15:15:27 ] >>559 7分後にはマルチかよ |1689.2ファイルから1行ずつ改行して読み込みたい XYZ 07/03/04(日) 22:11
574 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 15:54:51 ] >>572 すっごいなソレ! わけ分からん。wshか。未知の世界だわ。
575 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 17:54:40 ] >>572 をバッチに直すと、 と思ったけどマルチじゃね、ヤメタ。
576 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 18:39:39 ] プログラムを呼ぶだけのものをプログラミングとは言わない GOTO :EOF 以降はバッチは無視するわけだし スレ違い
577 名前:デフォルトの名無しさん mailto:sage [2007/03/05(月) 18:41:03 ] たしかwin板にwshも使用可のスレがあったと思うよ