- 1 名前:デフォルトの名無しさん mailto:sage [2007/05/04(金) 21:33:11 ]
- 拡張子が .cmd または .bat のバッチファイルの
スクリプティング(プログラミング)にかかわる 質問,テクニック(JScript,Perl等の埋め込みなど含む), 関連情報のためのスレです。 【関連スレ】 バッチファイルプログラミング 3.bat pc11.2ch.net/test/read.cgi/tech/1148485555/ WSH(・∀・)スレッド! Part 2 pc11.2ch.net/test/read.cgi/tech/1176698934/ Windows PowerShell (正式版リリース)1.0 pc11.2ch.net/test/read.cgi/tech/1163818863/ HTAをもっと流行らせる計画 pc11.2ch.net/test/read.cgi/tech/1124559962/ ユーザー必読!コマンドライン(DOS Pt.6) pc11.2ch.net/test/read.cgi/win/1176558776/ MS-DOS・Win3.1総合スレッド pc11.2ch.net/test/read.cgi/win/1025462258/ ※なんでも無理矢理バッチでやろうとせずWSH等の使用も 検討しましょう。
- 620 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 07:51:29 ]
- そんなぐらい自分でやれよ
- 621 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 11:28:23 ]
- 乞食らしくPowerShellIDEでも使わせてもらえよ。
- 622 名前:599 mailto:sage [2007/10/24(水) 12:02:13 ]
- >>606さん
ありがとうございます! 早速、勉強しながらテストさせて頂きます! こんなことがパッと書けるなんて、すごいなぁ。 >>609さん おお!こっちも参考になりそうですね! WSHも勉強してみたいと思います。 皆さん、色々ありがとうございましたー。
- 623 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 15:35:14 ]
- unixみたいに、コマンドをバックグラウンド実行ってできないのでしょうか?
- 624 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 15:38:43 ]
- ない
cygwinのbash使うか start使うと別窓で開くが
- 625 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 16:15:39 ]
- バッチじゃなくてOSやコマンドラインの話だな
- 626 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 16:24:34 ]
- >>624
ありがとうございます。 コマンドプロンプトを非表示の状態でバッチを実行することってできますか?
- 627 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 16:49:25 ]
- ここはパソコンの使い方を教える所じゃなくて
プログラムを作るスレ
- 628 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 17:08:00 ]
- CreateProcessでSW_HIDEで実行すれば非表示に出来るが一般的とは言いがたいな。
start /min で最小化して実行するのが無難だな。
- 629 名前:デフォルトの名無しさん mailto:sage [2007/10/24(水) 21:46:54 ]
- 627は阿保だろ
- 630 名前:デフォルトの名無しさん [2007/10/25(木) 03:01:55 ]
- スタート⇒ファイル名を指定して実行
もしくはショートカットアイコンでも作ってクリックしろ
- 631 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 18:37:22 ]
- >>626 FAQ >>358
- 632 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 18:43:48 ]
- >>599
つ C:\Program Files\Support Tools\dupfinder.exe
- 633 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 23:05:33 ]
- >>626
つ AT
- 634 名前:デフォルトの名無しさん mailto:sage [2007/10/25(木) 23:53:11 ]
- フォルダに入っているすべてのWMVをEXEに渡して
とある変換処理をさせています↓ FOR %%F IN (*.WMV) DO C:\CONVERT.EXE "%%F" しかし、このEXEは出力先が指定できず、同じフォルダ内に結果のWMVを作ります。 それでFOR対象の中に変換後のWMVが入ってきてしまい、 必要のない変換を行ってしまいます。 こういう場合どう書けばいいんでしょうか? 変換後のファイルは頭に'[Converted]-'とつきます。 これがついてるものだけを弾きたいんですが。 私の古い知識では他のバッチを作るとか リネームして戻すととかくだらない方法しか思いつきませんorz それと最近のバッチコマンド(WinNT以降?)について よく解説されてるサイトとかってあります?
- 635 名前:デフォルトの名無しさん mailto:sage [2007/10/26(金) 00:18:38 ]
- FOR %%F IN ('DIR /B *.WMV') DO C:\CONVERT.EXE "%%F"
- 636 名前:デフォルトの名無しさん mailto:sage [2007/10/26(金) 00:21:38 ]
- >>626
ftp://ftp.microsoft.com/ResKit/win2000/soon.zip
- 637 名前:デフォルトの名無しさん [2007/10/26(金) 00:25:34 ]
- >>634
>それと最近のバッチコマンド(WinNT以降?)について >よく解説されてるサイトとかってあります? pc11.2ch.net/test/read.cgi/tech/1178281991/6
- 638 名前:デフォルトの名無しさん [2007/10/26(金) 01:26:13 ]
- FOR %%F IN (*.CS) DO CALL :convert "%%F"
GOTO :EOF :convert SET T=%~1 SET T=%T:~0,12% IF NOT "%T%" == "[Converted]-" C:\CONVERT.EXE "%~1" EXIT /B
- 639 名前:デフォルトの名無しさん [2007/10/26(金) 01:29:56 ]
- いかん、まちごた。WMV やった・・・
FOR %%F IN (*.WMV) DO CALL :convert "%%F" GOTO :EOF :convert SET T=%~1 SET T=%T:~0,12% IF NOT "%T%" == "[Converted]-" C:\CONVERT.EXE "%~1" EXIT /B 要するに、頭12文字が [Converted]- で無いヤツを処理するサブルーチン つくればよかたい。
- 640 名前:デフォルトの名無しさん mailto:sage [2007/10/26(金) 03:47:01 ]
- >>634
同じフォルダ内というのが、CONVERT.EXEのあるフォルダじゃなくて カレントディレクトリっていうことなら、話は簡単だが?
- 641 名前:デフォルトの名無しさん mailto:sage [2007/10/26(金) 03:57:46 ]
- >>635より簡単?
- 642 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:02:02 ]
- for /f %%s in ('コマンド') do if errorlevel 1 echo %%s
'コマンド'のerrorlevelによって、'コマンド'の出力の処理を変えられますか?
- 643 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:37:44 ]
- >642
そういう初歩的な話はこちらへどうぞ↓ ユーザー必読!コマンドライン(DOS Pt.6) pc11.2ch.net/test/read.cgi/win/1176558776/
- 644 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:39:14 ]
- 初歩的じゃないんだけど
- 645 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:44:13 ]
- 643はねんねの時間ですよー(^o^)
- 646 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 22:57:59 ]
- 初歩的だとしてもこのスレで問題ありません。
誘導厨の荒らしは頭のおかしい人なので無視しましょう。
- 647 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 23:09:22 ]
- つまり初歩的なんだ
- 648 名前:デフォルトの名無しさん mailto:sage [2007/10/27(土) 23:14:01 ]
- 要するに初歩的な話
- 649 名前:デフォルトの名無しさん [2007/10/28(日) 00:37:23 ]
- 「誘導厨」 か。いい言葉だな。こんど使わせてもらおうっと。
ここ以外にもスレをいくつか定期的に読んでるけど、 すぐ「検索しろ」「ググれ」って言うバカが多いのなんの。 検索しろで済むなら、このスレいらんやろ? こういうヤツらを・・・んと、えっと、何と表現していいんだ? そう、まさしく「誘導厨」。
- 650 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 00:50:00 ]
- このスレの誘導厨はリアル人格障害のようですよ
- 651 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 00:57:13 ]
- >>649
検索やググっても分からない奴に何を(ryw
- 652 名前:デフォルトの名無しさん [2007/10/28(日) 01:01:31 ]
- >>650
あ、ほんとだ。
- 653 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 01:57:02 ]
- 自分の気に入らない奴には「〜厨」と付けて
勝った気になるというか自分の方が正しい気になるやつって居るよね 例えば、タバコ嫌いな奴は喫煙家を喫煙厨とか吐煙厨とか言って蔑み 喫煙家はタバコ嫌いな奴を嫌煙厨などと言って罵る というわけで「〜厨」と呼ばれてる奴が、一方的におかしかったり 間違ってたりするわけではないというお話でした 「〜厨」と呼ばれる奴が悪いなら、「嫌誘導厨」と言われでも言い返す術は無くなるしw もちろん誘導を嫌ってる奴の方が悪いって訳でもないけど、過剰に反応しすぎて 正しい誘導まで目に入ってない傾向はある もっとも誘導する方もここの主旨の範疇まで誘導してる場合もあるからお互い様
- 654 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 02:01:45 ]
- 一方的におかしいから誘導厨と言われるんだろ
- 655 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 02:37:15 ]
- テキストファイルの先頭行を削除するにはどうすっぺ?
- 656 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 03:20:18 ]
- >>655
@echo off echo 1d > hoge.tmp echo e > hoge.tmp edlin hage.txt < hoge.tmp del hoge.tmp
- 657 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 03:31:42 ]
- @echo off
for /f "skip=1 tokens=1* delims=:" %%x in ('findstr /r /n "^" "FILENAME.TXT"') do echo.%%y
- 658 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 04:05:36 ]
- >>656
@goto a 1d e :a @edlin hage.txt < "%~f0"
- 659 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 09:02:21 ]
- unixのtailみたいなスマートな方法ないの?
もしかしてあんまり簡単にやってしまうとスレ違いになるから、無理に頭の悪い方法でやってる?
- 660 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 11:25:34 ]
- スマートにやりたい人はCygwinやGnuWin32を入れる方向で
- 661 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 14:40:01 ]
- for /f "skip=1 tokens=1* delims=:" %%x in ('findstr /r /n "^" "FILENAME.TXT"') do echo.%%y >"FILENAME.TXT"
空 for /f "skip=1 tokens=1* delims=:" %%x in ('findstr /r /n "^" "FILENAME.TXT"') do echo.%%y >>"FILENAME.TXT" 倍
- 662 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 14:43:06 ]
- >>661
当たり前だろ
- 663 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 19:51:39 ]
- ^Z
- 664 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 21:45:46 ]
- >>658
( echo 1d echo e )|edlin hage.txt だけど、^Zが付くんじゃなあ debugで削除するとか
- 665 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 22:09:58 ]
- バッチファイルを実行したときの標準出力への出力を全部
ログに残したいんですが、いい方法はないでしょうか? 「これを最初に書いておけば以降の出力は全部ログに残る」 みたいのがあれば一番いいんですが。
- 666 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 22:11:27 ]
- call :main > "%~0.log"
exit /b :main echo hello
- 667 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 09:12:17 ]
- >>666 ありがとうございます。
- 668 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 09:46:07 ]
- フォルダをドロップしたら中にあるファイルごとフォルダを削除してくれる
batファイルはありますでしょうか。
- 669 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 09:59:27 ]
- がんばって作るんだ。
- 670 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 10:04:36 ]
- デバッグどころか一度も実行していないが
if "%~1"=="" goto err cd /d "%~1" || cd /d "%~dp1" || goto err dir /w echo. echo "%cd%"のフォルダとファイルを削除します pause set folder=%cd% del *.* || goto err cd .. || goto err rmdir "%folder%" || goto err goto exit :err echo error pause :exit
- 671 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 10:13:22 ]
- エクスプローラでドロップするんならエクスプローラで削除すれば簡単なのに
- 672 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 10:17:12 ]
- >>669-670ありがとうどざいました。
>671DOSで削除した方がHDDにやさしいような気がしたもので。
- 673 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 10:22:19 ]
- ( ゚д゚)ポカーン
- 674 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 10:33:18 ]
- そしてうっかり間違ったフォルダを消して涙目の>>668
- 675 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 14:53:42 ]
- 大量に消すときはrd /s/qだな
- 676 名前:デフォルトの名無しさん [2007/10/29(月) 16:21:35 ]
- ご助言お願いします。
test.txtという3行のファイルがあり、 その中身は以下のようになっています。 あかさたな 123456 ABCDEFG 1行の内容を1つの変数に格納したいのですが、 どのようにすればよいでしょうか。 FOR文を色々書いてみましたが、どうしても1行目しか 変数に入れられませんでした。
- 677 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 16:27:06 ]
- 初心者向きのスレはこっち↓
ユーザー必読!コマンドライン(DOS Pt.6) pc11.2ch.net/test/read.cgi/win/1176558776/
- 678 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 18:33:23 ]
- (
set /p a= set /p b= set /p c= )<test.txt set d=%a% %b% %c%
- 679 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 18:40:48 ]
- >>676
@echo off for /f "tokens=1* delims=:" %%I in ('findstr /n /r "^" test.txt') do set AAA[%%I]=%%J set AAA[ >>677 前スレであぼーんされたの忘れたの? アク禁されないように気をつけろよ。
- 680 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:13:28 ]
- やっぱスレ違いの質問に答えるやつはレベル低いな
- 681 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:30:29 ]
- 初心者でもこのスレでOKですよ。
スレ違いの質問に見えているとしたら頭が悪いのです。
- 682 名前:デフォルトの名無しさん [2007/10/29(月) 19:31:08 ]
- ヤター!チャンス!
さっそく使わせてもらいます。 >>680 誘導厨は帰れ!自分の巣へ帰れ!37度線よりこっちに来るな!
- 683 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:31:27 ]
- >>681
いい加減ウザいんだが。自演じゃないなら自粛してくれ。
- 684 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:36:06 ]
- >>682
誘導厨はリアル人格障害のようだからレスするだけ無駄っぽいですよ。
- 685 名前:デフォルトの名無しさん mailto:sage [2007/10/29(月) 19:41:26 ]
- >>682
全然関係ないけど、37じゃなくて38だろと。
- 686 名前:デフォルトの名無しさん [2007/10/31(水) 20:21:53 ]
- マシンAのバッチファイルから、マシンBにあるバッチファイルを実行する方法はないでしょうか。
1,マシンAのバッチファイルで、マシンBに対して何らかの通信を行うプログラムを実行 2,マシンBはAからの通信を受けてバッチ実行 というような感じになるのかなと思うのですが、こういう事は可能でしょうか。
- 687 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 20:22:41 ]
- つ[rsh]
- 688 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 20:31:01 ]
- つWshRemote
- 689 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 20:54:18 ]
- パソコンの使い方
- 690 名前:686 mailto:sage [2007/10/31(水) 20:57:14 ]
- 大事なことを書き忘れていました。
マシンA、BともにWiindows2000です。 >687 せっかく教えていただいたのに済みません。 Windows2000なのです。 >688 なるほど、WSHですか。 使ったことなかったですが、今回の目的程度であれば ググッたサイトで見つけたサンプルを改変すればできそうな気がしてきました。 あした試してみます。ありがとうございます。
- 691 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 21:02:44 ]
- >>689
パソコンの使い方は pc11.2ch.net/pcqa/ で訊いてくださいね
- 692 名前:デフォルトの名無しさん mailto:sage [2007/10/31(水) 22:03:55 ]
- つWMI Win32_Process.Create
- 693 名前:687 mailto:sage [2007/11/01(木) 04:14:14 ]
- >>690
大変恐縮ですが、Win2kにもrsh.exeというものがありましてね。 調べもしないで戯けたこと抜かすんじゃねぇ。
- 694 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 12:59:37 ]
- rshdがないんじゃないの?
- 695 名前:デフォルトの名無しさん [2007/11/01(木) 14:24:48 ]
- ( ´,_ゝ`)プッ
- 696 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 19:46:44 ]
- 渡ってきた引数がパスなのですが
それがディレクトリかファイル化を判断したいのですが、どうすればよろしいでしょうか。
- 697 名前:デフォルトの名無しさん [2007/11/01(木) 20:15:47 ]
- SET UNKO=C:\WINDOWS
IF EXIST "%UNKO%\*.*" ECHO ディレクトリだよ〜〜ん IF NOT EXIST "%UNKO%\*.*" ECHO たぶんファイルだよ〜〜ん
- 698 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 22:10:43 ]
- レベルの低い質問にお粗末過ぎる回答
ここプログラム板だよね
- 699 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 22:25:03 ]
- pushd %1
if errorlevel 1 echo not folder
- 700 名前:デフォルトの名無しさん [2007/11/01(木) 23:00:10 ]
- >>698
何一つ質問に答えられないで、文句だけ書いていくおまいさんより、よっぽど建設的だと思うぞ。
- 701 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:20:29 ]
- if exist %1 if not exist %1\nul (
echo file ) else ( echo directory )
- 702 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:22:49 ]
- test -d %1 && echo dir || echo file
- 703 名前:デフォルトの名無しさん mailto:sage [2007/11/01(木) 23:27:01 ]
- echo n | del /F %1 >NUL 2>&1
if errorlevel 1 (echo '%1' is a directory.) else echo '%1' was a file.
- 704 名前:デフォルトの名無しさん [2007/11/02(金) 00:48:16 ]
- 次の条件でバッチファイルを作成してください
・フォルダ内にある複数のファイルを結合し一つにする ・結合してできたファイル名は自由 ・結合されたファイルは削除される ・フォルダ内にファイルがない場合はエラーメッセージを出力し処理を終了 よろしくお願いします。
- 705 名前:686 mailto:sage [2007/11/02(金) 02:30:34 ]
- >>693
すみませんでした。 「rsh windows」でググったら、一番上に出てきたMicrosoftのサイトに Win2000ではrshは無いって書いてあったんで、そうなんだとばかり・・・。 SFUってのをインストールしたら2000でもいけるっぽいですね。 また明日試してみます。 ありがとうございました。
- 706 名前:デフォルトの名無しさん [2007/11/02(金) 11:51:18 ]
- >>701-703
市ね
- 707 名前:デフォルトの名無しさん [2007/11/02(金) 12:08:22 ]
- >>699
それ、カレントディレクトリが変更されてしまうという副作用があるので美しくない。 あと、ネットワークだと勝手にZドライブが割り当てられてしまうんだよね。 これを良しとするかダメとするかは人それぞれだろうけど。
- 708 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 14:32:05 ]
- pushd %1 && popd
- 709 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 14:37:27 ]
- echo %~a1
- 710 名前:デフォルトの名無しさん mailto:sage [2007/11/04(日) 01:29:20 ]
- 参考スレ(誘導厨に関して)
軽度発達障害者に迷惑してる生活part2 life8.2ch.net/test/read.cgi/kankon/1194103268/ ★☆☆ アスペルガーだけどプログラマ pc11.2ch.net/test/read.cgi/prog/1174990403/
- 711 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 06:23:12 ]
- .batと.cmd以外の拡張子もバッチファイルとして、
ダブルクリックで起動できませんか?
- 712 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 09:04:22 ]
- >711
パソコンやOSの使い方の質問は板違い PC初心者 pc11.2ch.net/pcqa/ Windows pc11.2ch.net/win/
- 713 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 15:52:02 ]
- .extの@値をbatfileにすればよい
- 714 名前:デフォルトの名無しさん mailto:sage [2007/11/07(水) 20:08:43 ]
- >>712
人格障害者のあなたは life8.2ch.net/utu/ に行って下さい。
- 715 名前:デフォルトの名無しさん [2007/11/07(水) 23:45:56 ]
- >>712
市ね。いや氏ね。むしろ誌ね。っていうか、詩ね。だが結局、士ね。
- 716 名前:711 mailto:sage [2007/11/08(木) 02:26:00 ]
- >>713
ダメでした。 ダブルクリックすると、 「c:\hogehoge\hoge.cam は有効な Win32 アプリケーションではありません。」 と出ました。 フォルダオプションのファイルの種類で、.camを見ると、 「アクションを実行するアプリケーションは」 "%1" %* となっていました。
- 717 名前:デフォルトの名無しさん mailto:sage [2007/11/08(木) 04:43:47 ]
- フォルダオプションでなくregeditでレジストリを見てください
- 718 名前:711 mailto:sage [2007/11/08(木) 08:03:06 ]
- regeditを使って .camの@値をbatfileにしましたけど駄目です。
- 719 名前:デフォルトの名無しさん mailto:sage [2007/11/08(木) 08:14:27 ]
- %SystemRoot%\System32\cmd.exe /c %1って具合に関連付けすればいいんじゃないの?
- 720 名前:デフォルトの名無しさん mailto:sage [2007/11/08(木) 08:15:32 ]
- ああごめん、cmd.exeがバッチファイルとして見なしてくれなさそうな気がする。駄目だなきっと。
|

|