1 名前:デフォルトの名無しさん mailto:sage [2011/09/13(火) 01:20:20.25 ] 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる 質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。 ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。 前スレ 【.cmd】 バッチファイルスクリプト %7 【.bat】 hibari.2ch.net/test/read.cgi/tech/1298873550/ 【.cmd】 バッチファイルスクリプト %6 【.bat】 hibari.2ch.net/test/read.cgi/tech/1277465356/ 【.cmd】 バッチファイルスクリプト %5 【.bat】 pc12.2ch.net/test/read.cgi/tech/1242268171/ 【.cmd】 バッチファイルスクリプト %4 【.bat】 pc12.2ch.net/test/read.cgi/tech/1229955189/ 【.cmd】 バッチファイルスクリプト %3 【.bat】 pc11.2ch.net/test/read.cgi/tech/1217860043/ 【.cmd】 バッチファイルスクリプト %2 【.bat】 pc12.2ch.net/test/read.cgi/tech/1197881068/ 【.cmd】 バッチファイルスクリプト %1 【.bat】 pc11.2ch.net/test/read.cgi/tech/1178281991/
643 名前:デフォルトの名無しさん mailto:sage [2012/02/29(水) 16:47:28.73 ] >>642 またやってしまった・・・ ダブルクォーテーションですね ありがとうございました
644 名前:デフォルトの名無しさん [2012/02/29(水) 20:21:18.27 ] >>640 おまえ、全然試してないだろ そのバッチ作ってD&Dしてみろボケ
645 名前:ホイミン mailto:sage [2012/03/01(木) 08:22:30.49 ] >>644 コマンドプロンプトで test.bat .\* 等と、色々やって試したんだけどね、足りなかったね。 dir がフォルダーを展開してしまうのには、書き込んでから気付いたんだけど、くどいので訂正しなかたんだよ。 使えない書き込みだから、みんな無視するだろうと思っていたよ。 一々反応してくれるのはありがたいけど、君は社会性が無いようだね。
646 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 08:25:30.43 ] @echo 便所の落書きに(ry&pause
647 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 11:51:26.33 ] 便所の落書きだか知らんが どう試したんだよw 全然ダメだろw
648 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 13:03:21.98 ] @echo 便所の落書きに^(ry&pause
649 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 15:15:45.41 ] dirの/oは引数をソートしないよ
650 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 15:54:15.80 ] 複数のファイルをバッチにD&Dしたら 引数の順番って、どう決まるの? echo %* マウスカーソルの位置のファイルが一番目?
651 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 22:29:17.92 ] そうよ 2番目以降は並び順、ラップラウンド
652 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 22:30:26.30 ] ついでに言うと、1番目ファイルでカレントディレクトリ
653 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 23:10:40.16 ] バッチにD&Dしたら、カレントディレクトリは %HOMEDRIVE%%HOMEPATH%が既定値なのでは?
654 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 23:25:46.89 ] なのではって?そうなるのか?OSは?
655 名前:デフォルトの名無しさん mailto:sage [2012/03/01(木) 23:30:35.02 ] すまん。俺のPCは古い化石なんで、Win2000 他のは違うんかも
656 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:04:32.12 ] カレントディレクトリはバッチに落とした場合とバッチのショートカットに 落とした場合で異なる。
657 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:38:45.35 ] ショートカットの場合はプロパティで確認できる。 D&Dしたファイルとは無関係なようです
658 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:40:18.10 ] ショートカットで設定してなければバッチと同じ 当たり前だろ
659 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 00:56:50.35 ] だから何? おれはショートカットの話は別にどうでもいいんだが
660 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:15:31.22 ] カレントディレクトリはバッチに落とした場合とVBSに 落とした場合で異なる。
661 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:16:24.16 ] だから何? おれはVBSの話は別にどうでもいいんだが
662 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 01:20:45.18 ] 他人のレスの真似するなよ。
663 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 02:36:25.83 ] なんでvbsは違うんだ?
664 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 02:39:43.76 ] だから何? おれはVBSの話は別にどうでもいいんだが
665 名前:デフォルトの名無しさん mailto:saga [2012/03/02(金) 02:53:26.53 ] >>659 お前バカだろ。起動時のカレントディレクトリはあてにしてはいけないという事だ。 つまり、>>652 の情報は何の意味もない。
666 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 02:54:30.97 ] なんでスレタイ読めないの? おれはVBSの話は別にどうでもいいんだが
667 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 03:39:03.93 ] VBSのドロップハンドラがへぼいんだろ
668 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 08:52:29.56 ] >>665 お前バカだろ。当たり前だろ
669 名前:ホイミン1 mailto:sage [2012/03/02(金) 11:52:24.56 ] >>649 おお、そうなんだ勉強になったなあ。確認したんだけどなあ。 でもそんなにも僕はうっかり者だったのかと、もう一度確認したけど、ソートされているみたいだよ。 なにか勘違いしているかな? dir が使えなかったのは、変わらないけど。 R:\Ue\Shita>dir /b /on fortest.bat "Shit a2.txt" dirfile.bat dirfile.bat fortest.bat Shit a2.txt Drug and Drop は absolute で渡されるからいいんだけど、relative path を使った short cut の上に D'nD する際に問題になって、調べた事があるよ。 Drug and Drop は vista 以降で変更されているようだよ。 current directory は、XP 以前では %HOMEDRIVE%%HOMEPATH%、vista 以降では %~dp1 らしいね。 参考 www.hirax.net/diaryweb/2009/06/04.html
670 名前:ホイミン2 mailto:sage [2012/03/02(金) 12:05:26.19 ] まとめてみたよ。XP では確認した(けど、でもばっちり確認したわけじゃあないから、低レベルな事を言わないで訂正してくれ)よ。 Current Directory in the various cases of launching ______________________ , 2000, _ XP,VISTA,SEVEN DrugAndDrop___________ , HOME, HOME, _ %1, _ %1 DoubleClick___________ ,Lnchd,Lnchd,Lnchd,Lnchd DrugAndDrop On ShortCut, HOME, HOME, _ %1, _ %1 DoubleClick Of ShortCut,Lnchd,Lnchd,Lnchd,Lnchd -Anotation -ShortCut is in case of the blank of "Start In". If not blanked, current directry follows it. - HOME: %HOMEDRIVE%%HOMEPATH% - _ %1: Directory of the 1st argument -Lnchd: Launched directory (in case of short cut, directory of short cut) drug and drop の際の問題といえば、全角スペース(他にも有)を含む "file name.txt" などのファイルを Drug and Drop するとクオートされないよね。他にも知ってる問題があったら、教えて。
671 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 14:15:09.54 ] コマンドとか以前に × Drug ○ Drag
672 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 19:16:55.25 ] >current directory は、XP 以前では %HOMEDRIVE%%HOMEPATH%、 explorer processのcurrent directoryでは?
673 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 19:33:17.13 ] moveでフォルダ移動のときフォルダ名指定に*使えないのは嫌がらせでしょうか
674 名前:デフォルトの名無しさん mailto:sage [2012/03/02(金) 20:06:48.04 ] 仕様です
675 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 00:56:48.46 ] >>669 俺は >>649 じゃないが、dir の /og は引数をソートしないようだ。 他は知らない。 というか間違いを書き込んで放置している奴が、 他人に社会性云々などと言える立場かよ。 レベルが低くて悪かったね。 便所の書き込みでした。
676 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 01:24:11.63 ] ドラッグ&ドロップ 前提のバッチファイルならバッチの冒頭とかに cd /d %~dp0 や cd /d %~dp1 とかを状況次第で必要に応じて書き加えていそうなもんだが。 OS による挙動の違いで問題、とかいってる前にしないのかね。
677 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 01:49:25.89 ] >>669 dir /b /on test\2\2.txt test\1\1.txt 2.txt 1.txt
678 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 03:30:18.27 ] どうでもいいっす
679 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 05:21:31.12 ] バージョンの違いだろwあほども
680 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 09:01:15.54 ] 低レベルな事を言わないでくれってさ
681 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 10:50:21.10 ] >>676 バッチファイルでcd前提の処理は UNCパスで実行された場合、想定外の動作になる バッチファイルは相対ダメ ゼッタイ絶対パス指定すべし
682 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 11:08:26.87 ] どうでもいいっす
683 名前:634 mailto:sage [2012/03/03(土) 12:11:55.59 ] >>637 ありがとうございます 教えて頂いた方法でやりたいことが出来ました 好奇心から、異なるディレクトリのものをまとめて送れるランチャーやファイルのリストなどから 同様のことが出来ないものかと機能拡張を試みて試行錯誤していてお礼が遅くなりました 申し訳ございません 改めまして再度質問です。よいお知恵があればご助言お願いします arg.tmpの内容 list.txt 表示したい結果 "C:\TMP\aaa.txt" "C:\TMP\abc" "C:\TMP\abc" "C:\TMP\abc" "C:\TMP\aaa.txt" "C:\TMP\aaa.txt" "C:\TMP\abc.txt" "C:\TMP\abc.txt" "C:\TMP\abc.txt" "C:\TMP\abc\1ファイル.txt" "C:\TMP\abc\4フォルダ" "C:\TMP\abd.txt" "C:\TMP\abc\2ファイル.txt" "C:\TMP\abc\5フォルダ" "C:\TMP\bbb.txt" "C:\TMP\abc\3ファイル.txt" "C:\TMP\abc\1ファイル.txt" "C:\TMP\abc\4フォルダ" "C:\TMP\abc\4フォルダ" "C:\TMP\abc\2ファイル.txt" "C:\TMP\abc\5フォルダ" "C:\TMP\abc\5フォルダ" "C:\TMP\abc\3ファイル.txt" "C:\TMP\abc\1ファイル.txt" "C:\TMP\abd.txt" "C:\TMP\abd.txt" "C:\TMP\abc\2ファイル.txt" "C:\TMP\abd\123.txt" "C:\TMP\abd\efg" "C:\TMP\abc\3ファイル.txt" "C:\TMP\abd\456.txt" "C:\TMP\abd\123.txt" "C:\TMP\abd\efg" "C:\TMP\abd\efg" "C:\TMP\abd\456.txt" "C:\TMP\abd\123.txt" "C:\TMP\bbb.txt" "C:\TMP\bbb.txt" "C:\TMP\abd\456.txt" arg.tmpのソートの方法がまずいということはわかるのですがどうすればいいのやら。。 以下に書いたバッチを貼ります。少し長いですがご容赦願います
684 名前:634 mailto:sage [2012/03/03(土) 12:12:59.66 ] @echo off set argpath= set arglist= call >"%~dp0list.txt" @(for %%a in (%*) do @echo "%%~fa")|sort /o "%~dp0arg.tmp" for /f "usebackq" %%b in ("%~dp0arg.tmp") do call :sub1 %%b call :sub2 rem del "%~dp0arg.tmp" pause&exit /b :sub1 if not defined argpath ( set argpath="%~dp1" set arglist=%1 exit /b ) if %argpath%=="%~dp1" ( set arglist=%arglist% %1 exit /b ) call :sub2 set argpath="%~dp1" set arglist=%1 exit /b
685 名前:634 mailto:sage [2012/03/03(土) 12:13:15.16 ] :sub2 set arglistfile= for %%c in (%arglist%) do call :sub3 "%%~ac" "%%~fc" if not defined arglistfile exit /b for %%d in (%arglistfile%) do >>"%~dp0list.txt" echo "%%~fd" set arglist= exit /b :sub3 set attr=%1 set attr=%attr:~1,1% if "%attr%"=="d" ( >>"%~dp0list.txt" echo "%~2" ) else ( set arglistfile=%arglistfile% "%~2" ) set attr= exit /b
686 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 12:38:57.51 ] 絡んだおれがバカだった 絶対パスで好きにしてくれ
687 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 13:57:54.46 ] てかいまどきバッチファイルなんか書いてる奴らが総じて底辺。
688 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 14:00:13.55 ] >>679 テキトーなことぬかすなボケ
689 名前:634 mailto:sage [2012/03/03(土) 15:20:00.58 ] arg.tmpの内容を "%%~dpa" "%%~fa" としてソートし :sub1 の%1を%2とすることで解決出来ました こっちのほうが効率がいいとかありましたら指摘お願いします。以下、修正したバッチです @echo off set argpath= set arglist= set tmpfile="%~dp0arg.tmp" set output="%~dp0list.txt" call >%output% @(for %%a in (%*) do @echo "%%~dpa" "%%~fa")|sort /o %tmpfile% for /f "usebackq delims=" %%b in (%tmpfile%) do call :sub1 %%b call :sub2 del %tmpfile% exit /b :sub1 if not defined argpath ( goto :jump ) if %argpath%=="%~dp2" ( set arglist=%arglist% %2 exit /b ) call :sub2 :jump set argpath="%~dp2" set arglist=%2 exit /b
690 名前:634 mailto:sage [2012/03/03(土) 15:20:35.76 ] :sub2 set arglistfile= for %%c in (%arglist%) do call :sub3 "%%~ac" "%%~fc" if not defined arglistfile exit /b for %%d in (%arglistfile%) do >>%output% echo "%%~fd" set arglist= exit /b :sub3 set attr=%1 set attr=%attr:~1,1% if "%attr%"=="d" ( >>%output% echo "%~2" ) else ( set arglistfile=%arglistfile% "%~2" ) set attr= exit /b
691 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 18:01:42.04 ] うざ
692 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 19:48:23.70 ] %~dpは早退なのかよ
693 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 20:02:34.08 ] 遅刻なのかよ
694 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 20:06:23.02 ] dir /b /on test\2\2.txt test\1\1.txt 1.txt 2.txt
695 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 21:11:40.93 ] dir /b /on z:\z.txt y:\y.txt z.txt y.txt
696 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 21:39:04.11 ] dir /b /on z:\* y:\* z.txt y.txt
697 名前:デフォルトの名無しさん mailto:sage [2012/03/03(土) 22:59:19.02 ] dir /b /on test\2\2.txt test\1\1.txt |sort 1.txt 2.txt
698 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 01:33:17.02 ] >dir /b /on a.txt b.txt a.txt b.txt >dir /b /o-n a.txt b.txt b.txt a.txt
699 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 01:34:32.16 ] >>698 確かに引数をソートしてるな
700 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 01:37:41.92 ] >dir /b /on a b a.txt b.txt a.txt b.txt >dir /b /o-n a b b.txt a.txt b.txt a.txt
701 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 01:38:36.31 ] ディレクトリ単位にソートってことだろ?
702 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 10:23:07.77 ] >>689 俺もバッチ作ってみた @echo off & cd /d "%~dp0" del tmp1 tmp2 list.txt > nul 2>&1 (for %%i in (%*) do @echo "%%~dpi","%%~fi")| sort /o tmp1 set /a a=10000 & set b="" for /f "delims=, tokens=1,2" %%i in (tmp1) do ( set c=%%i& set d=%%~aj& set e=%%j& call :x) for /f "delims=, tokens=2" %%i in ('sort tmp2') do echo %%i>> list.txt del tmp1 tmp2 & goto :eof :x if not %b% == %c% set b=%c%& set /a a+=1 if %d:~0,1% == d (set /a f=0) else set /a f=1 echo %a%%f%,%e:~0,-1%>> tmp2
703 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 15:41:04.60 ] うざ
704 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 16:17:47.60 ] >>689-690 はファイル名に%文字があると誤動作する
705 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 18:03:47.92 ] どの行?
706 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 18:07:01.85 ] あの行
707 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 18:09:41.44 ] たぶんcallの引数の%が化ける
708 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 19:27:26.60 ] 引数渡しやめて環境変数渡しにすればよい
709 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 23:36:02.16 ] >>704 ファイル名の%ってどうやって環境変数記号でないと判断させればいいの? ファイル名内の%の位置を調べて存在したら ^でエスケープするしかない?
710 名前:デフォルトの名無しさん mailto:sage [2012/03/04(日) 23:38:42.64 ] %のエスケープは%%だよ
711 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:00:12.25 ] なんでお前らいまだにバッチファイル書いてるの?
712 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:12:58.43 ] バッチファイルは基本だよ
713 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:36:58.96 ] >>709 %%
714 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 00:42:23.44 ] for変数と混同するんじゃね
715 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 15:40:43.79 ] このバッチに名前が%文字を含むファイルをD&Dしてごらん 違いが分かるよ @echo off set a="%~nx1" call :x %a% call :x %%a%% pause goto :eof :x echo %1
716 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 23:46:11.91 ] setlocal enabledelayedexpansion set a="%~nx1" set a=!a:%%=%%%%! echo %a% call :x %a% call :x %%a%% pause exit :x echo %1
717 名前:デフォルトの名無しさん mailto:sage [2012/03/05(月) 23:48:22.26 ] @echo off for %%i in (%*) do (set a=%%i& call :x %%a%%) pause & goto :eof :x echo %1
718 名前:デフォルトの名無しさん [2012/03/05(月) 23:49:44.92 ] ^%
719 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:07:24.36 ] @echo off for %%i in (%*) do set a=%%i& call :x pause & goto :eof :x echo %a%
720 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:10:12.82 ] いつまでやってんだよカス
721 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:14:24.77 ] サンキューカッス
722 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:27:17.77 ] もっと面白いネタは無いのか
723 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 00:42:25.31 ] ない
724 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 01:06:38.12 ] とっく枯渇してるので、蒸し返しばっか
725 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 01:13:44.33 ] でもスレを覗くんですね
726 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 01:28:48.52 ] でもってなにがでもだ?
727 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 01:34:13.80 ] 新しい知見を得るために覗いていたのか?
728 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 16:34:55.54 ] よほど無知なんだろ
729 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 17:10:05.33 ] スレ立てるまでもない質問スレで教えていただいたUNIXコマンドがあります cat `find あるディレクトリ -name test.txt` > 一つのファイル これはあるディレクトリ以下の全てのサブディレクトリを含めて、test.txtというファイルの内容を一つのファイルにまとめるコマンドです Windowsでも同じようにやりたいのですが copy ファイル1.txt+ファイル2.txt・・・・ marge.txt といった感じに+でいちいち書いていくのが面倒なのでよい方法内でしょうか?
730 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 17:55:25.05 ] for /r ディレクトリ %i in (*) do type %i>>test.txt
731 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 18:14:10.14 ] まんまじゃねーか
732 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 18:18:00.13 ] え?なんかやる事とやってる事が違うくね?
733 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 18:30:45.73 ] こまけーことはいいんだよ!
734 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 22:36:25.51 ] >>730 試してみたんですが > の使い方が誤ってます ってエラーがでます
735 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 22:53:00.85 ] 試す前に、なにやってるかくらい読めよ
736 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:03:27.10 ] すいませんコマンドの部分だけ変えてやったら出来たんですが全てのファイルを一つにコピーできません for /R %%a in (test.txt) do copy /B %%a+test.txt test.txt
737 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:33:28.10 ] 変えるなよバカ
738 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:40:45.65 ] 試す前に、for/?くらい読めよ
739 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:42:24.85 ] だったらまともに動くものを書いてくださいよ
740 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:43:45.37 ] 応用のできない奴に何を教えても無駄
741 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:52:11.61 ] それってあなたが書けないだけですよね?
742 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:54:03.40 ] あぶく銭は身に付かない
743 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:56:28.18 ] >>741 その手には乗らないよ
744 名前:デフォルトの名無しさん mailto:sage [2012/03/06(火) 23:57:57.96 ] じゃあ邪魔しないでくださいよ
745 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:00:54.15 ] 邪魔なんかしてないよw猫に小判なだけだろ
746 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:04:26.64 ] 別にバッチファイルの勉強しているわけじゃないのに くだらないクイズやナゾナゾなんて必要が無いんですよ 質問に答えられないなら邪魔でしかありません
747 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:08:04.61 ] くだらない質問に誰が答えるって?
748 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:09:55.18 ] いやにのびてると思ったら……
749 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:15:04.29 ] 別にバッチファイルの勉強しているわけじゃないので くだらない質問なんて答える必要が無いんですよ
750 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:16:51.61 ] バッチも使えないならUNIX使ってりゃいいじゃん
751 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:19:23.33 ] いや俺の認識だとむしろバッチだから使えないだと思う 普通に(無意味に)難しいよ、バッチは
752 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:20:15.83 ] 答えられない人はせめて邪魔しないでもらえますか
753 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:22:00.94 ] 俺、答えられるけど答える気ないだけだから邪魔してもいいよね?
754 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 00:24:14.98 ] それは答えられないと等しいですよね 答えられるのなら答えてるわけですから スレの無駄なんて無能さらすのはツイッターでやってください
755 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:07:56.12 ] marge.txt くすっ
756 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:13:23.19 ] >>729 には教えるだけ無駄 できないと等しいですよね できるならやってるわけですから スレの無駄なんて無能さらすのはツイッターでやってください
757 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:22:21.14 ] 便りの無いのは良い便り
758 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:29:04.83 ] 俺っちは>>730 で動いたが、感謝の念もない無礼な輩が多いな
759 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:42:48.04 ] 動く、という事と、 期待した結果は別なんじゃないかな。
760 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:43:55.08 ] エラーが出たら直せばいいと思うよ不通 それしないで逆切れするなんて以上
761 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:48:04.61 ] 期待した結果になるように直せばいいと思うよ不通 それしないで逆切れするなんて以上
762 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 01:49:14.40 ] 逆に、MS-DOSしかしらない人に UNIXのシェルで作れって言ったら似たような事になると思うよ。
763 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 02:45:02.24 ] ならんと思うよ。 man findとかちゃんと調べるもん
764 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 02:53:36.94 ] 馬鹿は何やっても駄目だから諦めた方がいいよ
765 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 03:03:25.28 ] クレクレ君に答えを与えないでくださいw
766 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 03:06:41.93 ] やるんじゃなかったなw
767 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 03:42:53.07 ] >>729 ,734,736,739,741,744,746,752,754 幼稚園からやり直せ
768 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 11:23:59.92 ] ファイルの結合はcopyだろ 誰がtypeでDOSに文字をかけと言った
769 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 16:33:17.37 ] だってcatじゃん
770 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 16:35:26.05 ] 便所の書き込みに何を言ってる
771 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 16:38:23.60 ] 自演ならもう少し面白くやってくれくれくん
772 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 16:45:22.53 ] だったらDOSじゃなくてDOGだろ?
773 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 18:08:10.27 ] >>755 中学英語からやり直せw
774 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 18:23:21.56 ] for /r ディレクトリ %i in (test.txt) do type %i>>marge.txt
775 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 18:31:08.06 ] くそ!どいつもこいつもバカにしやがって!!!!!!!!!
776 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 18:57:22.39 ] 真夜中に2ちゃんでレスの応酬ってw しかもバッチスレw 出遅れたわw
777 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 19:06:17.90 ] 遅延展開やねw
778 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 19:38:22.80 ] シフトワーカーはバッチがお好き
779 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 20:48:16.79 ] こういうのはどうかけますか? Cドライブに存在する全てのgitフォルダが何個存在するかカウント
780 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 21:08:57.30 ] エクスプローラで検索したほうが早くないか
781 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 21:44:47.11 ] 単純に検索するとゴミ箱の中まで漁る
782 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 07:03:14.49 ] cd /d c:\ dir /s /b /ad .git | find /v /c ""
783 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 07:36:08.58 ] set n=0 for /r c:\ %%i in (.) do if "%%~nxi"=="git" set /a n+=1 echo %n%個
784 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 07:47:05.53 ] >>782 の訂正版 cd /d c:\ dir /s /b /ad git | find /v /c ""
785 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 10:39:13.31 ] >>783 ifの前に@を付けろ >>781 for /r はゴミ箱の中まで検索してるな 名前が偶然に一致するなんて、まず無いだろうが
786 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 10:51:38.35 ] >>783 nxiってなに?
787 名前:デフォルトの名無しさん mailto:sage [2012/03/08(木) 11:19:32.20 ] >>786 n x i だけじゃないから、自分で調べろ for /?
788 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 07:11:46.74 ] >>782 の訂正版 dir /s /b /ad c:\git | find /v /c "" これでワンライナーOKだった
789 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 10:31:33.67 ] >>784 ,>>788 それ、c:\git というフォルダがあったら その中身しか検索しないよ
790 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 11:28:30.28 ] ここで出てきたテクニックをwikiにまとめていただけませんか?
791 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 11:32:24.24 ] いただけませんか?とか書きこんでる間にwikihouseかどっか借りてコピペしてけばいいだろ
792 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 11:55:03.16 ] えええ俺がwiki借りるの面倒くさいです
793 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 12:50:20.55 ] dir abc* ってやると先頭がabcから始まるファイルがヒットすれば表示されますが ファイルの途中にabcが存在するようなファイルもヒットさせる方法を伝授してください xxxabcxxx.txt abc.xxx.txt xxx.abc.txt とか 拡張子が無いファイルとか拡張子にabcが来ることは無いと考えていただいて結構です
794 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 13:04:14.56 ] dir *abc*
795 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 15:40:42.38 ] うそこくでねー
796 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 15:49:29.44 ] ほんとだ
797 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:05:44.51 ] 以前はウソだった。最近のcmd.exeは可能。いつからウソじゃなくなったか知らない。
798 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:14:51.52 ] 少なくともxpは本当。
799 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:19:08.35 ] 今試したら、98SEでも行けた。 大昔(DOS2とかCP/Mとかの時代)はNGだったのは確かだが、 いつOKになったんだろ?
800 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:29:00.75 ] *abc* ぐらい試してから質問しろよ
801 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:32:20.65 ] 試したら質問しないだろw
802 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 16:38:06.29 ] 16bit DOSの場合は dir *abc*.*
803 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 17:55:31.57 ] バッチファイルでも「最新の情報に更新」(F5キー)を使えますか? デスクトップのファイルを定期的に別のフォルダに移すバッチファイルを書いたんですが、 ファイルが消えても更新するまでアイコンが残ってしまって・・・
804 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 17:57:57.63 ] ahk呼んでsendcontrolでもしたら
805 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 17:58:23.49 ] 山口美江さんが亡くなった・・・ おまえらが急に老けたとか言うから
806 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 17:58:43.96 ] ごめん誤爆
807 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:03:59.92 ] >>803 ふつー残らんよ でもどうしてっつーなら createobject("shell.application").windows().item().refreah
808 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:13:03.08 ] バッチでクリップボードの文字列を引数として渡すことはできますか?
809 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:23:21.58 ] for /f %%i in ('〜') do echo %%i ってこと? '〜'に cscript.exe 〜〜 mshta.exe 〜〜 powershell.exe 〜〜 ってすりゃいい どれでも得意なのでどぞ
810 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:36:11.79 ] C:\2012\以下のサブディレクトリも含む全てのファイルの更新履歴が 2012年2月1日0時0分0秒以降になっているものをリストアップするのはbatでできますか?
811 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:38:05.77 ] forfiles/?
812 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:43:25.00 ] Aフォルダに入っているファイルを Bフォルダにバックアップしたいと考えてます そこでBフォルダには入っていてAフォルダにないファイルを一覧にしたいのですが どうやるのでしょうか?
813 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 18:51:10.75 ] for + if または dir + findstr
814 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 19:43:18.94 ] >>804 ありがとうございます ごめんなさい、難しくてよくわかりません;; >>807 ありがとうございます、教えてもらった方法でできました! 'createobject'は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出るのですが、これはこれでいいんでしょうか? WIN7を使っています。
815 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 20:37:42.34 ] 正常
816 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 20:41:47.70 ] > refreah
817 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 21:39:36.03 ] > refresh.vbs
818 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 22:07:54.59 ] CSVファイルを読み込んで、ちょっとした処理をしたかったのだけど、 読み込む対象のファイル名に半角スペースが入っていた場合どうすればいい? ここを参考にしたんだけど、 ttp://vaindespair.blogspot.com/2009/04/blog-post_09.html 半角スペース入りのファイル名だとうまくいかないのです。 ・・・と書いてて閃いたw FOR /F "tokens=1,3 delims=," %%a IN ( 'type "hannkaku space irino file.csv"' ) DO (
819 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 22:22:23.19 ] FOR /F "usebackq tokens=1,3 delims=," %%a IN ( "hannkaku space irino file.csv" ) DO ( だよーん
820 名前:818 mailto:sage [2012/03/09(金) 22:29:58.17 ] ありがとう!
821 名前:デフォルトの名無しさん mailto:sage [2012/03/09(金) 22:58:55.52 ] forでcsvって難しくないか? "abc,def","pqr","xyz" ってなのがあったらモー駄目だろ?
822 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 03:16:58.48 ] >>812 set a="c:\tmp\Aフォルダ" set b="c:\tmp\Bフォルダ" set list="c:\tmp\B-A_list.txt" call >%list% for /f "usebackq delims=" %%b in (`dir /a-d /b %b%`) do @if not exist %a:~0,-1%\%%b" >>%list% echo %b:~0,-1%\%%b"
823 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 03:26:27.10 ] set a="c:\tmp\Aフォルダ" set list="c:\tmp\B-A_list.txt" call >%list% cd /d "c:\tmp\Bフォルダ" for /f "delims=" %%b in ('dir /a-d /b') do @if not exist %a:~0,-1%\%%b" >>%list% echo "%%~fb"
824 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 04:11:12.36 ] findstrは?
825 名前: 忍法帖【Lv=14,xxxPT】 mailto:sage [2012/03/10(土) 20:05:58.09 ] 質問です。よろしくお願いします。 バッチファイル(あひゃ.bat)を優先度低で実行させるために start /b /belownormal あひゃ.bat と書かれているcmdファイルを作成し、それを実行させているのですが、 あひゃ.batが終了してもDos窓が閉じません。 終了後に自動で閉じるようにするにはどうしたら良いのでしょうか?
826 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 20:10:47.82 ] start /b /belownormal cmd /c あひゃ.bat
827 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 20:31:41.10 ] あひゃ.bat に echo %cmdcmdline% を入れてみりゃ理由がわかる
828 名前:825 忍法帖【Lv=14,xxxPT】 mailto:sage [2012/03/10(土) 21:12:23.08 ] 早速のレス、感謝します。 >>826 サンの方法で見事にDos窓が自動で閉じました。 >>827 サンのとおりに実行したらなんとなく解ったような気がします。 cmd /k と cmd /c の違いですね。help startとかhelp cmdを読んでないのがバレバレ(;´∀`) なんとなく思い込みでstartコマンドの/bオプション(ウインドウを作成しない)を付けたのですが、 実はコレ無くても良かったみたいです。(じ、実は/bオプションの意味もよく解っていないっ!(∀`*ゞ) とにかく期待通りに動いたので満足です。 お二方ともありかとうございました。
829 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 21:13:49.52 ] batを起動しっぱなしにして タスクマネージャのタスク名に指定した名前(例えばメモ帳を立ち上げて「無題 - メモ帳」など)が出たら ログに書き込むというのはbatで出来ますか?
830 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 21:18:31.36 ] tasklist
831 名前:デフォルトの名無しさん mailto:sage [2012/03/10(土) 22:28:53.73 ] wmic process get name
832 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 14:15:58.30 ] >>808 WSHと組み合わせないと無理だったはず
833 名前:818 mailto:sage [2012/03/11(日) 23:14:37.36 ] >>821 そこまで本気なことをするには荷が重いものだと理解してます。 (できるかもしれないけど、数ヵ月or数年後の自分に理解ができない、と思うので)
834 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 00:12:38.31 ] >>808 clip.exeか類似ソフト使えば出来る
835 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 04:15:25.41 ] 内蔵のclip.exeじゃだめだけどな
836 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 06:41:41.28 ] スレタイ(ry
837 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 16:34:50.59 ] >>832 WSHったってIE使ったりして大変だろ? >>809 お勧めは?
838 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 17:24:09.19 ] >>837 > WSHったってIE使ったりして大変だろ? ならば>>809 のは全部同類だから「大変」だ
839 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 18:01:20.27 ] そうなのか? 簡単に書けるものってないのか?
840 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 18:50:35.07 ] powershellなら簡単よ
841 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 23:45:56.93 ] for /f "usebackq tokens=1,* delims=[]" %i in (`mshta "javascript:close(new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(clipboardData.getData('Text')));"^|find /v /n ""`) do @set "c[%i]=%j" これでどうだろう
842 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 02:24:40.37 ] まあまあやね
843 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 02:31:28.01 ] 及第点やね powershell版もできたら満点や