初心者〜管理者まで必読!コマンドライン(DOS Pt.3)

このエントリーをはてなブックマークに追加
1名無し~3.EXE
適材適所で GUI と CUI を組み合わせて、(゚д゚)ウマー

前スレ
1 http://pc.2ch.net/win/kako/1002/10023/1002392089.html
2 http://pc2.2ch.net/test/read.cgi/win/1013833995/

DOS由来コマンドだけでなく、Windows バージョンアップのたびに拡充されてきたコマンド、
wsh(cscript)、cygwin、Resource Kit、Support Tools、その他のフリーソフト等ふくめ
コマンドラインインタフェースに関するネタならなんでもOK。

質問も歓迎だけど、自分で調べて勉強する努力も忘れずに。
2名無し~3.EXE:03/09/06 00:37 ID:AoeNgB5E
ぐいぐいむらお
3名無し~3.EXE:03/09/06 03:49 ID:FgtBYFyQ
>>1
もう語りつくされた。このスレいらないよ。
4・><input TYPE=hidden NAME= value=:03/09/06 14:59 ID:g69rnmM7
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a http://a.a
5名無し~3.EXE:03/09/06 15:58 ID:aaUHgfxv
コマンドー
_..                ,,.-'ヽ  インターネット巡回ついでにお小遣いを稼ぎませんか。 
ヽ "゙ー-、、         / :  :!  『現金収入ホームページ』を無料でプレゼントします。 
 i 、 :. ヽヽ_,,.....、,,,....._;/ ,;'   ;,.!  
  i.,  ..;;;ヽ       ヾ ,,;_ , /   http://www.southernclub.net/members/ukikyosaru.html
  ヾ_:::,:'           -,ノ    
  ヾ;.   ,         , 、;,     @上記URLをクリックしてIDを取得して下さい。無料です。 
    ;;    ● , ... 、,●  ;:    Aメールであなた専用HPのURLが送られてくるのでPRしましょう。
    `;.       C)   ,; '     Bあとは待つだけでクリック数/紹介料/売上に応じたお金が貰えます。 
    ,;'     '.、 -‐-ノ ,;'、      
   ;'            ;: 高金利なサラ金に手を出す位なら・・・・・
    ;:            ';; 私はこれでここ数ヶ月毎月5〜10万稼いでいます。
6名無し~3.EXE:03/09/06 16:01 ID:P6ngXXaV
_..                ,,.-'ヽ  インターネット巡回ついでにウンコを稼ぎませんか。 
ヽ "゙ー-、、         / :  :!  『水洗トイレ』を無料でプレゼントします。 
 i 、 :. ヽヽ_,,.....、,,,....._;/ ,;'   ;,.!  
  i.,  ..;;;ヽ       ヾ ,,;_ , /   http://www.southernclub.net/members/ukikyosaru.html
  ヾ_:::,:'           -,ノ    
  ヾ;.   ,         , 、;,     @上記URLをクリックしてIDを取得して下さい。無料です。 
    ;;    ● , ... 、,●  ;:    Aメールであなた専用HPのウンコが送られてくるのでPRしましょう。
    `;.       C)   ,; '     Bあとは待つだけで駆け込み数/待機秒数/排便に応じたお金が貰えます。 
    ,;'     '.、 -‐-ノ ,;'、      
   ;'            ;: 田舎のボットンに手を出す位なら・・・・・
    ;:            ';; 私はこれでここ数ヶ月毎月5〜10万トン稼いでいます。
7名無し~3.EXE:03/09/07 01:44 ID:loAgnmmS
Win2kでも以外とDosコマンドって使うよな。

俺はipconfig と netstatが無くなったら生きていけん。
8名無し~3.EXE:03/09/07 01:49 ID:b0tXun5P
>>7
「DOS」コマンドってちょっと違和感。

format.com が 32bit なのもちょっと違和感。
9名無し~3.EXE:03/09/07 01:50 ID:I8i/XSz2
>>7
というよりDOSプロンプトがやっとまともになったのが2kだな
NTはコマンド補完はおろかコピペもできんかったし
バックスクロールできんという時点で終わってたし
コマンドラインツールというよりはただ単に古いゲームを動かすための
ツールだったからな
10名無し~3.EXE:03/09/07 02:14 ID:jh/KwiMl
>>9
なんか言ってることすべてへン
大いなる勘違いしてる気がするぞ
11名無し~3.EXE:03/09/07 02:51 ID:BS5AAMp5
>>9
そんな君に乾杯。
12名無し~3.EXE:03/09/07 03:53 ID:4avs3pzv
釣られてマジレス。
>NTはコマンド補完はおろか
できる。
>コピペもできんかったし
できる。
>バックスクロールできん
できる。
13名無し~3.EXE:03/09/07 06:12 ID:lYi6cCm3
DosでPATHを指定しているのですが、
path v:\; d:\m; d:\m\c d:\mona\system で
パラメータが多すぎますと出てしまうのですがどうしたらよいでしょうか?
14名無し~3.EXE:03/09/07 06:35 ID:jno+GTVP
>>13
セミコロンが抜けてるのかな?
15名無し~3.EXE:03/09/07 09:42 ID:dM/cg98p
>>13
path v:\;d:\m;d:\m\c;d:\mona\system
しませう。
16名無し~3.EXE:03/09/13 16:17 ID:zVU1H/eu
Word、Excel、PowerPointのドキュメントファイルをコマンドラインから
grepしたんだけど、いい方法ないでつか?
namazu使おうとも思ったけど、いちいちインデックス更新が面倒なんで。
17名無し~3.EXE:03/09/13 16:19 ID:zVU1H/eu
訂正
<grepしたんだけど
>grepしたいんだけど
18名無し~3.EXE:03/09/13 20:18 ID:gS45e92B
>>9
DOSプロンプト = ×
NTコマンドプロンプト = ○
19名無し~3.EXE:03/09/13 23:55 ID:08x9B6gy
>>18
NTコマンドプロンプト = ×
XPコマンドプロンプト = ○
20名無し~3.EXE:03/09/14 22:28 ID:KcNfhv5e
win2000のコマンドプロンプトのフォントを好きなものに変更したいんですけど。
MSゴシックとラスタしか選べないですよね。
フォントを追加させて認識させるにはどうすれば??
21名無し~3.EXE:03/09/14 23:02 ID:bmY8iMI/
>>19
NTコマンドプロンプトは別に間違いではないと思われますが
22名無し~3.EXE:03/09/14 23:03 ID:76FhsMiR
NTのはアイコンが
MS
DOS
これだからなぁ
23名無し~3.EXE:03/09/15 02:41 ID:BjuKNKN+
>>16
namazuでダメならkabayakiでどうよ。
と、言ってみるテスト。
どっちみちコマンドラインじゃないけど。w

対象ファイルがあまりコマンドライン向けじゃないから、
可能だとしても相当メンドそうな悪寒。

>>20
適当なtelnetdを起こして、teratermでlocalhostロゲイン。
プロンプトよりはマシなフォントが使えるとおもう。

#時々Linuxと間違えてls や df なんて打ってしまう自分がいるのでAC
2423:03/09/16 12:14 ID:HG0k4LTO
kabayaki、namazu共にコマンドラインで普通に検索できるのか・・
訂正age
2523:03/09/16 12:15 ID:HG0k4LTO
揚げるぞ(゜Д゜)ゴルァ!
26名無し~3.EXE:03/09/16 17:23 ID:lYyF9kQN
SUBSTの存在価値はけっこう高いと思うがどうよ。
XPとかだと、マイドキュメントに行くにも
C:\Docume~1\(ユーザ名)\MyDocu~1
と入れなきゃならないが、
SUBST (任意の空きドライブ名) C:\Docume~1\(ユーザ名)\MyDocu~1
を実行するだけでパスが短くなる。
27名無し~3.EXE:03/09/16 19:52 ID:yaAJLpPr
>>26
右クリックからコマンドプロンプトを呼び出せるようにしてはどうよ?
ってそんな話じゃねーな。
SUBSTが有用なのは同意
28名無し~3.EXE:03/09/16 22:17 ID:pr5+pnhL
質問なんですが、DOSのバッチを使って特定の拡張子のファイルのみ(dllファイル)
を一括コピーしたいのですが、どのように記述すればいいのでしょうか
xcopy・copyコマンドを使ってやってみようとしているのですが、どうも上手くいきません。
一つ一つ書いていくのは・・・100個近くあるので。。
29名無し~3.EXE:03/09/16 22:21 ID:msYOBd0v
*.dll
30名無し~3.EXE:03/09/16 22:23 ID:O+HCc/OW
>>28
copy *.dll [コピー先のフォルダ]
じゃだめ?
って、もちろんこれぐらいやってるよね、スマソ
31名無し~3.EXE:03/09/16 22:36 ID:cg2vjyRO
SUBSTってそんなに有用かな? 短いパスでアクセスできるようになることくらいしか大したメリットを思いつかないけど。
それだって、環境変数Pathを利用したり SET DeepPath1=C:\(中略)\ とか設定するとか、
同じような効果が得られる他の方法があるので、SUBSTを使う特別なメリットってない気がする。

コマンドプロンプト上からファイルをごみ箱に移すコマンドって、デフォルトでは用意されてないみたいだね。
ttp://www.ganaware.org/S/recycle/index.html こんな小物ツールを作る人がいるくらいだし。
それとも、RunDLL32 Shell32.dll,SHFileOperationAなんちゃらとかやれば実現できることなのかな?
RunDLL32の使い方もよく分からないけど。
32名無し~3.EXE:03/09/16 23:00 ID:pr5+pnhL
>>28.29
xcopy "コピー元*.dll" "コピー先" で出来ました!!

>って、もちろんこれぐらいやってるよね、スマソ
本当に未熟者でお恥ずかしい限りです。簡単に解決してしまいました。
即レス感謝します助かりました。どうもありがとうございました
3323:03/09/17 00:16 ID:Wqnu5YjU
cygwin使ってる人なら知ってると思うけど、自分のPC以外でcygwinのツールを使いたいときの手順。

1.使いたいツールを一箇所にまとめる。
2.objdump -p example.exe |grep dll で、必要なdllを調べる。
3. 1の場所にdllをコピー
kernel32.dllは不要
4. (゜Д゜)ウマー

犬鯖持ってるので、外出時にUSB FlashにSSHとかを入れて持ちあるいてまつ。
34名無し~3.EXE:03/09/17 16:35 ID:1BcJBvsm
>>16
BGREPとか。
35名無し~3.EXE:03/09/17 22:27 ID:EtvLKEaL
>>33
UNIX素人なんでそのコマンド初めて知った。便利だね。サンクスコ

そういえば、昔は右クリック>クイックビューアで見れたのに
いつのまにか無くなってる事に気がついた。
36名無し~3.EXE:03/09/24 12:24 ID:PTT4QsW5
コンソールプログラムへの値の渡し方について教えてください。

JPG Cleanerというjpgファイルの不要部分を削除するツールがありますが
これのコンソール版を利用し、フォルダ右クリックからSendToに送って
ディレクトリ以下のjpgファイルをクリーニングということができないかと思っています。

実行ファイルのショートカットを作成してsendtoフォルダに置いてみたのですがうまくいきません。
JPGCLN32.EXE [options] <filespec> [output_path]
という書式なのですが、ディレクトリパスを与えるだけではダメなようで
ファイルがないというエラーになります。

フォルダを選択してSendToのショートカットに送る場合に
その中のファイルを値として渡すというようなことはできるでしょうか?
JPGCLN32.EXE [options] <右クリックSendToから渡したフォルダ\*.jpg>
という形にしたいのです。
37名無し~3.EXE:03/09/24 14:09 ID:Xxf0fRGV
>フォルダを選択してSendToのショートカットに送る場合に
>その中のファイルを値として渡すというようなことはできるでしょうか?
ショートカットの場合、送られたファイル/フォルダのパスを引数としてコマンドを実行するだけみたいだから
ショートカットじゃ出来ないんじゃないかな。
バッチとかなら送られたファイル/フォルダのパスが%1に代入されるので
JPGCLN32.EXE "%1\*.jpg" とか for %%A in (%1\*.jpg) do start JPGCLN32.EXE "%%A" とかやれるけど。
38名無し~3.EXE:03/09/24 21:34 ID:PTT4QsW5
>>37
レスありがとうございます。やってみます。
39名無し~3.EXE:03/09/27 19:39 ID:mMSqs5Ne
時刻をログファイルに書き込みたく、検索したところ以下のような文を発見しました。

>簡単なのは
>echo:|time|find "現在" > log.txt
>ですが、「現在の時刻」という表示が不要で取り除きたい場合は、
>for /F "tokens=2" %%a in ('echo:^|time') echo %%a > log.txt
>とすれば、時刻の部分のみ取り出せるでしょう。

とありました。私は「現在の時刻」が不要なので
>for /F "tokens=2" %%a in ('echo:^|time') echo %%a > log.txt
とやってみましたが、

>C:\WINDOWS>for /F "tokens=2" %%a in ('echo:^|time') echo %%a > log.txt
>構文が違います.

と受け付けてくれません。

Win98です。どなたか助けてください。よろしくお願いします。
40名無し~3.EXE:03/09/27 20:15 ID:WvYl2cKm
>>39
XPでも買って来い
41名無し~3.EXE:03/09/27 20:17 ID:sDtLTLKs
for /F "tokens=2" %a in ('echo:^|time') do echo %a >log.txt
W2kでできた。バッチに記述するときは%%aとふたつ重ねる必要がある。
42名無し~3.EXE:03/09/27 20:25 ID:0M1YbfzL
「do」が足りなかっただけだね。
43名無し~3.EXE:03/09/27 20:30 ID:Dwkuql9Z
W98じゃできないんだな。
44名無し~3.EXE:03/09/27 20:30 ID:WvYl2cKm
>>41-42
Win98でも買って来い
45名無し~3.EXE:03/09/28 11:06 ID:xebFbuK4
>>39
検索されたページの作者です。確かに do が抜けておりました。スマソ。
しかし、あのページは 2000/XP向けのバッチファイルなので 95/98系では
動きません。(for文がショボイ)

で、同じページに 95/98向けの時刻取得方法を追記しますので見てください。


4639:03/09/28 19:22 ID:6827nMtz
>で、同じページに 95/98向けの時刻取得方法を追記しますので見てください

ありがとうございます。
それで見に行ったのですが、まだですよね?
検索で飛んだページからtopへ飛んでも9/27のカキコが最後っぽいので。

待ってますのでよろしくお願いします。
47名無し~3.EXE:03/09/28 20:56 ID:WTok6JJB
>>45
2000/XP向けなら
time /t
echo %time%
4845:03/09/29 23:52 ID:yaiP0wCJ
>>46
またまた、すみません。あわてて勘違いしてますた。
検索されたページは私が作者ではなく単にカキコしたものでした。
どこかで見たことのある文章だと。

95/98向けの時刻取得方法を追記したのは、私の管理するWebページです。
「バッチ 時刻」で Google ってもらうと追記したページが出てくると思います。
4939:03/09/30 15:04 ID:GbIgInBj
>>48
ありがとうございます。無事に動作しました。
「みなさんの感想をお聞かせください!!」とあったので
掲示板を探してみたのですがなさそうなのでこちらで失礼します。

興味深いサイトでした。これからもがんばってくださいね。
50名無し~3.EXE:03/10/05 13:22 ID:irEezDfF
保守
51名無し~3.EXE:03/10/05 22:39 ID:D4G7VTX2
ざっと調べてみたんですけど、
linuxのaliasみたいなのはやっぱり無いんですかね?
52名無し~3.EXE:03/10/06 05:54 ID:KIpY2w70
>>51
aliasがよく分かんないけど、doskeyは役立ちますか?
53名無し~3.EXE:03/10/06 07:27 ID:4J9P77lZ
nyacusとか別の
54名無し~3.EXE:03/10/06 23:29 ID:Wa+W84Mu
>>52
それでいけそうですね。ありがとうございます。
でも設定が保存されない・・・もう少し調べてみます。
55名無し~3.EXE:03/10/13 22:42 ID:11RQxhyw
すいません。教えて下さい。
"A.txt" というファイルの名前を
バッチの実行した日付けと時刻に変更する方法ってありますか?

例)A.txt → 20032241.txt

こんな感じです。
56名無し~3.EXE:03/10/13 22:44 ID:Vp91L7lx
%DATE:/=%
57名無し~3.EXE:03/10/13 23:00 ID:11RQxhyw
>>56
すごい!できました!
ありがとうございます。
58名無し~3.EXE:03/10/14 15:09 ID:/VY44lLL
すみません。教えてください。
XPが起動できなくなったので、再セットアップしようと思っています。
セットアップ前にファイルの移動をしたいのですが、ウィンドウズが全く
立ち上がらない状態なので、ファイル操作もできません。
DOSでファイルの移動をしようと思って、いろいろやったのですが、
肝心のフォルダ(MyDocuments)が見つけられないので、困ってい
ます。初心者なので知り合いに聞きながらですがもうお手上げと言わ
れてしまいました。どなたかお願いします。
59名無し~3.EXE:03/10/14 15:13 ID:m08idF1z
NTFS使ってたらもうダメ
NTFSって何?ってレベルだったら絶対無理
60名無し~3.EXE:03/10/14 16:20 ID:ulpbwnh0
>>59

58です。レスありがとうございます。
NTFSって何?状態なため、NTFSを使ってるかどうかも判断できません。
もうダメでしょうか?
61名無し~3.EXE:03/10/14 18:43 ID:UU1heCn8
>58
DOSが立ち上がると仮定する。
W2kだとマイドキュメントの場所は、
"C:\Documents and Settings\Administrator\My Documents"
なので、そこあたりを探してみると良い。
だめなら、フォーマットしないで再セットアップしてみそ。
62名無し~3.EXE:03/10/14 18:59 ID:8HM/mhP3
>>61

58です。レスありがとうございます。試してみます。
63名無し~3.EXE:03/10/14 21:11 ID:oX0RUVKY
スレ違いな回答だけど、再セットアップしなくても、セーフモードとか
回復コンソールとか前回正常起動時の構成とか、で復活可能かも。

ググってみるなり、それなりのスレで状況詳しく書いて相談してみれ。
64名無し~3.EXE:03/10/14 21:29 ID:FixWcbIi
>>63

58です。レスありがとうございます。
回復コンソールとやらを調べたので、試してみます。
(セーフモードはダメでした)
65名無し~3.EXE:03/10/14 21:38 ID:KEfjXKU7
>>64
もしデスクトップorタワー型のPCだったら
新しいHDDを買ってきてそれにXPをセットアップして
古いHDDのデータは消さずに2台目のHDDとして接続すれば
データを復旧できるんだけど。
ノートPCだったらHDDが1基しか積めないので少々めんどいね。

61氏の言われる通り
フォーマットせずに再セットアップするのが一番よさそう。
一歩間違えると全部消えてしまうので気をつけて。

スレ違いなのでsage
66名無し~3.EXE:03/10/15 01:11 ID:WMlrXGnK
67名無し~3.EXE:03/10/16 20:36 ID:3s24gyLn
微妙にスレ違いかもしれませんが、
質問させていただきます。
Windows98SEのインストールCDから
MS-DOSだけを抜き出すには、どのcabから
抽出すればいいのでしょうか?
68名無し~3.EXE:03/10/16 22:02 ID:cH468dnm
バイナリーデータの組み合わせなんですが、

copy /B a.gif+b.gif c.gif

で、a.gifとb.gifをc.gifにできますが、
今a1〜a100というファイルがあって、ひとつのファイルにしたいんですが、
やり方はあるでしょうか?あったら教えて下さい。
69名無し~3.EXE:03/10/16 22:11 ID:3Dmo9p/g
copy /b a1+a2+a3+a4+......+a100 a
for /l %a in (1,1,100) do copy /b a+a%a a

a にする場合ね
他にもあるんじゃない
70名無し~3.EXE:03/10/16 22:13 ID:3Dmo9p/g
あ、
copy /b a* output
でいいかもしんない。
71名無し~3.EXE:03/10/24 22:30 ID:UFpnACJe
質問なのですが、W2Kのコマンドプロンプト、Resource Kit、Support Toolsを使用してUNIXのtailコマンドの様に
特定のファイル(txt)の最後の行のみを取り出す方法はないのでしょうか?
(cygwinは使わないで)
72名無し~3.EXE:03/10/24 23:44 ID:IBlF1SH7
73名無し~3.EXE:03/10/25 00:15 ID:QxNV5UOt
>>71
Windows Server 2003のResource Kitには入ってるんだよね>tail
7471:03/10/25 11:32 ID:3s/j6FbH
レスありがとうございます。

>>72 

会社の共用PCでtailを使いたいのですが、会社の規定とやらで
簡単に新規のexeやDLL入れられないんですよ。

なので既に入っているリソキかsupporttoolを使ったバッチファイル作りたいのですが
難しいっぽいですね。


>>73
2003が導入されるのは2000のサポート期限が切れる直前らしいです 鬱
75名無し~3.EXE:03/10/25 11:56 ID:rW8mletX
>>71
for /f "delims=" %%i in (sample.txt) do set a=%%i
echo %a%

いまいちかな?
76名無し~3.EXE:03/10/25 17:06 ID:2WOIw6fD
CDドライブ(もしくはDVDドライブ)のドライブ名を取得するには
どのようにすればいいですか?

set CDROM=
%CDROM%\ABC\DEF\123.txt

このような感じにしたいんですが、
「set CDROM=ほにゃらら」のほにゃららの部分がわかりません。
どうかよろしくお願いします。
77名無し~3.EXE:03/10/25 17:13 ID:BjgHwRqw
コマンドラインからexplorer起動させた後に
コマンドラインからそのwindowを更新したいんですけどできますか?
78名無し~3.EXE:03/10/25 21:34 ID:QxNV5UOt
>>71
>>76
>>77
WSHなら出来るのかな?使える人カモーン
7976:03/10/26 09:05 ID:+8Ztl0i+
>>78
自分はこのバッチファイルを
Windows上でもリアルDOSモードでも使う必要があるんですが、
WSHというのはリアルDOSでも使える物なんでしょうか?
無知ですいません。
80名無し~3.EXE:03/10/26 09:40 ID:vnJNeEGC
8176:03/10/27 08:54 ID:6WXCFWJ6
>>80
ありがとうございます。
自分のやりたいことにぴったりっぽいです。
8276:03/10/27 10:57 ID:6WXCFWJ6
たびたびすいません。
紹介していただいたソフトを使わせていただきました。
リアルDOS上では問題はなかったのですが、
使用するWindowsが2000のため、うまく作動しませんでした。
ほかにも代わりになるようなものを探した結果、srcdrvというソフトがあったので
こちらを使ってもみましたが、やはり2000ではうまくいきませんでした。
こちらの説明不足で申し訳ないのですが、ほかの方法を教えていただけませんか?
83名無し~3.EXE:03/10/28 03:41 ID:pUZNWCiS
WindowsXP Homeです。
コマンドプロンプトを立ち上げたときのカレントディレクトはデフォルトで
C:\Documents and Settings\xxx\
のようになっていますが、立ち上げたときのカレントディレクトリをC:\に
変更するというのは可能でしょうか?
84名無し~3.EXE:03/10/28 04:45 ID:+jv3e865
>>83
「スタートメニュー」→「プログラム」→「アクセサリ」→「コマンドプロンプト」
から、等ショートカットから起動してるなら、ショートカットのプロパティで
「作業フォルダ」を変更

「ファイル名を指定して実行」から、等の場合は、親プロセスのexplorer.exeの
カレントフォルダ(通常は環境変数%USERPROFILE%)にしたがうので、あきらめて
起動方法を、上記のようにどっかのショートカットから起動するように変えるか、
コマンドプロンプト起動してから「cd \」汁。
85名無し~3.EXE:03/10/28 04:45 ID:ngUFwHum
>>83
ショートカットのプロパティを開いて作業フォルダをc:\に変更
86名無し~3.EXE:03/10/28 04:46 ID:ngUFwHum
こんな時間にケコーン(w
87名無し~3.EXE:03/10/28 04:49 ID:+jv3e865
ふつつかものですが♥
88名無し~3.EXE:03/10/28 05:29 ID:pUZNWCiS
>>84-87
おお、できました!ありがとうございました。
89名無し~3.EXE:03/10/28 22:24 ID:Yj3K7KqT
テキストファイルにかかれているコマンドを一行づつ実行したいんですけど、
dosコマンドで出来ないですかね?

例)以下の様に書かれたテキストファイルのコマンドを一行づつ
  実行し、dos窓に表示したい。
---------↓テキストファイルの内容↓---------------
ping 192.168.0.1
ping 192.168.0.2
ping 192.168.0.3
ping 192.168.0.4
ping 192.168.0.5
・・・
・・・
・・・
90名無し~3.EXE:03/10/28 22:28 ID:+jv3e865
テキストファイルのファイル名変更して
拡張子を「.bat」「.cmd」にすればOK。

。。。ネタにマジレスっぽいけど。
9189:03/10/28 22:40 ID:Yj3K7KqT
>>90
ネタじゃないっす。
さんきゅ。
92名無し~3.EXE:03/11/06 00:51 ID:N3+CHgOu
保守兼ねてカキコ。

日ごろコマンドプロンプトを根城に暮らしてる方、こんなのどう?

_ google.cmd ___________________________________________________________________

@start "" "http://www.google.co.jp/search?q=%*&num=100"
________________________________________________________________________________
93名無し~3.EXE:03/11/06 01:49 ID:Pkil+bhg
>92
いいね。
というか、プロンプト根城にしてなくても
"g"とか1文字ぐらいの名前のショートカット作って(最小化起動設定)パス通ったフォルダに入れときゃ
ファイル名を指定して実行で、「ブラウザ立ち上げ→検索バー移動→入力」の手順がかなり省ける。

コマンドライン用のツール使って(あればの話だけど)クリップボードのデータを検索ワードに送れるようにならないかな?
94名無し~3.EXE:03/11/06 21:23 ID:OBxfa4uA
win2kのインストールでCDROMブートができないのでdosから
しようと思ったのですが、CDにアクセスできません。
どなたか対策を御存じの方教えていただけませんか?

-症状-
・98の起動ディスクのDOSだとCDにアクセスできない。
・win2000の起動ディスクだとアクセスできるけど
 winnt.exeが実行できない。
ちなみにwin2kの起動ディスクは知人から借りたので
SPのバージョンが違いインストールできないのです。
95名無し~3.EXE:03/11/06 21:36 ID:YkeQFsHt
CDのドライバとMSCDEXが無いだけだったり


# ttp://homepage2.nifty.com/winfaq/w2k/setup.html#1433
9694:03/11/06 22:05 ID:OBxfa4uA
リンク先を拝見しましたが、実はその逆だったり・・・
起動ディスクの方がSPバージョンが上なのです。

98の起動ディスクなので(これも借り物ですが)MSCDEXは
確実にあります。あとはドライバかなあ。
97名無し~3.EXE:03/11/06 22:37 ID:JMuLf6Qj
>>94
CDがあるなら起動FD作れるだろが。割れか?
9894:03/11/07 00:22 ID:3N4SCwwG
CDがあってもアクセスできないので困っているわけです。

とりあえずドライバ関係を疑って調べてみようと思います。
99名無し~3.EXE:03/11/07 02:59 ID:61rf5TY/
どんなCD-ROMなんだ
ATAPIならOAKCDROM.SYSでたいていのはいけると思うが
100名無し~3.EXE:03/11/07 08:57 ID:vH/Amq03
>>92>>93
これ気に入った。
1文字だとさすがにアレなんでファイル名「gg.bat」にした。
gg +右クリック(貼り付け)+Enterでgoogle検索。便利だ。
101名無し~3.EXE:03/11/07 14:32 ID:bvMbgvRc
Win2000(SP4)を使ってます

短縮ファイル名の表示
短縮ファイル名の変更

をしたいんですがご存知の方いますか?
102名無し~3.EXE:03/11/07 19:39 ID:tcJWHmwW
>>101
表示だけなら
dir /-n
dir /x
command /c dir
10393:03/11/07 20:04 ID:cbU8/T3d
だめだなあ。

http://www.vector.co.jp/soft/dl/win95/util/se040007.html

http://www.ganaware.jp/S/cliputil/
を見つけたから、小一時間遊んでみたけど、クリップボードの内容がパラメータとして送れない。

クリップボード出力を変数にしてパラメータに送るとか
あらかじめhttp://www.google.co.jp/search?q=%*&num=100の*の部分に付け足してから
startとして実行するとか考えてはみたけどさっぱり。初心者にはツラい。

>>100さんみたいなやり方もあるけど、やっぱりこういうのは1挙動で動作させたいなあ。
うまくいけばショートカット作ってIEのリンクバーに置いても使えそうだし。
どなたかよい方法があったら教えて。
104名無し~3.EXE:03/11/07 20:38 ID:tcJWHmwW
>>103
スレ違いだがWSH(VBS)ならこんなもん

Set ie = WScript.CreateObject("InternetExplorer.Application")
ie.Navigate "about:blank"
ie.Navigate "http://www.google.co.jp/search?q=" _
& ie.document.parentWindow.clipboardData.getData("text")
ie.Visible= True
105名無し~3.EXE:03/11/07 20:44 ID:bvMbgvRc
>>102
ありがとうございます
106名無し~3.EXE:03/11/07 21:08 ID:hgU0/GpN
>>103
BATファイルに書き出してCALLすれば?
107名無し~3.EXE:03/11/08 02:33 ID:32h5KRgO
コンソールプログラムのオプションを調べようと思ってヘルプを表示すると
量が多くて画面がスクロールしてしまいます。
cdrecord -?|more
としてもだめでした。こういう場合に1画面ずつ表示させたり
テキストファイルに書き出したりする方法ってありますか?
108名無し~3.EXE:03/11/08 03:50 ID:D5xYxJXH
2>&1 で利くかも。
109107:03/11/08 05:50 ID:32h5KRgO
>>108
私にレスを頂いたのでしょうか?
ちょっと分かりませんでした。

2>とやるとエラーメッセージをリダイレクトするということのようですが
cdrecord -?2>help.txt
cdrecord -?>help.txt 2>&1
などとやってみましたがhelp.txtには出力されませんでした。

ちなみに、dir /?>help.txtとやるとhelp.txtに出力できるのですが
cdrecord -?>help.txtではだめでした。
これはコンソールプログラムの問題なのでしょうか?
110名無し~3.EXE:03/11/08 15:51 ID:h/qZcRjF
>>107
「?」と「|」のあいだに半角スペースが必要。しかしながらDOSコマンドではこれが
省略できるので混乱を招く。「?」と「>」のあいだも同じ。
111名無し~3.EXE:03/11/08 19:38 ID:UG98GbPB
>>103 こんな感じ?(動作未確認)
@echo off
for /F "delims=" %%a in ('cliputil -paste') do set arg=%%a
start "" "http://www.google.co.jp/search?q=%arg%&num=100"
112103:03/11/08 20:53 ID:q21N6VkG
>111
おお、バッチリ動作しました。
どうも具体的なforコマンドの使いかたがよくわからなかったんですけど、
やっぱりbat「プログラム」のレベルのものを作るには必須だなぁ。

勉強になりました!
113107:03/11/08 21:44 ID:32h5KRgO
>>110
レスありがとうございます。
しかし、スペースを入れて実行してもやはりダメでした。
114名無し~3.EXE:03/11/08 21:48 ID:22Vv2XxX
標準出力でもエラー出力でもなく、CONを開いてそれに出力してたらやっかいだな
115107:03/11/09 02:44 ID:prdl86OR
私の環境を書いてなかったのですが、OSがMeなので
標準エラー出力の取得はできないようです。
ttp://bbso1.nifty.com/nbbin/nb_wrentT_m/fpcu_bbso-001/wr_add=2066/wr_sq=02111202400504656325
USモードにして画面を50行にしても取得しきれなかったので
こういう場合98系ではDOSプロンプトだけでは対処しきれないのかもしれません。
一応ご報告まで。
116107:03/11/09 02:53 ID:prdl86OR
>>115
たびたびすみません。やはりいくつかそういうツールが公開されていました。
http://www.vector.co.jp/soft/win95/prog/se258121.html
rderr32でcdrecordのオプション(標準エラー出力)を取得することができました。
117名無し~3.EXE:03/11/15 20:36 ID:40XYELRt
すいません、javaで、コマンドプロンプトの画面をクリアーする
方法をどなたか教えていただけませんか?
118名無し~3.EXE:03/11/20 19:54 ID:6GlB6xfK
 ガイシュツ+板違いかもしれませんが、お教えください。

 Win2000を使っていますが、操作中にマウスポイントが頻繁に飛んでしまいます。
マウスを買い換えてみましたが、治りませんでした。これはPC本体の故障でしょうか。
あるいはOSのエラーなのでしょうか?よろしくお願いいたします。
119名無し~3.EXE:03/11/20 21:40 ID:vZfhdrwB
スレタイを見ろ馬鹿
120名無し~3.EXE:03/11/21 21:16 ID:MYM5EBbS
>>118がwindows板の数あるスレの中からなぜDOSスレに書き込んだのか。この意味を解するのはオレには一生かかっても無理だろう。
121名無し~3.EXE:03/11/21 22:55 ID:bdyHduw5
「初心者」以外の文字が理解できなかっただけだろ。
122名無し~3.EXE:03/11/29 16:56 ID:TyOpKxc/
保守
123名無し~3.EXE:03/11/29 19:23 ID:3wapARwA
XPでCHOICEを使うのは無理?
124名無し~3.EXE:03/11/29 20:56 ID:fpVrOyxN
>>123
使えるけど、入っていない。
125名無し~3.EXE:03/11/29 22:18 ID:3wapARwA
>>124
どうやったら使えるか教えてくれませんか?
CHOICEに似てるやつは検索したら見つかるんですけど・・・
126名無し~3.EXE:03/11/30 01:21 ID:k+xiuxeo
>>125
9xから取ってくる
127名無し~3.EXE:03/11/30 10:17 ID:PHv9pfqi
RUNAS コマンドで、パスワードを毎回入力しなくても良いようにすることって出来る?

スタートアップをバッチファイルで管理してるんだけど、
アドミン権限じゃないとまともに動作しないアプリがあって (DTemp) 、
それを自動で起動させたいというか、どうにかしたいんだけど。
128名無し~3.EXE:03/11/30 12:50 ID:z7hT+DSG
>>126
9x持ってない_| ̄|○|||
129名無し~3.EXE:03/11/30 12:55 ID:qG/6lZbO
IE-SPYADでぐぐれ
配布ファイルの中にCHOICE入ってる
130名無し~3.EXE:03/11/30 13:05 ID:bDxaSXv1
>>127
RUNASA
131名無し~3.EXE:03/11/30 13:07 ID:z7hT+DSG
>>129
ありがとうございます
ありがとうございます
ありがとうございます
ありがとうg
132名無し~3.EXE:03/11/30 13:41 ID:z7hT+DSG
choiceを使うとそれまでの内容が消えるのはどうにかなりませんか?
133名無し~3.EXE:03/11/30 14:12 ID:z7hT+DSG
自己解決しました・・・
exeの方を使えばいいんですね
134名無し~3.EXE:03/12/07 16:44 ID:Bn0p+sC7
年末あげ
135名無し~3.EXE:03/12/07 16:47 ID:t6ZcJghj
>>134
おいおいまだ7日だぜ?
136名無し~3.EXE:03/12/08 00:11 ID:pDWtGQ2N
自分のローカルで使ってるマシンの、あるディレクトリに存在するファイルを調べるのは、普通に
dir パス
でうまくいきますが
ネットワークでつながってる他のマシンの共有フォルダの中のファイルを調べるときは
dir コマンドで出来るのでしょうか?
137名無し~3.EXE:03/12/08 23:32 ID:pDWtGQ2N
hageage
138名無し~3.EXE:03/12/09 01:55 ID:yYuSb1CH
コマンドライン・ユーティリティーはWinに沢山隠れてます。
って、どんだけ隠れてるか知ってるのは鯖いじってるやつだけだろうなあ。
139名無し~3.EXE:03/12/09 02:02 ID:XBcD/bJl
tree c:\ /f > c:\tree.txt
140名無し~3.EXE:03/12/09 22:08 ID:mAcPl3kH
>>136
できるよ。
141名無し~3.EXE:03/12/09 22:31 ID:EJwxNVSC
>>138
C:\> attrib /s -h *.exe
142名無し~3.EXE:03/12/10 11:59 ID:Ye+qB4IW
コマンドライン勉強するために本を買いたいんですが、何かおすすめはあるでしょうか?
当方CUI初心者なために本で勉強したいのですが、できれば長く使えるしっかりした本が希望です。
143名無し~3.EXE:03/12/11 00:04 ID:MMy1AVy6
144名無し~3.EXE:03/12/11 01:09 ID:nrud7rjP
>>142
WindowsXPで大幅に追加されたコマンドが
全て網羅されている書籍を選択して下さい。
表紙に「XP対応」なんて書いてあっても
実際は内容が古い書籍が多いです。
具体的には REG や SCHTASKS などが
きちんと掲載されているものがよいです。

「〜大全」は分厚くて見やすいですが
内容が古くてムカつきました。金返せと。
145142:03/12/11 14:50 ID:N/wONeA5
ありがとうございます。
143さんの下のやつはUNIXと書いてありましたが、windowsのコマンドとは違うんですよね?
# 厨にてよく分らなくてごめんあさい。

144、参考になります。ちょっと本屋で調査してみます。
具体的なタイトルで何かいいのはあったでしょうか?もしあれば。
146144:03/12/12 02:34 ID:Tus0fZmH
>>145
仕事先に新しいコマンドが
きちんと載っているものがあるので
書名を調べてきますね
147142:03/12/12 04:27 ID:fjYZl7eO
>>146
あっ、わざわざお手数おかけしてしまって申訳ありません。
よろしく御願いします( ・∀・)つ旦~~
148144:03/12/13 18:42 ID:aTapCz+M
>>147
すみません、あまりにも忙しくて調べ損ねました。
忘れなければ月曜に調べます。

長く使える書籍を、との事でしたが、まずは
技術評論社のポケットリファレンスシリーズをお薦めします。
引きやすいので私の場合仕事中に一番使いますよ。

Windows2000/XP用
http://www.gihyo.co.jp/books/syoseki.php/4-7741-1674-2
Windows95/98/NT用 (Meもこちらに含まれる)
http://www.gihyo.co.jp/books/syoseki.php/4-7741-0636-4

今から覚えるのでしたら上の1冊だけで良いでしょう。
ただ、私もまだ実物を見てないので
全ての新しいコマンドが網羅されてるか確認してません。
どうせ近いうちに買うと思うので入手次第報告します。

下のはひょっとしたらもう絶版かも。時代遅れですからね。
149144:03/12/16 01:30 ID:KzybQVbF
仕事先のものは、翔泳社「DOS/コマンドプロンプト辞典」でした。
購入した者によるとポケットリファレンスとどちらが良いか迷って
結局こちらにしたそうです。一見して悪くない感じでした。

以上の2件と他の書籍を流し見てお好きな物をどうぞ。
150142:03/12/16 11:25 ID:Zaf7NOMn
キタ━━━━━━(゜∀゜)━━━━━━ !!!!!
ありがとうございます!今日は講義ないから本屋さんまで走ってきます。
お手数おかけしました、楽しく年末過してくださいー。
151名無し~3.EXE:03/12/22 02:07 ID:6C8uFMk3
半角→全角変換、逆の変換するフリーのプログラム
ありませんか?
フィルタコマンドとして使えるものきぼんです。
カタカナ半角→全角だけはnkf32でもできたんだけど、
こういう目的に特化したものあれば教えてください。
152名無し~3.EXE:03/12/24 15:28 ID:GhPaXLKy
>>151
SED、jgawk
フィルタにするには工夫が要るかも
153名無し~3.EXE:03/12/24 18:41 ID:9MInjTEg
%SystemRoot%\explorer.exe /n,/e,E:MUSIC
のような感じで検索を開くコマンドラインってないですか?
154名無し~3.EXE:04/01/02 23:52 ID:gWw0bZzm
>>153
聞いたこと無い。
*.fnd ファイルを利用して start しか無いのかなと。
155名無し~3.EXE:04/01/03 12:35 ID:lCp36fZy
Win XPのコマンドプロンプトで、内部コマンドでない自作のソフトなどを起動するときに、
引数として相対パスを渡してもフルパスに展開してくれないのですが、これは仕様ですか?
156名無し~3.EXE:04/01/03 12:37 ID:w6frJCBl
正常です
157名無し~3.EXE:04/01/03 12:44 ID:lCp36fZy
>>156
がちょ〜ん。アリガトウ(;´Д⊂)
158名無し~3.EXE:04/01/06 19:29 ID:lXGlW0Ep
A:\>シニス メテメセメチメト コケ
159名無し~3.EXE:04/01/10 02:04 ID:aa7Ek43L
ログオンスクリプトの質問はここでいいですか
といっても単なるバッチファイルですが。

ユーザの属しているグループやユーザネームで処理を変えたいのですが、
ユーザネームなら IF %USERNAME% とかでできますが、
グループの場合どうすればよいでしょうか。
160名無し~3.EXE:04/01/10 11:17 ID:WWpZLbXF
net user 位しか思いつかない
161名無し~3.EXE:04/01/10 13:46 ID:aa7Ek43L
162名無し~3.EXE:04/01/11 14:20 ID:SpDD1SGz
 
163名無し~3.EXE:04/01/11 14:21 ID:SpDD1SGz
DOSコマンドでyes/noを省略することは
/yや/nで可能ですが、
Enterを省略するにはどうしたらいいのでつか?
164名無し~3.EXE:04/01/11 14:34 ID:BM6f7R/E
>>163
リダイレクト
165163:04/01/11 16:02 ID:SpDD1SGz
>>164
リダイレクトしてもtimeとかはエンターを要求されました
当方初心者なのでもうちょっと詳しくお願いいたします
166名無し~3.EXE:04/01/11 16:06 ID:kjAAz7kH
echo. | time
167163:04/01/11 16:17 ID:SpDD1SGz
>>166
なるほど。
でも、>text.txtみたいにテキストに書き出すと
余計な情報まで書き出されちゃうのは回避できないのでしょうか
168名無し~3.EXE:04/01/11 17:15 ID:FhBPAUL2
echo . | time | find "現在の時刻"
169163:04/01/11 18:37 ID:SpDD1SGz
>>168
ありがとうございました。m(_._)m
こうゆうことを勉強できるページがあったら教えてください
170736:04/01/11 20:38 ID:SpDD1SGz
BATファイルから他のテキストファイルを読み込んで、
そのデータによって処理を変えたいです。
テキストファイルを読み込むのはfindstrでできましたが、
それをIFの比較対象にする方法がわかりません。

つまり、findstr "検索する単語" "検索されるファイル.txt"
で検索した結果の文字列をIFで使いたいのです。
171名無し~3.EXE:04/01/11 21:12 ID:bk2nzGVo
>>170
findstr つったらNT系だよね

for /F "delims=" %I in ('findstr "ぽん" ぱこ.txt') do if "%I"=="ぽん" echo ぴん
172170:04/01/11 22:09 ID:SpDD1SGz
>>171
ありがとうございます。
しかし、DOS窓から直接入力ではできましたが、BATからはできませんでした。
どうしてなんでしょうか。。
173名無し~3.EXE:04/01/11 22:10 ID:kjAAz7kH
for /?

〜略〜
バッチ プログラムで FOR コマンドを使用するときは、%変数の代わりに、
%%変数を使用してください。
〜略〜
174170:04/01/11 22:26 ID:SpDD1SGz
>>173
ありがとうございました。さすがです。
175名無し~3.EXE:04/01/12 15:39 ID:pQJ7xPdB
BASICでいうところのGOSUB RETURNみたいに、
GOTOある次の行に戻るみたいなコマンドってないのでしょうか
176名無し~3.EXE:04/01/12 15:48 ID:D4hwSiyk
>>175
NT系なら
CALL :ラベル 引数

詳しくはヘルプ読んで
177名無し~3.EXE:04/01/12 15:51 ID:nfMh4M/j
>>175
call

NTでなくても call %0 ほにゃらら ・・・ などと工夫すればなんとかなる
178名無し~3.EXE:04/01/12 18:38 ID:UDCYVURE
厨質問なのですがfdiskでフォーマットできましたっけ?
179名無し~3.EXE:04/01/12 19:18 ID:nfMh4M/j
>>178
フォーマットは format だろ。と厨レスしてみる。
180名無し~3.EXE:04/01/12 19:52 ID:+JQeArR1
fdiskは区画整理だけ
181名無し~3.EXE:04/01/12 19:56 ID:MGxx2OEY
PC-98だとformatが区画も担当という事実
182名無し~3.EXE:04/01/12 19:58 ID:pQJ7xPdB
ワイルドカードって文字比較IF "*abc"とかに使うにはどうしたらよいのでしょうか
183名無し~3.EXE:04/01/12 20:12 ID:R2JIDhKg
素直に JScript,Perl等を使う。
184名無し~3.EXE:04/01/12 20:15 ID:3ib/bEPk
>>181
実際にはhdformatが担当という事実
185名無し~3.EXE:04/01/13 21:29 ID:lhQ0XmlO
www.bootdisk.com/
↑って違法か?
186名無し~3.EXE:04/01/13 21:32 ID:G0zUWG9y
187名無し~3.EXE:04/01/15 00:04 ID:93JsKJPS
echo abc >>test.txt
echo def >>test.txt
ってやったときに改行されないでabcdefって出力するには
どうしたらいいのでしょうか
188名無し~3.EXE:04/01/15 01:19 ID:vzgIZN/Y
>>182
無理じゃね?
比較対象文字列をファイル名にして、テンポラリに吐いて、
del *abc させて%ERRORLEVEL%で判別するとか。
消せれば 0 マッチしなければ 1 が入る > ERRORLEVEL

似たような感じで for でマッチした物を変数に入れてみたりとか。

>>187
つか、echo できるなら変数に入れて連結してから吐けば?


NT系の拡張は知らんけど、何せバッチするならもちっと工夫するようにせんと何も出来んよ。
189187:04/01/15 19:41 ID:93JsKJPS
>>188
こうゆうたぐいのを連結するのはどうしたらいいんでしょうか
echo | time | find "現在の時刻"
190名無し~3.EXE:04/01/15 23:04 ID:IK43lkmJ
>>159
リソキのifmemberもしくは
net user %USERNAME%|find "グループ名"&&処理
>>163
「/y」「/n」が使えるかどうかはコマンド次第。
>>163>>170>>182>>175>>187
つーかおまいは何がしたいのか言うてみ?
実行時のシステム時刻で処理を分岐したい、とか?
191名無し~3.EXE:04/01/16 01:42 ID:EiUgHmxu
>>189
まいったな、command.com なら動くんだが cmd.exe じゃ動かんなぁ…。
代わりにこんなんどうよ?

echo %date%
echo %time%

つか酔っぱらっちゃてるから、考えるのメンド臭くてつまんない答えですまんね。
192ホシノルリ:04/01/20 09:00 ID:WAMSKdFU
NTFSだとしたらDOSでは無理だけど、
xpの起動ディスクMSにおいてあるよ。
そこから回復コンソールに行けるんでないかい?
無印xp版がまだあるかは不明だけどな。(´Д`)y-~~sp1版しかないかも

つか、質問('-')ノ
ふと思ったのだがregsvr32 hogehoge /u とdelsvr hogehogeでは何が違うのだろうか。(´Д`)わがんね
あと、9の人ではないが、キーボードからCtrl+Vでペーストするにはどうしたらいいか教えてくれまいか。
それともコマンドプロンプトはキーが違うのだろうか…
193名無し~3.EXE:04/01/20 12:21 ID:UYGlSJLb
>>192
誤爆でつか?
194ホシノルリ:04/01/20 16:44 ID:WAMSKdFU
DOS限定なのか…。(´Д`)y-~~すまん
195193:04/01/20 21:20 ID:2Aa4CABM
>>194
いや、限定じゃないけど。前半が誰に対するレスなのか理解できなかったので

delsvr は使ったこと無いけどサービスの登録解除
regsvr32 はOLEサーバの登録用コマンド。全然似ていないよ。

キーボードペストはいちおう
Alt+Space E P
196名無し~3.EXE:04/02/06 02:48 ID:8p+JI9bn
windowsXPです。
自分のモチベーションを上げるコマンドって何でしたっけ?
197名無し~3.EXE:04/02/06 16:32 ID:kFUBiA2y
>>196
エンター
198名無し~3.EXE:04/02/07 18:43 ID:o545zoee
最小化して起動のオプションとかってある?
199名無し~3.EXE:04/02/07 20:42 ID:E3Gv1rQ3
>>198
あるけど。
200名無し~3.EXE:04/02/07 21:08 ID:o545zoee
>>199
さすが。どうもありがとう。
201名無し~3.EXE:04/02/08 03:08 ID:oQ2Oyp/B
標準入力に改行なしの文字列を送り込むにはどうしたらいいだろう?
echoだと後ろに改行が付いてしまう。
202名無し~3.EXE:04/02/08 04:24 ID:qCgRqxTc
>>201
改行なしのテキストファイル流し込めば?
203名無し~3.EXE:04/02/08 05:36 ID:TjL5qYbq
20031229.txt
20031230.txt
20031231.txt
20040101.txt
20040102.txt
   ・
   ・
   ・
こんな感じであるフォルダに数多くあるファイルを全て1つにまとめたい場合って
どうすればいいですか?
copy 20031229.txt + 20031230.txt + ・・・
ではチョット数多すぎるので。
204名無し~3.EXE:04/02/08 05:53 ID:FqoshZrQ
copy *.txt nurupo.txt
205名無し~3.EXE:04/02/08 06:02 ID:TjL5qYbq
サンクス。
206名無し~3.EXE:04/02/08 06:35 ID:TjL5qYbq
>204で出来たnurupoって文字コード何?
なぜかダブルクリックで開くと化けてしまう。
207名無し~3.EXE:04/02/08 06:47 ID:FqoshZrQ
ジブンデガンガエロ
  ( ・∀・). | | ガッ
 と    ) | |
   Y /ノ 人
    / ) <  >__Λ∩
  _/し'  . V`Д´)/
 (_フ彡      /  ←>>206
208名無し~3.EXE:04/02/08 06:55 ID:TjL5qYbq
知らないなら別にいいよ>207
AAまで用意してくれてアリガト。
エディタ側で調節するわ。
209名無し~3.EXE:04/02/08 12:30 ID:FqoshZrQ
ンナモンcopyスルモトデータニイゾンシテルダケダロ
EUCナラEUC、S-JISナラS-JISニトウイツシロ
  ( ・∀・). | | ガッ
 と    ) | |
   Y /ノ 人
    / ) <  >__Λ∩
  _/し'  . V`Д´)/
 (_フ彡      /  ←>>208
210名無し~3.EXE:04/02/10 00:21 ID:e98JiZlC
Unicodeのファイル扱えるdiffありますか?
211名無し~3.EXE:04/02/14 00:01 ID:r5o3JrUK
コマンドプロンプトに
(*´Д`)ハァハァ
をコピーして貼り付けてENTER。

爆笑しますた
212名無し~3.EXE:04/02/14 00:41 ID:h6pC5q5V
わらた
213名無し~3.EXE:04/02/15 11:55 ID:5RqN/r+A
>>211
激しくワロタ
214名無し~3.EXE:04/02/15 14:57 ID:vs7tas2p
文字化けするんだけど、やるとどうなるの?
215名無し~3.EXE:04/02/15 15:23 ID:2c317MJZ
216名無し~3.EXE:04/02/19 01:47 ID:PuIBKsUa
ハードディスクが2つあり、片方のディスクでディスクの管理において右クリ
ックしてもメーカーの設計上パーティションの削除できないパーティションがあります。
そこでコマンドプロンプトのDISKPARTコマンドを利用したいのですがどのよう
に入力すれば良いのか解りません。

ディスク0のデータを消さずに、ディスク1だけをパーティションの削除をす
るにはどのように入力すればよいでしょうか?
誰かわかる方教えてください。

217名無し~3.EXE:04/02/19 02:33 ID:fMD7lcdp
>>216
メーカーの設計上削除できないならコマンドでも無理じゃないか?
ディスク1を外して別のPCに付けてOSのインストールディスクで
パーティションを削除するのが手っ取り早い。
そいつを元のPCに戻した時「メーカーの設計上の理由」とやらで
不都合が生じる事は十分考えられるけどね。

まーその前に

DISKPART /?

って入力してご覧。
218名無し~3.EXE:04/02/22 05:32 ID:lA7vpoaY
>>211をいろいろ変えて遊んでみたんだけど、
どうやら ( ) が特別な意味を持っているみたい。
これは一体何が起こっているの?
「間違っていない使い方」はどうやるんだろう。
219名無し~3.EXE:04/02/22 11:20 ID:EMXsN20J
>>218
説明してるページがあるんだけどURL忘れた・・・
220名無し~3.EXE:04/02/22 11:20 ID:wJpPXpOv
バッチファイルのifとかの条件分岐でひとくくりにするためのじゃ?
*nixのシェルスクリプトとかでもあるしさ
とりあえず()の外に何か書くとエラー

(echo A & echo B) & (echo C)

@echo off
if "%1" == "1" (
echo A
echo B
echo C ) else (
echo C
echo B
echo A )
221名無し~3.EXE:04/02/22 23:15 ID:zanTKF/y
>>220の書き込みをコマンド プロンプトに貼り付けたら
プロンプトが無くなったけど、
これは一体何が起こっているの?

PROMPT $P$G
やっても元に戻らないし
222名無し~3.EXE:04/02/23 00:12 ID:2WvkGf8U
echo on
223名無し~3.EXE:04/02/23 20:50 ID:QZhXaxME
netsh interface setの終了コードの種類と意味を教えてください。
ヘルプとサポートを見ても乗ってませんでした。終了コードの詳細はWin ResourceKitにあると載っています。
知ってらっしゃる方、Win ResourceKitを持ってらっしゃる方よろしくお願いいたします。
224名無し~3.EXE:04/02/23 21:34 ID:g7a4osyq
mountみたいなコマンドってある?
225名無し~3.EXE:04/02/23 21:38 ID:acpFqq98
>>224
join
226名無し~3.EXE:04/02/24 17:06 ID:FYeornfu
WindowsXPを使っています。
AUTOEXEC.BATが見当たらないのですが、どのようにすればPATHの設定ができるでしょうか?
PATHコマンドで行うとDOS窓を起動するたびに設定のやり直しになるので、AUTOEXEC.BATを
使ったのと同様のことがしたいです
227226:04/02/24 17:19 ID:FYeornfu
自己解決しますた
コントロールパネル→システム→詳細設定→環境変数
228名無し~3.EXE:04/02/25 19:12 ID:iqq36V5g
ファイル名を絶対に重複させないためにリネームをする際、
固有のファイル名+ファイル作成時の日時時間(秒まで)に
できないものかと。じぶんなりにしらべましたがギブアップです。
ご存知の方、教えて下さい。
229名無し~3.EXE:04/02/27 00:25 ID:n7fFr5ZT
>>223
わからん。
>>224
subst
>>228
for /f "tokens=1-3 delims=/ " %i in ('date /t') do for /f "tokens=2-4 delims=:. " %l in (' echo.^|time') do rename ファイル名 固有のファイル名.%i%j%k%l%m%n
230228:04/02/27 01:59 ID:RkgmCg//
>>229さん、
ディレクトリにファイルを入れてバッチファイルを実行してみたのですが、
うまくいきません。
何か引数とかを入力してやる必要があるのでしょうか。
なにぶん書かれている文字列の意味がさっぱりなもので、お手数ですが使い方を教えていただけないでしょうか。
済みません。
231名無し~3.EXE:04/02/27 04:46 ID:oGvAUHCG
>>230
>>229は現在の時刻を付加するものであって作成日時を付加するのではない
バッチにしたいなら%を%%にする必要がある

作成日時は分までなら dir /tc で出るけど、秒まで出す標準コマンドは知らん
232名無し~3.EXE:04/02/29 12:37 ID:NC8iwynQ
工エエェェ(´д`)ェェエエ工
233名無し~3.EXE:04/03/01 16:36 ID:3SXdT96M
リネームツールなら腐るほどあるし
OS標準にこだわるならWSHでも使えばいい。
234名無し~3.EXE:04/03/02 14:54 ID:LGTVN3Q/
上げるぞ( ゚Д゚)ゴルァ
235名無し~3.EXE:04/03/02 17:17 ID:ixi3whIw
nurupo
236名無し~3.EXE:04/03/02 17:27 ID:J9yboR5v

   ∧_∧
   ( ・∀・)
 (( ( ヽ ノ )
   ノ\(○´  ゴッ
  (_ノ(_\    ∧
     = ()二) <  >_∧∩
            V`Д´)/ ←>>235
                 /
237名無し~3.EXE:04/03/02 18:19 ID:znnUbq6d
バッチファイルって普通複数行にするけど、一行に出来ないの?
改行を示す記号とかある?
238名無し~3.EXE:04/03/02 19:27 ID:CiknxfXV
\n
rupo
239名無し~3.EXE:04/03/02 19:28 ID:cl6WKyXV
>>237
&とか&&とか||でいいんじゃない?
240名無し~3.EXE:04/03/08 20:29 ID:HvEUX9mm
同じ階層構造をしたディレクトリがずらっと並んでいるとします。
そのサブディレクトリの構造を変えたり、名前を変えたりするのって
バッチファイルでどうしたらいいでしょうか(当然全部同じに)。
ヒントお願いします。
いや、恥ずかしながら、今回は手作業で済ませました、
なさけない。
241名無し~3.EXE:04/03/08 21:13 ID:88R7xOt6
>>240
何がしたいのかまったく理解できんが

とりあえず、 for
242240:04/03/12 01:34 ID:FMdbh2Jx
>241
ありがとうございました。ようやく意味がわかってきました。
もう少し時間をかけたらなんとかなりそうです。
いや、おもしろいなと。
243名無し~3.EXE:04/03/13 22:31 ID:0tB8RljJ
DIRコマンドでワイルドカードの対象になるのは
ファイルだけですが、ディレクトリに対しておなじことを
やるっていうのは何か方法がありますか。
あったら教えて下さい。
244名無し~3.EXE:04/03/13 23:59 ID:Q9nDJyol
>243
dir /ad (ワイルドカード)
245243:04/03/14 00:12 ID:KPu9D3gP
>244
ありがとうございました。
コマンドプロンプトのヘルプにもなかったものが
ちゃんとあったとは、、、
246名無し~3.EXE:04/03/14 10:19 ID:VKYRhW19
コマンドラインでショートカットを作る方法ありませんか?
ありそうでなさそうだけれど、あったら便利だと思う。
247名無し~3.EXE:04/03/14 16:32 ID:Ns0gDKH9
248名無しさん@Vim%Chalice:04/03/14 16:40 ID:VKYRhW19
Windows 標準のコマンドでいけませんか?

あれから調べてますが *.exe コマンドでいけそうにないので、
WSH 方面を勉強してきます。
249名無し~3.EXE:04/03/14 17:39 ID:2Xa2jGsV
下記のようなデータファイルがあります。
hoge.dat--------------
aaaaa
bbbbb
ccccc
ddddd
eeeee
fffffff
終わり---------

こいつを
aaaaabbbbb
cccccddddd
eeeeeffffff
のように、一行目と二行目、三行目と四行目、、、(以下延々と続く)
を結合させて別のデータファイルに変換することってバッチで
できるでしょうか。

WinXPでつ。

いろいろ考えたけどできないのでExcelのVBAで処理したの
ですが、バッチファイルでできないかと思ってます。
話は変わりますが、WSHでvbsなりjsなりでスクリプト作っても
ファイルの読み書きでウイルス検知に引っかかってしまうん
ですよね。自分で使う分にはいいのですが、会社で人に使って
もらう際にこれ困ります。
それでDOSバッチファイルも覚えたいなと、、、
250名無し~3.EXE:04/03/14 17:54 ID:+hCgXvl3
@echo off
for /f %%I in (hoge.dat) do call :SUB %%I
goto :EOF
:SUB
if "%A%"=="" set A=%1&& goto :EOF
echo %A%%1
set A=
251名無し~3.EXE:04/03/14 18:16 ID:2Xa2jGsV
>>250
おお!なんだかまだ分かりませんができますね!
これをファイルに保存するには、したから二行目を
@echo %A%%1 >> hogehoge.dat
とすればいいんですね!

しっかし、hoge.datが9570行あるテストデータで試したら、
結構時間かかりますね (汗
いったん変数に読み込んで一気に書き込みっつうのはさすがに
バッチでは無理ですよね。
252240:04/03/14 19:48 ID:KPu9D3gP
247のソフトに関連してなんですが、
D:\abcdef>for / %A in (*abc*.*) do "C:\Program Files\mkshc_at\mkshc_at.exe"
-folder "d:\test\" "%A"とやるとエラーになるんで、しょうがなく
D:\abcdef>for / %A in (*abc*.*) do "C:\Program Files\mkshc_at\mkshc_at.exe"
-folder "d:\test\" "d:\abcdef\%A"とするとうまくいきます。
でも、なんだかいんちきっぽくて。最後の%Aをフルパスにする方法って
ありますか。あったら教えて下さい。
253名無し~3.EXE:04/03/14 19:54 ID:3hGvLnKD
%~fA
254240:04/03/14 23:56 ID:KPu9D3gP
>253さん
ありがとうございます。
ぽちぽち使えるようになったレベルですので、
またご面倒をかけると思いますが、
そのときはよろしくお願いします。
255240:04/03/15 19:13 ID:1+dOtn2Z
複数のサブディレクトリ内ファイルに対し、
タイムスタンプで対象を絞って
アプリケーションで実行を行うことは可能でしょうか。
可能でしたら、またヒントなどいただければ幸いです。
256名無し~3.EXE:04/03/16 00:11 ID:P7CWkxLZ
教えてください。

任意の容量のサブフォルダを持つ例えば100GBのフォルダがあって
その中身をタイムスタンプ順に4Gづつ新規に作成されたフォルダに
コピーしていくということはコマンドプロンプトだけで可能なのですか?

DVD-Rにバックアップとるための分割がしたいんですよ。
257名無し~3.EXE:04/03/16 00:49 ID:EAbdr1bh
>>255
タイムスタンプを取得して、ifで比較して対象を絞ればいい

>>256
FOR /F "usebackq delims=" %i IN (`dir/a-d/b/od`) DO コマンド
258256:04/03/16 01:44 ID:18RNae7d
>>257さん

全然わかりません。
dir/a-d/b/odでリスト抽出?
で取り出してループ???
259名無し~3.EXE:04/03/16 03:18 ID:EAbdr1bh
>>258
そこまでわかれば自分で書けると思うんだけどな

更新日順に1,2,3,...フォルダに移動するバッチ
--------------
FOR /F "usebackq delims=" %%i IN (`dir/a-d/b/od`) DO call :移動 "%%i"
goto :eof
:移動
set/a 移動=移動+1
md %移動%
move %1 %移動%
goto :eof
--------------
260名無し~3.EXE:04/03/16 05:20 ID:Nfe2P7zn
使ったこと無いけどforfilesが向いてそうだ、と無責任に言ってみる。
261名無し~3.EXE:04/03/16 20:55 ID:x8q5bhVT
CDを実行して得られたカレントディレクトリを
環境変数にするにはどうしたらいいんでしょうか。
とんでもなく基本的な質問のようで恐縮です。
262名無し~3.EXE:04/03/16 21:01 ID:2c+HFmAA
2000/XPなら
%CD%で取得できる
263261:04/03/16 21:27 ID:x8q5bhVT
>262
調べたつもりでしたがお恥ずかしい。
ありがとうございます。
264名無し~3.EXE:04/03/17 18:55 ID:opR7CZkC
FORコマンドの IN (*.*)のカッコ内の部分、
条件を複数にするって可能でしょうか。Aからはじまるものと
BからはじまるものとCからはじまるものと、、、
みたいな感じで好きな条件を連続して実行させる。
265名無し~3.EXE:04/03/17 19:36 ID:aiSa3E/N
>>264
(A* B* C*)で出来る。というかそれくらい自分で確認しろ
266264:04/03/17 21:45 ID:opR7CZkC
>265さん
ありがとうございました。
それとおっしゃる通りで、いまFORのHELPみて
赤面しております。以後気をつけます。
267名無し~3.EXE:04/03/18 16:34 ID:DkL687c2
プロクシを変更するコマンドってありますか
268255:04/03/18 23:42 ID:XeOBUQXz
>257さん
dir/ad/od
まではわかりました(だとおもうのだけど)。
IFで比較して、というあたりのヒントを
教えて下さい。
269名無し~3.EXE:04/03/19 00:36 ID:UGGcCxEk
>>268
dir使うと面倒そうだったので、%~tを使用したので対象は更新日時のみ
後はifの行を適当に変えて実行すればいい
--------------
@echo off
if "%1"=="" echo 指定した時刻(YYMMDDhhmm)以降に更新したファイル(サブディレクトリ内のファイルも含む)を列挙&goto:eof
FOR /R %%i in (*) do call :処理 "%%i" %1
goto :eof
:処理
set 更新=%~t1
set 時刻=%更新:~0,2%%更新:~3,2%%更新:~6,2%%更新:~9,2%%更新:~12,2%
if %2 LEQ %時刻% echo %1
goto :eof
--------------
270255:04/03/19 00:44 ID:RpQ6IyaT
>269さん
ありがとうございます。
さっそく意味を解析します。
>ALL
このスレのおかげでずいぶんコマンドが使えるようになりました。
ファイラの外部コマンドに押し込んだら、
なんでもできちゃうみたいな感じです。
271名無し~3.EXE:04/03/19 02:28 ID:8peQtZMG
>267
XPならnetsh > diag で色々出来そう。
272名無し~3.EXE:04/03/19 14:32 ID:12S6K2op
>>271
> >267
> XPならnetsh > diag で色々出来そう。

なるほど、今のところは、show ieproxyで設定をみることしかわかりませんが、
調べてみます。
batファイルを作れば、一発で設定できそうですね。便利だ。
273名無し~3.EXE:04/03/19 22:46 ID:RpQ6IyaT
set oi=%1
for /r %2 /d %%A in (%3) do call :zbid %%A
:zbid
cd %3
move %3\*.* %oi%

こんなバッチファイルで
%2内のサブディレクトリ%3から
ディレクトリ%1にファイルを移動させようとしています。
大体希望通り動いているんですが、最後にこちらの意図しない動作をします。
動けばOKの我流も不安です。先生方にはかんたん過ぎで恐縮ですが、
どなたかに模範解答をお願いします。
274名無し~3.EXE:04/03/19 23:07 ID:PwKVe2WJ
goto :eof
275273:04/03/20 00:38 ID:8BkBnqRj
>274さん
よく考えてみたらCALLは不要でした。
でも後学のために教えて下さい。
goto :eof は一番最後に書く、でいいのか。
それと、これの有無で処理はどう違ってくるのか。
%3のディレクトリがなくなった時点で処理が終わって問題なしって
思えて仕方ないのです。
276名無し~3.EXE:04/03/20 01:16 ID:+OLMextG
>>275
forと:zdidの間にgoto :eofを書かないと、
forが終了した後:zdid以降の行に処理が移る
277273:04/03/20 08:47 ID:8BkBnqRj
>276さん
ありがとうございます。いわれてみればもっともで、
自分の思考の非論理性におどろきます。
278名無し~3.EXE:04/03/20 11:03 ID:261uK1eU
doの後に&&で繋げて一行にしてしまう俺
279273:04/03/20 15:47 ID:8BkBnqRj
>268さん
教えて下さい。
%1は0001010000(2000年1月1日0時0分)といった書式で入力するのですか。
%2は入力はどのように入力するのでしょうか。
>set 時刻=%更新:~0,2%%更新:~3,2%%更新:~6,2%%更新:~9,2%%更新:~12,2%
この疑問はこの1行がわからないからですね。
お手間とらせて済みません。
280名無し~3.EXE:04/03/20 18:51 ID:8VApP0dW
set /?
for /?
goto /?

全部読んでから聞けよ。
281273:04/03/21 00:16 ID:Iu0kQJeY
>280さん
失礼しました。さっそくすべて打ち出して読みました。
%1が対象となるディレクトリで%2が時間であることまではわかりました。
更新=2004 03 20 15:25から時刻=204 3 0 5:をとりだしているのも
わかりました。ただ、この204 3 0 5:が何を意味しているかは
調べましたがわかりません。したがって実行することは依然できずにいます。
どうしたらよいでしょうか。
282名無し~3.EXE:04/03/21 01:23 ID:yT7EbVOD
>>281
更新=04/03/20 15:25から時刻=0403201525
を取り出してるはずなんだが、環境が違うと%~t1の値も変わるのか?
283名無し~3.EXE:04/03/21 02:07 ID:6x8Ap2/r
いかりや長介さんを生き返らせるコマンドを教えてくれ
284273:04/03/21 02:20 ID:Iu0kQJeY
>282さん
SETコマンドを実行すると
時刻=204 3 1 1:
更新=2004 03 21 01:25
と表示されます。
当方の環境はXP[Version 5.1.2600]です。
285名無し~3.EXE:04/03/21 02:26 ID:aQ95izCx
>>283
dameda /korya /tugiittemiyou
286名無し~3.EXE:04/03/21 02:58 ID:yT7EbVOD
>>284
だったら+2しろ。どことか聞くなよ
287名無し~3.EXE:04/03/21 11:58 ID:KQUcLfTA
>>283
UNFORMAT
288273:04/03/21 15:18 ID:Iu0kQJeY
>286さん
使えるようになりました。ありがとうございました。
ご面倒をおかけしました。
289名無し~3.EXE:04/03/21 16:11 ID:97Tzj4KY
scコマンドでサービスの設定ができることが分かったのですが、
これを用いてサービスの再起動をすることはできるのでしょうか?
それを満たすコマンドが見つかりません。

利用用途は、休止状態から回復したときにmessengerサービスを回復させることです。
休止状態に入ったあとは機能しないままになっているようなので。
290名無し~3.EXE:04/03/21 23:32 ID:5rU6WtWm
net help start
net help stop
291289:04/03/22 00:47 ID:a1YCW8nc
sc でもヘルプをかけてみたのですが、
やはり当該のコマンドはないようでした。
残念。
292名無し~3.EXE:04/03/23 01:00 ID:0fIihC18
>>291
290はスルーでつか。
293289:04/03/23 01:30 ID:gPvU+vs5
>>292
それも試してみたのですが、表示どおりにMOREをすると
何故かひたすら空白が表示されてしまいました。

これはうちの環境がおかしいのでしょうか。
cygwin入れてるせいなのかな。

でも結局今のところは再起動のコマンドが分かりませんが、
もう一度調べてみます、ちょっと本屋でレファレンスも立ち読みしてみます。
294名無し~3.EXE:04/03/23 02:49 ID:itq5Mi8H
%WinDir%\Help\ntcmds.chm
にコマンドラインリファレンスがあるからそれ見てみたら。
295名無し~3.EXE:04/03/23 13:50 ID:PX1xBzRP
こんなことってバッチファイルで実行できますか?

OS/win2000server

「特定のフォルダの中を見て、存在するフォルダ・ファイルのうち、
更新日付が前日以前のファイル・フォルダを全てデリート。」

バッチファイルよく分からんのです。。。。。。(涙)
296名無し~3.EXE:04/03/23 19:40 ID:wMq5tf6J
先日こちらで教えていただいたバッチをいじって次のようなものを
作ったのですが、タイムスタンプの取得で引っかかっております。
%%Aにしてもダメでした。どうしたらよいのでしょうか

FOR /r d:\abcdef /d %%i in (*.gz) do call :処理 %%i
goto :eof
:処理
cd %1
for %%A in (*.*) do call :処理2 %%A
cd..
:処理2
set 更新=%~tA
set 時刻=%更新:~0,4%%更新:~5,2%%更新:~8,2%%更新:~11,2%%更新:~14,2%
hoge.exe" "%%~nxA" "d:\hoge\%時刻%.%%~nA.hlk%%~xA"
goto :eof
297名無し~3.EXE:04/03/24 01:02 ID:iK46P10D
>>295
できる。>>269を参考に

>>296
:処理2では、%Aでなく%1になる
298292:04/03/24 01:17 ID:Ae6JZti5
>>293
ひたすら空白?
まさか最後の1行だけ見て
 MORE
とか打ってないだろうね…

 NET START "Messenger"
で良い筈なんだが。
299295:04/03/24 15:12 ID:AIzwEWWm
先日質問しまして、自力でここまでやってみました。

<目標>
「特定のフォルダの中を見て、存在するフォルダ・ファイルのうち、
更新日付が前日以前のファイル・フォルダを全てデリート。」

<実績>
for /r d:\foo\test\AA001 /d %%A in (*) do call :処理 %%A

:処理
set TF日付=%~t1
set R日付=%TF日付:~0,2%%TF日付:~3,2%%TF日付:~6,2%

set TN日付=%DATE%
set N日付=%TN日付:~4,2%%TN日付:~7,2%%TN日付:~10,2%

if %R日付% == %N日付% rmdir /s /q %1

<再質問>
「特定のフォルダを見る」場合、実は特定のフォルダは複数あって、
「AA001」〜「AA999」までのフォルダをfor分でうまい具体に
ループさせてそれぞれのフォルダに移動していくことって
できますか?
300296:04/03/24 21:59 ID:ATf1wPtD
%1でタイムスタンプを取得するところまではうまくいったのですが、
その次がうまくいきません。
for %%A in (*.*) do call :処理2 %%A
の%%Aは意図通りなのですが、
hoge.exe" "%%~nxA" "d:\hoge\%時刻%.%%~nA.hlk%%~xA"
の%%Aがちがうようなのです。
ここでもまた別の変数を使う必要があるのでしょうか。
301名無し~3.EXE:04/03/24 22:14 ID:d///61wK
>>300
call /? を熟読した上で
>>297 さんの書き込みをもう一度読みましょう
302296:04/03/24 22:36 ID:ATf1wPtD
>297さん
>301さん
無事動きました。%%AはCALLコマンドの中では%%1になる、、、
いまひとつずさんな理解で不安なのですが。
ありがとうございました。
303名無し~3.EXE:04/03/25 01:53 ID:KC5MvHdV
>>302
%%A は for コマンドで結果セットを受け取るために指定したパラメータ。
例えば
 for %%A in (*.*) do echo %%A
という記述は、*.* というワイルドカードにマッチするファイルを探し出し、
1ファイル毎に echo %%A というコマンドを実行する。
但し%%Aはパラメータとして指定されているので、ファイル名に置き換わる。
ちなみに%%Aはそれを指定したfor コマンドの外では使えない。
要するに↓のような使い方は間違い。
 for %%A in (*.*) do コマンド
 echo %%A

%1 はバッチファイルに渡された引数と置換されるパラメータ。
例えば
 hoge.bat moge
と入力した場合、バッチファイル moge.bat の中に記述されている %1 は、
moge に置き換わって実行される。(例えば echo %1 は echo moge として実行される)
304名無し~3.EXE:04/03/25 01:55 ID:r6xyrVEC
多数のサブディレクトリ内のファイルから
ファイル名の中にあるスペースを取り除こうとしています。
FOR変数%~nIを使ってファイル名を取得しようとしていますが、
スペース以降が取り出せません。
どうしたらよいでしょう。
305名無し~3.EXE:04/03/25 03:01 ID:XODLQYLz
>>304
コマンドを書かんとどこが間違ってるのかわからん
まぁただの""の付け忘れだと思うが
306名無し~3.EXE:04/03/25 03:18 ID:GhFDt8Wv
初心者だが、コマンドプロンプトで出来る事って本当に沢山ありますね。
本買ってきて夕方からずっとコマンド打ちっぱなしだったよ。
DOSあればだいたい事足りると思った。

基本的ファイル操作はGUIのほうが楽だけど、個人的にネットワーク関連はやっぱCUIが
便利ですね。
コマンド一発で操れるOS気に入りました。
307名無し~3.EXE:04/03/25 03:26 ID:GhFDt8Wv
システム環境変数 %COMSPEC% ←この意味取り間違えて居りました w

ほぉ、試しにこのパソコンのスペックを・・・  あれ?
308名無し~3.EXE:04/03/25 06:27 ID:r6xyrVEC
>304さん
for /r /d %%A in (*.gz) do call :処理 %%A
goto :eof
:処理
cd %1
for %%B in (*) do call :処理2 %%B
cd..
goto :eof
:処理2
set 名前="%~1"
set 改名=%名前:~0,-4%
rename "%1" "%改名%"%~x1
です。
やりたいのは
名前が.gzで終わるディレクトリの名前には手を付けず、
その中にあるファイルのファイル名の特定の文字列
(今回は半角スペース)を除去したいのです。
拡張子を含むファイル名のうしろから4文字をとりのぞき、
そこに再度拡張子をつける、ということをやりたいのです。
309名無し~3.EXE:04/03/25 06:29 ID:r6xyrVEC
>303さん
ありがとうございます。
310名無し~3.EXE:04/03/29 05:01 ID:zMb9Gb9V
310 名前:名無し~3.EXE[sage] 投稿日:04/03/25(木) 09:29 ID:XODLQYLz
>>308
callの引数に、""を付け忘れている。:処理2にも飛べない

半角スペースを取り除くのは
set 改名=%名前: =%
半角スペースを取り除きたいのか、後ろの4文字を取り除きたいのかどっちなんだ?
-----------------
for /r /d %%A in (*.gz) do call :処理 %%A
goto 処理1.5
:処理
cd %*
goto :eof
:処理1.5
for %%B in (*) do call :処理2 "%%B"
cd..
goto :eof
:処理2
set 名前="%~1"
set 改名=%名前:~0,-4%
rename "%1" "%改名%"%~x1
311名無し~3.EXE:04/03/29 05:01 ID:zMb9Gb9V
311 名前:名無し~3.EXE[sage] 投稿日:04/03/25(木) 18:23 ID:r6xyrVEC
>310さん
ようやくやりたいこと
(スペースの除去、拡張子前にダブっていた.の除去)
はできました。
手作業では絶対にどうしようもない世界なもので、
ホッとしております。
お導きありがとうございました。
312名無し~3.EXE:04/03/29 12:44 ID:TFu9XnG3
312 名前:名無し~3.EXE sage 投稿日:04/03/25 18:29 ID:r6xyrVEC
バッチファイルの処理が完了した(と思われる)状態で
DOSプロンプト画面がかたまって
終了してくれないっていうのは
バッチファイルの書き方に問題があるのでしょうか。
作業の内容にもよるのでしょうか。

313 名前:名無し~3.EXE sage 投稿日:04/03/25 19:34 ID:r6xyrVEC
>312
わかりました。
面倒な処理を地の底までもやらせてしまっていたから、、、
だと思います。正常に働き出しました。
313名無し~3.EXE:04/03/30 00:47 ID:kImIDpKF
>>310-312
補完乙&レス版補正
314名無し~3.EXE:04/03/30 23:25 ID:Ot9thJ0g
%date:/=%
を打つと、winXPだと「20040330」になるのだが、
Win2000だと「火20040330」になってしまいます。

「火」はどうやったら取り外せますか?
315名無し~3.EXE:04/03/31 00:26 ID:x6g911mj
手元でやると半角スペースが入るんだけど。> 曜日と日付

for %1 in (%date:/=%) do echo %1 | findstr /R [0-9]*

もっと良い方法もありそうだけど。
316名無し~3.EXE:04/03/31 00:34 ID:x6g911mj
あ、
set tmpDate=%date:~2,10%
set trueDate=%tmpDate:/=%
echo %trueDate%
317名無し~3.EXE:04/03/31 00:37 ID:oMnkXefL
>>315
へぇ〜〜
forの変数って数字も使えたんだ。知らんかったよ。
318名無し~3.EXE:04/03/31 00:45 ID:GHHJA0nh
フィールド数を指折り数えたあの日々とサヨナラ
319名無し~3.EXE:04/04/01 23:19 ID:Qim/y5ge
バッチファイルの引数によって
処理の条件分岐をさせるのは可能でしょうか。
具体的には
引数にワイルドが含まれる場合と
そうでない場合とで
別の処理を行いたいのですが。
320名無し~3.EXE:04/04/02 10:50 ID:L8fSXpja
set tmpStr=%1
if "%tmpStr%" == "%tmpStr:**=%" 〜
321名無し~3.EXE:04/04/02 22:07 ID:VVYbN2C8
>320さん
ありがとうございます。
コマンドの意味を知りたいのですが、どのヘルプを見たらいいのでしょうか。
SET、IFにはそれらしいものを見つけることができなかったのですが。
322320とは別人:04/04/03 01:01 ID:MnPjjt0s
>321
setのヘルプを読み直せ。↓と書いてある。

 環境変数の置換は、次のように拡張されます:

  %PATH:文字列1=文字列2%

>320は要するにワイルドカードを除去する前後で比較し、
一致=含まれていない/不一致=含まれる を切り分けてる。
323名無し~3.EXE:04/04/04 15:58 ID:gjgRb5MJ
>>322さん
ありがとうございました。ご指摘の箇所は関係あるんじゃないかなとは
思っていたのですが、はっきりと理解できずにいました。
やりたいこと作業を無事バッチファイルで処理することができました。
324名無し~3.EXE:04/04/07 02:51 ID:v9QWOQE+
コマンドプロンプトから環境変数を設定することできますか
325名無し~3.EXE:04/04/07 09:13 ID:tRSpeYg6
>324
釣りか?
326名無し~3.EXE:04/04/09 08:25 ID:etLHC1Es
さんざん既出かもしれませんが、
シャットダウンのコマンドってなんですか?
DOSからだとexitじゃ電源を消せません。
327名無し~3.EXE:04/04/09 12:31 ID:pDwu26an
328名無し~3.EXE:04/04/09 12:32 ID:pDwu26an
ってコマンドプロンプトじゃなくてDOSなのね・・・
すみません
329名無し~3.EXE:04/04/09 15:14 ID:etLHC1Es
>>328
そうなんです。
古いノ−トのWINマシーンにDOSだけを入れたんですが、
Ctrl+Alt+Delだと再起動しちゃうし・・・。
330名無し~3.EXE:04/04/09 15:37 ID:6Mu7w1GU
指定のポートを開閉できるコマンドって無いのかな。当方XP PRO
331名無し~3.EXE:04/04/09 15:44 ID:ZZRPqmOM
>>329
ホントにDOSだけ?
そしたら電源ボタン(またはスイッチ)で切るより他にないでつ。
332名無し~3.EXE:04/04/09 15:56 ID:lk+N2bGu
333329:04/04/09 16:25 ID:etLHC1Es
>>332
ありがとうございます。
でも、シェアウェア…

>>331
それでいいんですか?
HDやコンピュータに損害は無いんですか?
(HDに書き込み中に切るとかを論外として)
334名無し~3.EXE:04/04/09 16:37 ID:kPcgGSxs
335名無し~3.EXE:04/04/09 17:17 ID:VDCvEZXu
>>333
DOSはそれでいい。
コマンド入力待ち状態で電源ポチッと切るのが普通。
自動的に電源が落ちるPCしか見たことなければ
不安に思うかも知れないけど、そういうものだから。

その状態はつまり、これ以上シャットダウン処理を
する必要がないって事。電源を切って良い状態です。
336名無し~3.EXE:04/04/10 01:15 ID:Bo0jIcF2
>333
解説。
Winで電源off操作が必要なのは、「書き込みキャッシュ」があるから。
DOSは「読み込みキャッシュ」しか無いから、ディスクの回転さえ止まっていれば
いつ電源を切ってもOK。

【書き込みキャッシュ】
書き込むよう要求されたデータをメモリ上に一時ストックし、余裕のある時に書き込むことで
体感アクセス速度をUPする仕組み。
メモリの方がデータが新しい状態で電源をoffにするとデータが壊れる。

【読み込みキャッシュ】
頻繁に読み出すデータをメモリ上にストックし、直接アクセスの回数を減らす仕組み。
常にHDの方がデータが新しい。
337名無し~3.EXE:04/04/10 01:30 ID:zY83HRQQ
DOSも余裕で書き込みキャッシュできますが・・・
338名無し~3.EXE:04/04/10 02:32 ID:AbxJO9eh
できるできないの話じゃないってば。
339名無し~3.EXE:04/04/10 02:46 ID:l7/tsu/d
STOPキーを数回押してから電源OFF
340329:04/04/10 12:33 ID:Crc5KD+o
>>334
ありがとうございます。
試してみます。

>>335-336
詳しい解説ありがとうございます。
いままで、Windows98と2000しか使った事無かったので、
そのまま電源切るのに抵抗があったんですが…
でも、>>334みたいなソフトがあるところをみると、
そう感じてるのは僕一人じゃないような気もします。
341名無し~3.EXE:04/04/10 12:39 ID:2yjVAv3m
まあ、キャッシュ書き戻し前に、>>334 使うとデータ飛ぶけどな
342名無し~3.EXE:04/04/10 13:01 ID:AFh9xe8b
>>340
マジレスするが、あの手のツールの主目的は
バッチ処理で電源断まで実行する事にある。
夜間にバックアップを取得した後電源断とかね。

不安に感じるのは君一人ではないかも知れない。
だが不安だという理由で導入検討してるのは君一人だ。
あれは初心者の不安解消ために開発されたわけではない。
そこを理解してくれ。
343名無し~3.EXE:04/04/10 13:56 ID:qxYBHaUl
なんか懐かしい Ctrl+c
344名無し~3.EXE:04/04/11 03:13 ID:MPCyb513
とてつもないオサーンが紛れ込んでるスレはここですか?
345名無し~3.EXE:04/04/11 16:42 ID:y/hWe/5H
バッチファイルにリダイレクトされたファイルの内容をバッチファイル内で使用したいです。

各行に a、b、c と1文字ずつ書かれたテキストファイル abc.txt があって
 C:\>hoge.bat < abc.txt
 a
 b
 c
となることを期待して
:main
echo %1
shift
if not "%1"=="" goto main
というバッチファイル hoge.bat を書いたら
 C:\>hoge.bat < abc.txt
 ECHO は <OFF> です。
 
となってしまいました。何がまずいんでしょう? OS は Windows2000 です。
346名無し~3.EXE:04/04/11 16:53 ID:ISxjoTJs
%1は引数の一番目であって、標準入力では無い
for /f %%a in (%1) do echo %%a
とでも書いて hoge abc.txtと叩いた方が期待した動作してくれるんじゃない
347名無し~3.EXE:04/04/11 17:30 ID:y/hWe/5H
>>346
…をを。

そうですね。その通りです。
そのへんがあまり身についてなかったようで。うう、頑張ります。
348名無し~3.EXE:04/04/12 15:12 ID:UvHyPI1W
コマンドプロンプト(DOSプロンプト)でPerlやawkのワンライナ書こうとして
"や^や|あたりのエスケープの処理に困った人いません?

^でエスケープするらしいということは聞いたんですが動作がイマイチ…
349名無し~3.EXE:04/04/12 20:24 ID:pP2fGPEQ
>>348
あるあるあるある。。。。。・゚・(ノД`)・゚・。
350名無し~3.EXE:04/04/13 17:51 ID:M27IMmG6
>>314
Win2000/XPではそんな事もできるようになっていたのか。
WinNT4.0やWin98では%date%すら使えないからWSHに頼るのが最も無難だと思うが。
351名無し~3.EXE:04/04/13 21:36 ID:IdhZRtbd
NT4.0やWin95ではWSHが入っていない可能性がある罠
352名無し~3.EXE:04/04/15 02:20 ID:uHfQKUG9
xcopyの /exclude: オプションで指定するファイルって、
パスの途中にスペースが混じるとうまく動かないっぽいね
(「ファイルが読み取れません」と出る)。
30分ほどはまって、まさかと思って C:\ に配置したらあっさり動いた。
何でパスを引用符で囲んでもダメなんだろうか……
353名無し~3.EXE:04/04/16 21:50 ID:+evkVLY+
相互リンクしとこ。

telnetでwinにログインしてる奴
http://pc5.2ch.net/test/read.cgi/win/1079363134/
354名無し~3.EXE:04/04/26 21:28 ID:mRPmNbD8
コマンドを使ってショートカットアイコンのリンク先を
取得する方法ってないものでしょうか。
355名無し~3.EXE:04/04/26 21:50 ID:hdSJLApf
>>354
自分で作れ
356名無し~3.EXE:04/04/26 21:58 ID:nlkR7Ykz
昔はそのものずばり「shortcut.exe」というコマンドが
Resource Kitで提供されてたんだけど、無くなったのかな?
357名無し~3.EXE:04/04/26 22:02 ID:nlkR7Ykz
MSのftpサイトでshortcut.exeちょっと探したけど、みつからず。

WSHなら出来そうですが、どーよ?>WSH使いの方
358名無し~3.EXE:04/04/26 22:04 ID:Fxnop82F
>>357
出来るよ。
359名無し~3.EXE:04/04/26 23:29 ID:nlkR7Ykz
>>358
ソース示せゴルァ


。。。俺にも分かる解説付きキボン
360名無し~3.EXE:04/04/27 00:21 ID:OqyN/Jui
たぶんW2K以降のみだとおもう(ParseNameあたりが・・)

var path = "C:\\test.lnk";
var file = path.substr(1+ path.lastIndexOf("\\"));
var fldr = path.substr(0, path.lastIndexOf("\\"));
var sh = WScript.CreateObject("Shell.Application");
var item = sh.NameSpace(fldr).ParseName(file);
if (item.IsLink) {
WScript.Echo(item.GetLink.Target.Path);
}
361名無し~3.EXE:04/04/27 01:25 ID:xBNZcQDB
type hoge.lnk
362名無し~3.EXE:04/04/27 18:49 ID:AmR85Im4
>>361
それが一番早い。再利用できるように情報抜き出すのは大変だが(w
363名無し~3.EXE:04/04/27 20:15 ID:hvN1rR83
>361
バイナリじゃんかヽ(`Д´)ノ
しかも一行に表示されて見たい部分は見られないし

というわけで、
type hoge.lnk > foo.txt
364名無し~3.EXE:04/04/27 20:30 ID:iztllqzq
notepad hoge.lnk

これで決まりだな。ふふふ・・・
365名無し~3.EXE:04/04/27 22:40 ID:QuUNFddO
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

C:\test.js(5, 1) Microsoft JScript 実行時エラー: 'sh.NameSpace(...)' は Null またはオブジェクトではありません。


(´・ω・`)ショボーン
366名無し~3.EXE:04/04/27 23:33 ID:CIcP41e8
>>365
xpだと "C:" でもいけたんでね・・

3行目を+1
var fldr = path.substr(0, path.lastIndexOf("\\") +1);
367名無し~3.EXE:04/04/28 00:44 ID:/Ii0DGoH
素直に NirComLine とかいったツールを導入してはどうでつか。
368名無し~3.EXE:04/04/28 07:32 ID:O2gWpsGI
NirComLine、具体的にはどうするんでしょう。
サイト見ましたが、リンクを取得できるようには
思えなかったもんで。
369名無し~3.EXE:04/04/30 02:11 ID:PSLtzyj6
Shift JISのテキストをUNICODEに変換したいのですが、いいツールありませんか?
できればフィルタコマンドとして使えるものキボン。
370名無し~3.EXE:04/04/30 09:59 ID:GujNXCBF
WinXpでコマンドパッチから別のコマンドパッチを呼び出したいんですけど、
呼び出すパッチの選択肢を表示させ、それをユーザーが選べる様にしたいんですけどどの様に書いたらいいですか?
371名無し~3.EXE:04/04/30 10:29 ID:H3qDafkR
>>370
set /p
372370:04/04/30 11:31 ID:GujNXCBF
>>371
うぅリファレンス見たけど判りません
もうちょっと詳しく教えて下さい。
373370:04/04/30 14:56 ID:GujNXCBF
HD内のバッチ漁ってたら参考になるものが在りました。
リファレンスって初心者にはチンプンカンプンですね。

私のような初心者が来るかもしれないので一応書いときます。

set _hogehoge=
set /p _hogehoge=入力してちょ
echo %_hogehog%
pause
374名無し~3.EXE:04/05/06 11:36 ID:Zgqbakss
375名無し~3.EXE:04/05/06 12:04 ID:Zgqbakss
376名無し~3.EXE:04/05/06 15:47 ID:g5eXkNj6
>>374
要求しているのは、作成時の日時時間(秒まで)であって、現在の日付と時間ではないんだが
後、ReadMe.xlsはやめれ。xls見るためにOOo起動するの面倒なんだよ
377名無し~3.EXE:04/05/06 18:03 ID:Zgqbakss
>376
cmdファイルの中身と、コメントにあるurlを見れば分かるだろ。

偉そうなんだよ。ドアホウ
378名無し~3.EXE:04/05/06 18:06 ID:Zgqbakss
>376

てめーの要求している内容に合致するわけ無いだろ。

ttp://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html
書式 意味 例
%V% 変数Vの値全体 %V% ⇒「ABCDEFGHIJKL」
%V:~m% m文字目から、最後まで %V:~5% ⇒「FGHIJKL」
%V:~m,n% m文字目から、n文字分 %V:~5,2% ⇒「FG」
%V:~m,-n% m文字目から、最後のn文字分を除いたもの %V:~5,-2% ⇒「FGHIJ」
%V:~-m% 後ろからm文字目から、最後まで %V:~-5% ⇒「HIJKL」
%V:~-m,n% 後ろからm文字目から、n文字分 %V:~-5,2% ⇒「HI」
%V:~-m,-n% 後ろからm文字目から、最後のn文字分を除いたもの %V:~-5,-2% ⇒「HIJ」

timeを変数に格納して上を見て文字列を分割すれば、できるだろ。

>ReadMe.xlsはやめれ。xls見るためにOOo起動するの面倒なんだよ

いちいち、お前の都合なんざに構ってられるか
379名無し~3.EXE:04/05/06 22:56 ID:2GiTygY6
"ファイル作成時"の日時をお望みのようだから、timeでは無理なんでないの?
380名無し~3.EXE:04/05/11 21:16 ID:fFn9kQQc
>>369
自己レスだがこんなの見つけた。
ttp://www.vector.co.jp/soft/winnt/util/se315405.html

上手い事やるなぁ、と感心しました。
381名無し~3.EXE:04/05/21 17:23 ID:eJeWj2Qu
netstart my heart
382名無し~3.EXE:04/05/21 21:59 ID:Gczocdo+
>>380
作者見ると作品は全てバッチorスクリプトがズラーリ。
そう言えばBAT2COMの作者だ。
あれこれ捻ったバッチとか作ってんだろうなぁ。
383名無し~3.EXE:04/05/21 23:13 ID:TU1SO8QA
>>381
システム エラー 1058 が発生しました。

指定されたサービスは無効であるか、または有効なデバイスが関連付けられていないため、開始できません。


>>382
ソース見てるだけでも勉強になるね。

しかも単機能ツールってのがいい。「単機能プログラムを組み合わせて、高度な処理を実現」という
シェルスクリプトの理念(つーのかな?)を思い出した。カコイイ。
384名無し~3.EXE:04/05/22 00:27 ID:rI4JPHaB
>>383
コンピュータは急速に進化しているけれど、それを扱う人間はそれほど進化してないからねえ・・。
どんなに便利なOSやコンピュータを使っても、最後に求める機能はUNIXの時代と変わらないのかもしれない。
385名無し~3.EXE:04/05/24 14:27 ID:MADLEBlZ
サブフォルダにも有るファイル全てをフルパスで出力してくれるコンソールアプリって無いですか?

C:\windows 更新時間
C:\windows\tinko.log 更新時間
C:\windows\system32 更新時間
C:\windows\system32\hogehoge.dll 更新時間
C:\windows\system32\helohelo.dll 更新時間
         ・
         ・
         ・
         ・


こんな感じで、必要な情報をひとつのファイルに一列で表示。
dirコマンドの出力を加工すれば良いんだろうけどそこまでのスキルが無い。。
386名無し~3.EXE:04/05/24 15:21 ID:dPOfdUE6
>>385
forで%~f1と%~t1を使えばいい

forでディレクトリとファイル両方に対してコマンドを送るのってどうやってやればいいですか
387名無し~3.EXE:04/05/24 17:11 ID:MADLEBlZ
>>386
forでパッチパラメーターを絡める方法が判らないよ〜
それと隠し属性のファイルに対しても。。。

もうちびっとヒント下さい。
388385:04/05/24 18:13 ID:MADLEBlZ
あ、なんか勘違いしてた。
記述は同じでもバッチパラメーターとは言わないんですね。。汗

for /r C:\windows %%I in (.) do echo %%~ftI >> G:\files.txt
for /r C:\windows %%I in (*.*) do echo %%~ftI >> G:\files.txt

コレで狙った物には近づいてきたんですが、更新日が先に出力されてしまうのと隠しファイルも出力したいんですが、
どうすれば良いんだろう。。

389名無し~3.EXE:04/05/24 19:41 ID:MgTqsAHq
>388=385

for /r C:\windows %%I in (.) do echo %%~fI %%~tI >> files.txt
for /r C:\windows %%I in (*.*) do echo %%~fI %%~tI >> files.txt

& フォルダオプションで隠しファイルを表示するようにする

で、どないだ?
390名無し~3.EXE:04/05/24 19:47 ID:dPOfdUE6
>>388
forが隠しファイル表示出来ないのを知らなかった。すまん
for /f "delims=" %a in ('dir/s/a/b') do @echo %~fa %~ta
391385:04/05/25 02:56 ID:i/DzHp6e
>>390
スゴイ
ありがとうございます、こんな使い方出来るんだ!
392名無し~3.EXE:04/05/26 10:17 ID:3FYR+GF3
ファイルの更新時間を詳細に得るにはどうしたら良いでしょうか?
dirコマンドは分単位なので秒単位を取得する様にしたいのですが。
393名無し~3.EXE:04/05/26 11:25 ID:5WC3KuTU
>>392
WSHのDateLastModifiedなら秒まで取得できますね。
あとは、dirに似た外部プログラムを使うとか。
394名無し~3.EXE:04/05/26 11:34 ID:v8NGNCrx
>390
for ループ の()の中のdir の引数に日本語ディレクトリ名があると、動かないね。
395名無し~3.EXE:04/05/27 02:25 ID:mcJj1JQX
ちょっと疑問に思ったんですが、変数やラベルの定義に日本語を使うと何か不具合な事ってありますか?
ループ処理速度が遅くなるとか、特定の文字が正しく認識されないとか。

厨房なもんで分かりやすくするのに日本語で使い続けたいんですが。
396名無し~3.EXE:04/05/27 14:17 ID:Ne+pQM2m
XPであるソフトのアンインストールをするのに
コマンドラインから〜.exe /unregisterをすると書いてあったのですが、
コマンドプロンプトを実行すると
C:\Document and Settings\*****>_
となってその後ろにC:\Program Files\・・・
パスが見つかりませんとエラーが出るんですが
どうすればいいのでしょうか?
397名無し~3.EXE:04/05/27 14:25 ID:ssaFcbI9
>>396
c:\program 〜 .exeを " で括る

それくらいなら「ファイル名を指定して実行」で十分
398名無し~3.EXE:04/05/27 15:18 ID:Ne+pQM2m
>>397
ありがとうございます。
できました。
399名無し~3.EXE:04/05/27 15:42 ID:ZgOYgYQM
del "C:\WINNT\ShellIconCache"
と、やってもshelliconcacheが消えないんですがなぜですか?
400名無し~3.EXE:04/05/27 16:28 ID:f+IxhKKy
>399
OSがそのファイルをつかんでいるからだろう。
セーフモードで起動してみれば、いいんじゃないの。
401名無し~3.EXE:04/05/27 16:39 ID:HzwBPIo0
>>399
attrib -s -r -h
402名無し~3.EXE:04/05/27 17:07 ID:ZgOYgYQM
どうもありがとうございます

もう1つ聞いていいですか?
別ソフトのランチャーにWindowsのヘルプファイルのコマンドリファレンスを登録したいのですが
"C:\WINNT\hh.exe" %systemroot%\help\windows.chm
のあとどういう風に書けばコマンドリファレンスのページに飛びますか?
403名無し~3.EXE:04/05/27 17:11 ID:ZgOYgYQM
"C:\WINNT\hh.exe" %systemroot%\help\windows.chm::/ntcmds.htm

すいません自己解決しました
これでOKでした
404名無し~3.EXE:04/05/28 16:38 ID:U0CWZVPE
ttp://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html

%V:~m,-n% の

mやnをコマンドプロンプトの変数にすることってできますかね?
色々やってみたのですが、無理なんです。(^を%の前につけたり、%を重ねたりしました。)

405名無し~3.EXE:04/05/28 18:13 ID:EwZ5lvAe
>>404
^ じゃなくて ~ だよ
406名無し~3.EXE:04/05/28 18:50 ID:E+1amGl7
>>404
echo echo %%V:~%1,%2%%>temp.bat
temp.bat
407名無し~3.EXE:04/05/29 00:44 ID:Svs6XP1a
>406
2段階にしないとだめですか。うーん。。。
408名無し~3.EXE:04/05/29 09:32 ID:oHqnlxCe
いきなり話題を振りますけれど、Excelなどでバッチファイルを書くのはどう思いますか?
大量のファイルを操作するのに、まずdir /bなどでファイルリストを作ってExcelに読み込む。
ソートやフィルタなどで対象ファイルを絞り込む。
文字列関数などでコマンドラインを組み立てて、そのセルをコピペ。
そしてテキスト出力→バッチファイルとして実行。

このスレ的にはperlとかでやる人が多そうですが、
中間結果が対話的に確認できるのは大きなメリットだと思うのですけれど、
いかがでしょう?
409名無し~3.EXE:04/05/29 13:21 ID:Svs6XP1a
>408
まぁ、ポリシーの問題やね。
410名無し~3.EXE:04/05/29 22:25 ID:WNH8CWJn
>>408
漏れもよくやる
411392:04/05/29 23:24 ID:XVkyOrYs
>>393
遅レスですが、やっぱ標準じゃ無理なんですね、取り合えずDirを使って後はパッチが出来てから変更してみます。

いま初めて長めなバッチを書いてます。
システムのバックアップを取り、そこから起点に日々のファイルの増減分を記録、ロールバックが出来るバックアップをするパッチです。

で、ずっとnotepadで書いてて行程の半分程出来て、やっと気づいた、
アルゴリズム考える時間よりデバッグの時間が遥かに長い。
ファイルパスに含まれてる&が実行しない様に引用符あっちにつけたりこっちにつけたり、付けたら違うコマンドが誤動作、
いちいち動作確認しながらやってます。

皆さんコマンドを書くのに何か使ってますか?
412名無し~3.EXE:04/05/29 23:38 ID:jrRHs7bx
んー、SE3.EXE。>コマンド書き
ttp://www.vector.co.jp/vpack/filearea/dos/writing/edit/se3/


…とか言ってみるテスト。
413名無し~3.EXE:04/05/29 23:45 ID:YdO69UvC
>408
Perlの実行環境があるなら別だが、そうじゃないならExcelは強力な編集ツールになると思う
定型的な処理ならVBA使えばさらに強力

今あるツールは最大限使うべし
414名無し~3.EXE:04/05/29 23:51 ID:WNH8CWJn
>アルゴリズム考える時間よりデバッグの時間が遥かに長い。
それはそれで当然だ罠
415名無し~3.EXE:04/05/30 09:24 ID:iSgx8+88
>411
K2Editor を使っている。もちろん、色設定ファイルを作った。
416名無し~3.EXE:04/05/31 16:13 ID:kWWO4iVP
コマンドライン上で、EXEファイルのプロパティで表示されるバージョン情報の
変更は可能でしょうか?
ResourceHackerを使えばできますが……
417名無し~3.EXE:04/05/31 17:26 ID:f/hCwIN6
>>416
自分で答を書いてるじゃん
418416:04/05/31 19:18 ID:kWWO4iVP
文章を省略したため誤解させてしまいましたが

ResourceHackerを使えばできますがこれはGUIのツールで
手入力が必要です。バッチ処理で自動でバージョンリソース
の書き換えが可能なコマンドラインのツールはないでしょうか?
419名無し~3.EXE:04/05/31 19:21 ID:3E4WLnU9
なぜビルド時に指定しない
420名無し~3.EXE:04/05/31 20:04 ID:MuVS/Ybd
>>418
ヘルプ嫁
421名無し~3.EXE:04/06/01 18:31 ID:vr+Pu92h
>>383
ロックファンだけ爆笑してるんだろうから、実際に実行してみるなよ。
422名無し~3.EXE:04/06/03 13:59 ID:Z5CIla4e
WinXPのNtbackupのコマンドラインで、GUIでは行えるシステムレジストリのみバックアップする方法は無いでしょうか?

systemstateオプションを付けた時の強制的に他の保護されたシステムファイルまでバックアップされてしまうのを避けたいんです。
それかWinNTにあったrdiskの様なC:\WINDOWS\repairにある緊急用のレジストリのバックアップだけを更新出来れば良いんですが。
423名無し~3.EXE:04/06/03 14:10 ID:49oSq2i0
OSをMEから2000に変えたんですがwordが開けません。
アイコンはあるんですが、クリックすると
「最初にこのアプリケーションをインストールした場所から
 セットアップを実行してください」
と出ます。どこにあるのか分からないのですがどうすればいいでしょうか?
424名無し~3.EXE:04/06/03 14:12 ID:dp2aCtpK
>423
窓から投げ捨てろ。

>422
システムの復元ってコマンドラインでは動かないのか?
425名無し~3.EXE:04/06/03 21:53 ID:VFco8SUa
ちょっと違うがregbackは?

compressと組み合わせてうまい事やれば、rdiskみたいな処理(repairフォルダ更新)も
出来そうな気がする。
426名無し~3.EXE:04/06/04 00:12 ID:LqMPiGhR
>>425
regbackがXPで動きませぬ。
せっかくWin2k版を探して拾ってきたのに(2003版リソキには含まれていなかった)。。。涙。
427名無し~3.EXE:04/06/05 00:11 ID:B3s8zKi+
reg saveが使えそう。
428名無し~3.EXE:04/06/05 01:06 ID:BXQeUN2N
BATファイルで音量変えたいんですけど,どうやったらできますか?
429名無し~3.EXE:04/06/05 19:57 ID:vmsqQ4eQ
>428
無理っぽい。
430名無し~3.EXE:04/06/06 12:23 ID:w+6cg9df
>>423
確かMSはMe→2kだと新規インストールしかしらへんでって言っていた気がする
431名無し~3.EXE:04/06/10 21:04 ID:+yXrHRq4
WindowsXPでテキストサービスと入力言語のプロパティを開きたいけど
コマンドラインから指定する方法はありますか?
432名無し~3.EXE:04/06/10 23:53 ID:txhnZjvM
>>431
Win2000なら
rundll32.exe shell32.dll,Control_RunDLL main.cpl,キーボード,1
コマンドラインはProcess Explorer等で取得できる
433名無し~3.EXE:04/06/11 01:57 ID:htVR9Kvo
質問です。

環境はXPproSP1です。
USBポートに接続したUSBメモリや外付けHDDなどを取り外す場合、
タスクトレイの「ハードウェアの安全な取り外し」を左クリックして、
目的のデバイス
(例えば「USB大容量記憶装置デバイス - ドライブ(E:)を安全に取り出します」)
をクリックして「取り外す準備ができました」を確認してから
取り外すのがもっともなやり方と思うのですが、
それをコマンドラインで実行する方法はないでしょうか?
UNIXのumountのようなことをしたいのです。

ダブルクリックした場合のデバイス一覧の表示と
同じものはコマンドラインでできるのですが、
(rundll32 shell32.dll,Control_RunDLL hotplug.dll)
取り外す準備ができましたと同等な状態までを
コマンドで実行できるようにしたいのです。

お願いします。
434名無し~3.EXE:04/06/11 02:00 ID:T3DpZ4tq
スタンバイから復帰したときに任意のBATファイル等を
動かしたいのですが,方法はありますか?
435名無し~3.EXE:04/06/11 03:21 ID:2at8tT/Z
436名無し~3.EXE:04/06/12 01:19 ID:okL+LnrO
>>435
433です。ありがとうございます。
437名無し~3.EXE:04/06/13 02:13 ID:fJGfqTPJ
普通、絶対PATHはドライブ名から書き始めますが、そうではなく
ボリュームラベルでアクセスできるようなパスの書き方ってありませんか?
例えば「System:\WINDOWS」って感じに。
CDコマンドのエラーメッセージに「ボリュームラベルの構文が間違っています」というもの
があるので、ボリュームラベルの含まれた正しいパスの書き方があるのかと思って。
438名無し~3.EXE:04/06/13 21:41 ID:VPIaRWrC
>437
試してないが、同じフォルダ構成でボリュームラベルの異なるリムーバブルメディアを用意し、
その中の適当なフォルダにCDした後入れ替えて、再度CDしてみそ。
439名無し~3.EXE:04/06/16 20:58 ID:TQ37ZftZ
>>437
表示されたエラーメッセージ、正確には、
「ファイル名、ディレクトリ名、またはボリューム ラベルの構文が間違っています。」
でしょ?

単純に、cdコマンドの引数に指定したパスが記述ミスしてるだけのお母ん
440名無し~3.EXE:04/06/16 21:43 ID:mdkdEDnC
たんにCDしたいんじゃなくて、バッチで使いたいとかじゃないの?
ドライブレターじゃなくボリュームラベル指定で。
441名無し~3.EXE:04/06/16 22:31 ID:5PkjnTja
日付を入力してその日付以降に更新したファイルをxcopyする.batファイルを書いているのですが、
入力した文字列を変数に入れる方法がわかりません…
初歩的な質問で申し訳ないですが、おねがいします。
OSはXP proです。
442名無し~3.EXE:04/06/16 22:36 ID:JmENzG2r
set /p nullpo=ぬるぽ
echo %nullpo%
443名無し~3.EXE:04/06/16 22:42 ID:TQ37ZftZ
>>440
ああ、そういうことね。おそらく出来ないと思う。

このメッセージ文は、cdコマンドが持っているのではなくて、単にWin32エラーコードを元に
汎用的なメッセージ文を表示してるだけのようです。

てかそもそも、ボリュームラベルはユニークとは限らないし。

無理矢理やるなら、このスレおなじみforコマンドでウニャウニャすれば、
不可能ではなさそうですが。
for %i in (A B C D E F G H I J K L M N) do vol %i:|find "ぼりゅーむしりある"&&cd /d %i:

>>441
日付を、実行時の引数で指定するなら、%1

テキストファイルに書いておくなら、このスレおなじみforコマンドでウニャウニャすれば(ry
for /f "delims=" %%i in (てきすとふぁいる名) do set HIDUKE=%%i
444441:04/06/16 23:04 ID:5PkjnTja
すいません、言葉足らずでした。
.batファイルをダブルクリックで実行後、キーボードからの入力を変数に入れたいんです。
445名無し~3.EXE:04/06/16 23:17 ID:TQ37ZftZ
set /p 変数名=

で入力待ちしてくれる。
446名無し~3.EXE:04/06/17 02:00 ID:gq7rlq95
ネットラジオ関係で落としておいたReal Audio形式(.rm)のファイルが数百個たまったのですが、
携帯MP3プレーヤで聞くために、MP3形式(.mp3)に変換したいです。

Winamp 2.80とTara's Input Pluginで.rm→.wav変換、WAV編集ソフトで音量調整、
午後のこ〜だで.wav→.mp3変換でやってたのですが、手間掛かりすぎて力尽きました。

うまく一括処理できないでしょうか?
完全自動化じゃなくてもいいです。音量調整も諦めてもいいと考えています。

いろいろ試してて、

  for %i in (*.rm) do winamp.exe %i&&rename winamp-OUT.wav %~ni.wav

という感じでファイル毎にWinampをコマンドライン起動してWAV出力しようとしたのですが、
再生(出力)完了後にWinampが起動したままになってしまうようで、ダメっぽいです。

他に.rm→.wavができるコマンドラインツールがあれば、それで構いませんが、
何かいい方法ないでしょうか。。。?
447名無し~3.EXE:04/06/17 14:22 ID:UHl1Z1Eh
>446
XPのtaskkill.exe をつかって、winamp.exeを終了すれば無問題。
448名無し~3.EXE:04/06/17 23:22 ID:gq7rlq95
>>447
killするタイミング難しいから考えたけど、Winampは、再生終了すると、タスク名に「[Stopped]」が
付くみたいなので、こんな感じでdoから後をサブルーチンにすればいけそう。

for %i in (*.rm) do SUB.bat %i


--- SUB.bat -----------------------------
start winamp %1
:LOOP
sleep 10
tlist|find /v "[Stopped]"|find "winamp.exe"&&goto :LOOP
kill winamp.exe
move winamp-OUT.wav %~dpn1.wav


ついでに、後処理のファイル名変更もrenameからmoveにしてみた。
449名無し~3.EXE:04/06/30 00:54 ID:DGkXTVpQ
XPか2000の標準のコマンドで、UNIXのsleepのようなことってできるでしょうか?
450名無し~3.EXE:04/06/30 01:50 ID:HUmQjJwS
>>449
標準コマンドでは無いけど、標準環境にこだわるなら、WHSを呼び出す事で同じ事は出来る。

sleep.cmd

Echo WScript.Sleep(500*10)|Command/cCScript -E:VBS -
451名無し~3.EXE:04/06/30 02:01 ID:8A3nh9qn
>>449

@echo off
echo Start %TIME%

set a=%time%
set /a a=%a:~0,2% * 360000 + %a:~3,2% * 6000 + 1%a:~6,2%%a:~9,2%
:loop
set b=%time%
set /a b=%b:~0,2% * 360000 + %b:~3,2% * 6000 + 1%b:~6,2%%b:~9,2%
set /a c=b-a
if %c% lss 1000 goto loop

echo End %TIME%
452名無し~3.EXE:04/06/30 02:07 ID:8A3nh9qn
>>451
1 を忘れた・・・訂正

@echo off
echo Start %TIME%

set a=%time%
set /a a=%a:~0,2% * 360000 + 1%a:~3,2% * 6000 + 1%a:~6,2%%a:~9,2%
:loop
set b=%time%
set /a b=%b:~0,2% * 360000 + 1%b:~3,2% * 6000 + 1%b:~6,2%%b:~9,2%
set /a c=b-a
if %c% lss 1000 goto loop

echo End %TIME%
453名無し~3.EXE:04/06/30 02:24 ID:deAUvV69
非常に行儀悪いけど、標準コマンドだけで5秒待つ例。

 @ping -n 1 -w 5000 192.168.255.255>nul

#確か他に、タイムアウト指定のできる無害なコマンドがあったような気がするんだが…
454名無し~3.EXE:04/06/30 20:37 ID:dW46BZhW
>>452
CPU負荷すごそう。。。
455名無し~3.EXE:04/07/01 02:22 ID:1dG8TwGU
多分ム板からの甜菜。

@ECHO OFF
SET SS=%TIME:~6,2%
SET MYCNT=0
:LOOP
SET NOW=%TIME:~6,2%
IF %SS%==%NOW% GOTO :LOOP
SET /A MYCNT=MYCNT+1
SET SS=%NOW%
IF %MYCNT% LEQ 10 GOTO :LOOP

>>453
9x系のchoiceとか?
456449:04/07/01 23:42 ID:VuOPZQ5y
遅くなってしまいましたが、
いろいろありがとうございます。
参考にさせていただきます
457名無し~3.EXE:04/07/02 19:15 ID:wHYqc9+d
質問です。
WindowsXP Proです。

Windowsのftpコマンドは、passiveモードの指定ができるのでしょうか?
ヘルプみるとそれらしいのが無いみたいなのですが?
458名無し~3.EXE:04/07/02 20:07 ID:G5BwAwpB
459名無し~3.EXE:04/07/03 02:23 ID:HfoSb9Bo
pauseコマンドの例の文言を表示させずに
別な文言を表示させる方法はないでしょうか?

バイトが叩くバッチなので「続行するには何かキーを押してください . . .」
ではなく「Enterキーを押してください . . .」で統一できたらいいなと思うのです。

460名無し~3.EXE:04/07/03 02:38 ID:Fbr46s3B
>459
@echo Enterキーを押してくだちい
pause >nul
461名無し~3.EXE:04/07/03 13:33 ID:mJEDzhcc
>>460
いただきました。ありがとうございます。
462457:04/07/03 19:54 ID:GIfJB8rD
>458
遅くなりましたが、ありがとうございました。

たいへん参考になりました。
463名無し~3.EXE:04/07/19 21:06 ID:vesHzDDH
保守かきこ
464ヨッシー:04/07/21 17:14 ID:2EciBwtn
自動でウィルス対策ソフトのDATA更新作業を行うBATを組んでいます。
支障なく動作するように組めたのですが、タスクに入れて完全自動化
しようと思うと、ウイルス対策ソフトのサービスを止めておかないと更新
DATAが上書き出来無いためうまくいきません。

OSは2000、XPを対象に考えていて、サービスの本体プログラムも判ります。
自分で調べた中では、
@2000にはリソースキットからコマンドを追加すると可能になるらしい。
AXPではSCと言うコマンドが追加になっていて、デフォルトでもできるらしい。
と言うことが判ったくらいで、その詳細に関して記載が有るページがほとんど
無く私の実力では行き詰まっています。

任意のサービスを止める方法を研究するのに良いHP、書物が有りましたら
教えてもらえませんでしょうか。
特に、スイッチ関係を解説したページが有れば助かります。

その他の手段として、セーフモードで再起動する方法がわかれば、同様な
ことが可能とは思うのですが、コマンドラインで可能でしょうか。

教えて君で申し訳ありませんが、よろしくお願いします。
465名無し~3.EXE:04/07/21 17:37 ID:zBOzlYFy
sc /?
466名無し~3.EXE:04/07/21 20:21 ID:OF4s2FHh
>>464
SC入れなくても標準で出来る
NET STOP サービス
NET START サービス
467名無し~3.EXE:04/07/21 20:43 ID:nF8OqPed
つーか今時、自分で自動更新できないウイルス対策ソフトって・・・
468名無し~3.EXE:04/07/22 00:07 ID:MGExOPw8
もうだめぽ、だな
469ヨッシー:04/07/22 20:54 ID:iZ9Q068b
>466
ありがとうございます。
やってみたところ、簡単に出来ました。

このコマンド自体の存在は知っていたのですが、サービス全般に対して有効な
コマンドだとは思っていませんでした。

おかげさまで、完全自動化のめどが立ちました。

>467
元々「更新しますか?」というメッセージが出るだけで、ワンクリックする必要が
あるのです (-_-;)
470名無し~3.EXE:04/07/23 02:02 ID:Jws9sJUY
>>469
確認メッセージを出さないでアップデートするとかいう設定項目がありそうなもんだが・・・
471XPです:04/07/25 02:30 ID:KaGKO5v+
rasphoneの回線切断のパラメータってどういう風につければいいんですか
接続は rasphone -d でいけるのですが
472自己解決:04/07/25 03:01 ID:sTR+qfhT
すみません
-h で切断できました
473名無し~3.EXE:04/08/09 17:37 ID:lOYIf47o
hosyu
474名無し~3.EXE:04/08/12 11:30 ID:/I3cPuiG
WinXPのコマンドプロンプトで、あるコマンドの実行にかかった処理時間を
計測する方法はありませんか?
475名無し~3.EXE:04/08/12 12:12 ID:WAXnULRg
476名無し~3.EXE:04/08/12 12:14 ID:TITsTW5/
Cygwin の time とか
477名無し~3.EXE:04/08/12 12:23 ID:G76yBlFi
>>475に補足。
NT4、2000までは同様にリソキでtimethis.exeが提供されてた。
478名無し~3.EXE:04/08/17 14:52 ID:NCbJPaIW
すみません、DOSコマンドについて教えてほしいのですが、
DOSコンソールで、コマンドを実行した時に出るエラーメッセージのみを、
ファイルに書き出したいのですが、どうすればいいでしょうか?

たとえば、コマンドが
c:\> hoge [リターン]
とした場合であれば、下記の内容をファイルに書き出すということです。
-------------------------------------------------------
'hoge' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
-------------------------------------------------------

UNIX系コンソールで言うと、
$hoge 2 > errors.txt [リターン]
という事がしたいという意味です。

ご存知の方おられましたら、ご教授よろしくお願いいたします。
479名無し~3.EXE:04/08/17 15:00 ID:6iVfSgvy
2000/XPなら2>で出来る
9x系はこういうのを使えば出来ると思う
ttp://homepage3.nifty.com/k-takata/mysoft/rderr.html
480名無し~3.EXE:04/08/17 15:39 ID:NCbJPaIW
>>479
ぎゃー!すみません。
2と>の間にスペースが入ってたのが原因だったようです。
とにかく、あなたの書き込みで救われました。
どうもありがとうございます。
481名無し~3.EXE:04/09/03 08:48 ID:6WDLtCRe
すいません、w2ksp4なんですが、「任意の秒数待つ」みたいなコマンドはありませんか?
スタートアップにbatファイル置いているのですが、最後のtrayexpandに上手くアイコンを格納させたいのです。
482名無し~3.EXE:04/09/03 08:57 ID:2KSHO9Z7
>481
いますぐ手軽にやりたいのなら、PINGコマンドを使う方法がある。

例えば以下のように、IPアドレスを全く割り当ててないコンピュータ名
(ここでは仮に"TESTESTEST"としておく)に対してPINGコマンドを
任意の回数だけ実行する。

PING TESTESTEST
PING TESTESTEST
PING TESTESTEST

483名無し~3.EXE:04/09/03 09:03 ID:6WDLtCRe
すいません、ちょっと上に答え有りましたね。ありがとうございました。
484名無し~3.EXE:04/09/03 09:05 ID:6WDLtCRe
>>482さん、レスありがとうございます。
>>455を参考に何となく以下のようなbatを作ったら上手くいきました。

@ECHO OFF
SET SS=%TIME:~6,2%
SET MYCNT=0
:LOOP
SET NOW=%TIME:~6,2%
IF %SS%==%NOW% GOTO :LOOP
SET /A MYCNT=MYCNT+1
SET SS=%NOW%
IF %MYCNT% LEQ 15 GOTO :LOOP

cmd /c start /min D:\Applications\zonealarm\zlclient.exe
cmd /c start /min D:\Applications\Grisoft\AVG6\avgcc32.exe /STARTUP
cmd /c start /min D:\Applications\negies\NEGiES.exe
cmd /c start /HIGH D:\Applications\ProxN45j\Proxomitron.exe
cmd /c start D:\Applications\mp3infp\mp3infp_regist.exe
cmd /c start D:\Applications\TClockLight\tclock.exe

@ECHO OFF
SET SS=%TIME:~6,2%
SET MYCNT=0
:LOOP2
SET NOW=%TIME:~6,2%
IF %SS%==%NOW% GOTO :LOOP2
SET /A MYCNT=MYCNT+1
SET SS=%NOW%
IF %MYCNT% LEQ 5 GOTO :LOOP2

cmd /c start D:\Applications\TrayExpand\te.exe
485名無し~3.EXE:04/09/03 12:48 ID:BZvCTfOV
>>484
オイオイ・・起動時にそんもん回すのかよ・・・

すなおにsleepの互換コマンド拾ってこいよ
486名無し~3.EXE:04/09/03 12:54 ID:gmxH2wyJ
>>484
何度か試してみたらCPU負荷が異常に高いことに気付いて
取り敢えず>>453のに変更しました。
sleepの互換コマンドを拾って来るというのがよくわかりませんがググって来ます。
487名無し~3.EXE:04/09/03 14:26 ID:Q3180Aoz
>>486
バッチファイルじゃなくて申し訳ないけど、W2Kなら
VBSで超簡単にできるからこれ試してみては?

ファイル名: sleep.vbs
内容↓
wscript.sleep 10000

↑このファイルを作成して
元のバッチファイルから呼び出せば
そのタイミングで指定した時間だけ処理停止する。
数字はミリセコンド。サンプルは10秒待つ例。

さらに詳しい事はWindows Scripting Hostスレで。
488名無し~3.EXE:04/09/03 15:18 ID:7q3MCFfS
内部コマンドでsleep欲しいよな
489名無し~3.EXE:04/09/03 15:26 ID:2KSHO9Z7
そういやリソースキットの中にWinNT/2000/XPでも使えるSLEEPコマンドやCHOICEコマンドがあったな。
490名無し~3.EXE:04/09/03 17:00 ID:r2jO6OGR
>487
ありがとうございます。
それか話に出ていたResource Kitのsleep.exeで行こうと思います。
サイズから見て多分Resource Kit 2k3のsleep.exe見つけたので貼っておきますね。
ttp://files.clanservers.net/files/utilities/
491& ◆2F1nYDgaQo :04/09/08 17:42 ID:H/eoRhOG
xpで使えるようになってるらしい?ファイル名補完2kでできるよになりません?
cygwin使えは無しであるなら教えてください
492名無し~3.EXE:04/09/08 18:01 ID:yUOxvsFm
493名無し~3.EXE:04/09/09 19:48 ID:ax3EL9Ae
じつはNT4.0の頃から一部で知られた有名ワザだった>CpmpletinChar
494名無し~3.EXE:04/09/12 11:28:02 ID:DosB5Asq
DOSで、コマンドが出力したファイル(バイナリ)を
別のファイルに渡す事ってできませんか?
| か > でできるのかと思いましたが、うまくいきません
495名無し~3.EXE:04/09/12 11:31:21 ID:/8GCRzAg
>>494
ファイルをファイルに渡すってのがよくわからんが
入力のリダイレクトなら < で
496名無し~3.EXE:04/09/12 12:21:44 ID:DosB5Asq
すいません、exeがバイナリファイルを作る→そのファイルを別のexeに渡す でした。
何度やってもうまくいかないんですが、渡す相手をデフォルトで入ってる ren(リネーム)に代えて
実験したらパイプでできました。
ということは、渡す相手によってできたりできなかったりするのかも・・・と思いましたが
とりあえず諦める事にします。レスありがとうございました
497名無し~3.EXE:04/09/12 12:48:21 ID:obP221Yr
ナニヲヤッタノカマッタクリカイデキネーヨ
498名無し~3.EXE:04/09/12 12:54:22 ID:/8GCRzAg
やっぱり分からん
499名無し~3.EXE:04/09/12 13:00:42 ID:+jzQXmWf
よくわからんけど、
ren はバイナリでなく "ファイル名"を受け取ったんでは?
500名無し~3.EXE:04/09/14 19:14:44 ID:7KRa6t6r
bat内での文字列操作について質問させてください。
ファイルにパールでの処理を行って吐き出すbatを作ろうとしています。
今までは、
 > move file.txt infile.txt
とリネームしてから、
 > foo.pl infile.txt > file.txt
と手入力していたのですが、ドラッグアンドドロップでできないかなと…
で、とりあえず
set infile=%1
set outfile=%infile%
foo.pl %infile% > %outfile%
というのを作ったのですが、2行目の前に変数infileに対して
● 先頭にinがついてるか確認
● もしついていなければinをつけてりネーム
2行目で
● 変数outfileにinを抜いた変数infileを代入
したいのですが、やり方を教えてください。
よろしくお願いします。
501名無し~3.EXE:04/09/14 20:08:42 ID:WD7Uq2DD
>>500
パールでやれよ
502名無し~3.EXE:04/09/14 20:14:48 ID:cH4gIXYw
とりあえずここにD&Dしておきますね
ttp://homepage3.nifty.com/yamakox/Others/DropOnScript.html
503名無し~3.EXE:04/09/15 02:27:46 ID:oY3nNC6+
>>501
パールは人に書いてもらったもので、DOSよりもさらにチンプンカンプンなのです…
>>502
なんか便利そうですね。使えるかどうかわかりませんが、落としてみます。ありがとうです。
504491:04/09/16 06:12:50 ID:anUCk3zm
>>492
ありがたやあ、いやーーー無駄な労力使ってた
xpのcmd.exeがめる→叩く→動く→補完しない
→調べる→英文長い→読まずに都合のいいように解釈→試す
→動かない→辞書もって訳す→この文書関係ない
→また調べる→また英文長い→ループ

そんだけでできた、やっと抜けられました。感謝です。

ところで実行ファイルは皆さんsystem32に流し込んで動かします?
505名無し~3.EXE:04/09/16 06:15:37 ID:Q1nLO+P2
適当に bin ディレクトリ作ってパス通してる
506名無し~3.EXE:04/09/16 14:13:39 ID:ETUg3lb5
>辞書もって訳す→この文書関係ない

ワロタ
507名無し~3.EXE:04/09/17 00:05:40 ID:ojakAJM7
DLLなアプリを使いたいんだけど、具体的にはXPのPhotowiz.DLL、写真の印刷ウィザードってヤツです。
これをWin2Kでもってコマンドバッチ起動出来ないですかね?
508名無し~3.EXE:04/09/17 07:25:18 ID:jbu4QMW2
ライセンス違反の悪寒
509名無し~3.EXE:04/09/17 16:16:43 ID:f/wf/i5K
禿げしく板違いかもしれませんがが。。

officeが入っていないPCにofficeの修正モジュールをあててもエラーを吐かないようにしたいと思います
以下のようにスイッチオプション入れてるんですが、「このシステムには必要とされているバージョンの製品は有りません」のダイヤログがでてしまいます。
office2003-kb838905-client-jpn.exe /r:n /q:a

なにかスイッチオプションが足らないのでしょうか?
510名無し~3.EXE:04/09/17 16:22:13 ID:jhQyAYqK
> officeが入っていないPCにofficeの修正モジュールをあてても
知るかヴォケ
511名無し~3.EXE:04/09/17 16:46:48 ID:Wv9EO9a+
そこはかとなくスレ違い
512名無し~3.EXE:04/09/17 17:12:08 ID:f/wf/i5K
DOSバッチでInstallerを順番にキックしてるのですが
XPでは1つ目が終ったら2つ目という感じで待ってくれるのですが
同じ内容のバッチをWindows98では一気に全部キックをかけてしまっているようです
これは仕様でしょうか?
513名無し~3.EXE:04/09/17 19:27:48 ID:8vRHsVvk
>>509
多分それ以上何もできないと思う。
Officeが入っているかどうかを事前に確かめて条件分岐するように
バッチ内で仕掛けた方が確実で結果的にラクだと思うよ。

>>512
仕様かも。一行ごとに行末に /wait ってつけてもダメ?
514名無し~3.EXE:04/09/17 19:52:45 ID:ezp3bime
start /wait 実行ファイル

駄目ならあきらめろ
515512:04/09/21 14:40:01 ID:RynxcHcp
>>513 514
有難うございますm(__)m
うまくいきました
516名無し~3.EXE:04/09/21 19:00:33 ID:/2+D4uI3
質問です。
以下のcmdファイルは、ある本のサンプルなのですが、

-----------------------------------------------
@echo off

:start
set /p x="ディレクトリを指定してください(終了はend) > "

if %x%==end goto end
dir %x% /w
goto start

:end
set x=
-----------------------------------------------

最後の行の「set x=」(変数の消去?)は必要なのでしょうか?
517名無し~3.EXE:04/09/21 19:14:27 ID:6qOpERyf
使い終わったら片付ける日本人の心です
518名無し~3.EXE:04/09/21 19:24:25 ID:yuQlCquw
実用上、意味ないんじゃないの?

コマンドプロンプトの中で実行した場合や別のバッチファイルからcallして実行した場合に、環境変数xが残ってしまうので、
後続処理中で環境変数xを初期化しないで使ってたりした場合に影響するのを回避する、という効果はあるかもしれないけど。
そういう目的ではsetlocal、endlocalを使うべき。
519名無し~3.EXE:04/09/21 19:45:10 ID:/2+D4uI3
レスどうもです。

>>517
確かにそうですね。


>>518
なるほど、>>516のバッチファイルを単体で実行&終了した場合は意味がありませんが、
後に処理が続く(終了しない)場合は、変数xが残ってしまいますね。

>>516のバッチファイルから、最後の行の「set x=」を削除して、実行&終了してみても
変数xは残らないので、何の意味があるのかと思って質問してみたのですが
使い方によっては残るケースがあるのですね。

まだ始めたばかりでよく分からなかったのですが、おかげさまですっきりしました。
ありがとうございました。
520昔話:04/09/21 20:14:42 ID:bs5ubTHp
環境変数の領域サイズは標準で256バイトだったかな?
ちょっと凝ったbatを他人の環境で走らせるとすぐにエラーになったもんだ。
521名無し~3.EXE:04/09/22 03:27:47 ID:UimBm2gi
勉強用のサンプルプログラムにケチつけるのもなんだけど、
コマンドと同名のラベル名を使うセンスはいかがなものか。
522名無し~3.EXE:04/09/22 03:46:25 ID:kZrQGfFq
遅レスですが、初代スレの616さん。
あなたのFOR文の解説、自分のような初心者にもとてもわかりやすかったです。
目から鱗が落ちた気分です。
もう覗いてらっしゃらないでしょうが、この場を借りて御礼申し上げます。
523名無し~3.EXE:04/09/22 13:41:23 ID:0PX1cSCH
>>520
/eで増やせるんだっけ?
524名無し~3.EXE:04/09/22 16:12:10 ID:irWr18WH
WindowsXPHomeを使っているのですが、
コマンドプロンプトを使用してc:\u\のフォルダを開きたい(explorer.exeで)のですが
どうすればよいでしょうか?
また、同様にtxtファイルをNotepadで起動する方法もご教授お願いしますm(_ _")m

また、cdを使ってデスクトップに移るとき、cdの後はなにを入力すればよいでしょうか。どんな名前のアカウントでも成功できるようにお願いします。(私的にはアカウント名のところをAll usersに変えることくらいしか思いつきません...)
改めてご教授お願いします。
525名無し~3.EXE:04/09/22 17:33:49 ID:TuDCn/e9
explorer.exe c:\u\
notepad.exe 〜.txt
cd "%USERPROFILE%\デスクトップ"
526名無し~3.EXE:04/09/22 19:37:42 ID:irWr18WH
ありがとうございました〜
3つともうまくいきました〜
527名無し~3.EXE:04/09/22 20:25:47 ID:sEpCK+qN
.exeは必要ないが
528名無し~3.EXE:04/09/22 20:29:18 ID:+OCsnYye
むしろstartを使ってみる
529名無し~3.EXE:04/09/22 23:59:17 ID:TSdS0vR7
あえて〜.txtだけで実行してみる
530名無し~3.EXE:04/09/23 10:40:10 ID:bZTB3DFs
>>526
ついでに是非コレも試してみるといい。(Windows95/98/Me/NT/2000/XPどれでもできるはず)
explorer.exe /e,c:\u\
explorer.exe /e,/root,c:\u\
531名無し~3.EXE:04/09/24 17:32:33 ID:Kdr7n5sY
他のPC上にある共有リソースをいぢくる場合の振る舞いを知りたいのですが。

例えばバッチファイルで

1. 共有リソースをZ:にマウント
2. Z:上のファイルをローカルにコピー
3. Z:上のファイルを削除
4. Z:をアンマウント

とした場合,2のコピーが完了するまで待ってから3の削除が行われるのでしょうか。

一応テストしてみたところそのように動いているようですが,両PCが物理的にもネットワーク的にも近いため,今ひとつ確証が持てない状態です。

本番環境は物理的に結構離れているのと,コピーするファイルが結構大きいため不安なのですが,まさかエイヤでやってみる訳にもいかずに困っています。

もひとつ,上記のZ:にマウントする時,あらかじめ用意したPCのIPリストを用意してForでnet useを回すつもりですが,相手方PCが起動していない等でマウントできない事をトラップしたい場合はどうしたらよいのでしょうか。

複雑な処理がしたいわけではなくて,単にマウント出来ない→スキップが出来ればよいのですが。
あるいはWSHなどでないと実現は出来ないのでしょうか。
宜しくお願いします。
532531:04/09/24 18:12:46 ID:Kdr7n5sY
自己レス気味に。

もしや「copy じゃなくて move を使え」ってオチ?
533名無し~3.EXE:04/09/24 18:12:46 ID:zBj2jMXv
別に共有リソース上のファイルだからといってローカルファイルと
そんなに変わらないでしょう。
不安であれば、copy コマンドを使うなら/v /Y /Zオプションあたり
を使って、なおかつERRORLEVELをチェックするとか。

マウントもERRORLEVELを調べればマウントされたかどうかわかるでしょう。
534531:04/09/24 18:22:57 ID:Kdr7n5sY
>>533
ありがとうございます。

net use \存在しないPC\存在しないDir\
echo %ERRORLEVEL%

としたら ERRORLEVEL 2 が返ってきました。
これでなんとかいけそうです。
535名無し~3.EXE:04/09/26 15:06:38 ID:ZemcxdQ/
複数のコマンドを連続して使うとき、プロンプトから一度にまとめて入力できませんか?
バッチファイルは使わすに
536名無し~3.EXE:04/09/26 15:09:04 ID:xwHi2ie0
&
&&
||
537名無し~3.EXE:04/09/26 15:25:01 ID:ZemcxdQ/
サンクスコ
538名無し~3.EXE:04/09/30 02:19:31 ID:Igx4axfD
DOS窓のタイトルバーに任意の文字列をセットするにはどうするんだ
539名無し~3.EXE:04/09/30 02:20:43 ID:m6DI7PkP
title 任意の文字列
540名無し~3.EXE:04/09/30 02:27:00 ID:Igx4axfD
>>539
神認定
541名無し~3.EXE:04/10/01 18:33:11 ID:u67Y7FSi
sleep.exe を使わずにウェイトをとるのに ping を使うってのが挙げられているけど
kernel32.dll の SleepEx を使う方法ってないかな
542名無し~3.EXE:04/10/02 13:13:13 ID:MKQchUCv
APIはUIじゃない。
543名無し~3.EXE:04/10/02 13:29:32 ID:jZ9hOY9T
アニメじゃない
544名無し~3.EXE:04/10/04 19:47:32 ID:OiHYAvyt
検索しても分からなかったんだけど
titleコマンドは、95/98/Meでも使える?それとも2000/XP専用?
545名無し~3.EXE:04/10/04 22:30:09 ID:rMfgKGrA
普通に検索したらすぐに分かるはずだが
ttp://forum.nifty.com/fpcu/dosvcmd/index1.htm
546名無し~3.EXE:04/10/04 23:50:56 ID:OiHYAvyt
>>545
あれ?そんなページ出てこなかったけど・・・検索の仕方が悪かったか。
このページすごいな。お気に入りに入れて勉強しよ。
サンクス。
547名無し~3.EXE:04/10/11 04:27:33 ID:eb2RKJf8
質問です。

xpで、data1.dat 〜 data200.dat を
data001.dat 〜 data200.dat に名前変えようと思って

ren test?.dat test00?.dat
(ren test??.dat test0??.dat)

ってしたらtest00.dat ができるだけで上手く動作しないんですけど、
ワイルドカードの認識がおかしくなったりするのでしょうか?
何とか上のように動作するコマンドはできないものでしょうか。
548名無し~3.EXE:04/10/11 15:33:47 ID:Vu7lSNRb
for /l %a in (1,1,9) do ren data%a.dat data00%a.dat
for /l %a in (10,1,99) do ren data%a.dat data0%a.dat
549名無し~3.EXE:04/10/11 17:13:03 ID:eb2RKJf8
>>548
for 使えばよかったんですね。
ありがとう。
550名無し~3.EXE:04/10/11 20:39:08 ID:cA0w3+PO
で、じっさいの拡張子は.jpgだったりするんだよね。
551名無し~3.EXE:04/10/18 23:41:47 ID:HDp6Y9L8
プロセス一覧を取得するコマンドはなんでしょうか?
552名無し~3.EXE:04/10/18 23:48:24 ID:4fZZLXcR
tasklist
553名無し~3.EXE:04/10/19 08:14:11 ID:kVI5rkAp
>>551
フリーソフト WKILL.EXE
554名無し~3.EXE:04/10/20 01:56:19 ID:O/Bn26aN
質問する人は、使用してるWinのバージョンも書いてくれるとありがたいなと思うこの頃。
(バージョンによっては使えない機能があるので)
例えば>551の質問はXPなら>552で正解だけど、2k以前だと>553。
555名無し~3.EXE:04/10/20 03:44:24 ID:TWT6y3C2
Windows XP [Version 5.1.2600]

拾ってきたsedコマンドであれこれした値を変数に入れる方法がわかりません。
"cut3 MPA T01 DELAY 17ms.mpa.ogg"というファイルがあるとして
dir /b "cut3 MPA T01 DELAY *ms.mpa.ogg" | sed 's/ms.mpa.ogg$//'|sed 's/^%~n1 MPA T01 DELAY //'
で'17'という値を取り出したまではいいんですが、それを変数"DELAY_TIME"に入れるにはどうすればいいでしょうか?
set DELAY_TIME=`command` みたいなコマンド置換でいけると思ったのですが・・
556名無し~3.EXE:04/10/20 08:02:56 ID:52zotFD3
for /f %a in ('command') do set DELAY_TIME=%a
557555:04/10/20 13:43:32 ID:3U2oyKqO
>>556
ありがとうございます。それでうまくいきました。
for /f %%a in ('dir /b "cut3 MPA T01 DELAY *ms.mpa.ogg" ^| sed "s/ms.mpa.ogg$//" ^| sed "s/^cut3 MPA T01 DELAY //"') do set DELAY_TIME=%%a
558553:04/10/20 19:37:05 ID:qI2tmIm4
>>554
俺のWinXP(HOME)SP1では>>552でダメだったんだが。
559名無し~3.EXE:04/10/21 00:38:03 ID:dZ7cXOBo
tasklistはXP pro専用
560名無し~3.EXE:04/10/21 00:38:28 ID:dZ7cXOBo
ageちった。スマソ
561名無し~3.EXE:04/10/21 09:15:00 ID:h+3Ml29M
質問です。
dir hoge > c:\temp.log 2>&1 と
dir hoge 2>&1 >c:\temp.log で結果が違うのはどうしてですか?

[Microsoft Windows XP [Version 5.1.2600]
562名無し~3.EXE:04/10/21 10:45:50 ID:epABODDf
上はdir hogeの標準出力をtemp.logにリダイレクトするときに
標準エラー出力を標準出力(temp.log)にリダイレクトする記述だから
temp.logに標準出力と標準エラー出力が書き込まれる。

下はdir hogeの標準エラー出力を標準出力(コマンドプロンプト)
にリダイレクトしてから、標準出力をtemp.logにリダイレクトする記述だから
temp.logに標準出力だけが書き込まれる。
563名無し~3.EXE:04/10/21 19:59:54 ID:BEDyS9CS
つまり、ご飯とみそ汁として食べるか、ねこまんまにして食べるかの違いってことか。
564名無し~3.EXE:04/10/21 20:24:13 ID:ipvEKP2V
ちょっとワロタ
的確な例えだな。
565名無し~3.EXE:04/10/21 23:37:37 ID:h+3Ml29M
>>562
ありがとうございました。
566名無し~3.EXE:04/10/22 23:56:35 ID:S9PIxVz7
ネットワークドライブを使っているんですが、xpってパスワードを記憶できないので、
起動時に毎回 net use で、パスワードを使って接続しているんですが、delete
せずに同じ資源に何回も接続するのってまずいでしょうか?
567名無し~3.EXE:04/10/23 01:47:46 ID:NQKDzCFn
サーバ側でセッションが残っちゃう、とかそういう心配ですか?
普通は大丈夫だよ。
568名無し~3.EXE:04/10/30 21:41:26 ID:MHBQ3rx2
すみません。
Support Toolsのkill.exeについて聞きたいのですが、
TEST.bat(中身は 「"D:\Program Files\Support Tools\kill.exe" msnmsgr.exe」 一行だけ)
を実行しても、
MSN Messengerのような、右上の×を押すとタスクトレイに収納されるタイプのソフトが終了できません。
何かいい手はないでしょうか?
お願いします。
569名無し~3.EXE:04/10/30 21:47:11 ID:WmuSfOz8
>>568
taskkill だと /F がある
570名無し~3.EXE:04/10/30 21:55:48 ID:PgoLk81I
Support Toolsのkillにも-fオプションはあるね。
これで望みのことが出来るのか分からんけど。
571名無し~3.EXE:04/10/30 22:11:56 ID:MHBQ3rx2
>>568
kill でも同様に /F で終了できました。
ありがとうございました。
572名無し~3.EXE:04/10/30 22:14:45 ID:MHBQ3rx2
リロードしたら>>570にもレスが
無事出来ました。

ていうか、>>571>>568は間違えで>>569です(汗
573名無し~3.EXE:04/10/31 00:08:45 ID:wsLzORks
どうかお助けを。
Javaプログラムから、入出力を扱うプログラムを別プロセスとして
起動したいのです。その際には別プロセスのプログラム起動時に
コマンドプロンプト(ウィンドウ)を出したいわけです。
これの方法が分からなくて困っています。

例えばコマンドプロンプト上で新しいプロンプトウィンドウを出す
方法が分かれば解決しそうなのですが…。プロンプト上で cmd も
command.com も実行しても新しいウィンドウは出来ないし…。

どなたか有効な方法を知っている人います?
574573:04/10/31 00:10:45 ID:wsLzORks
バージョンは
Microsoft Windows XP [Version 5.1.2600]
です。
575名無し~3.EXE:04/10/31 00:33:41 ID:zCu55+Mg
start
576573:04/10/31 00:48:16 ID:wsLzORks
どうしてもできないから WSH を使って何とか実現する方法を検討してた
俺が馬鹿だった…… orz

ありがとうございました!
577名無し~3.EXE:04/10/31 19:11:41 ID:TgaQy91R
コマンドスクリプトで、
あらかじめダウンロードしてある修正プログラムをまとめてインストールしたいんですけど、

E:\update\KB87654321.exe

の後に何のオプションつけるですか?
578名無し~3.EXE:04/10/31 22:28:31 ID:ecXijKhO
がらーーーーーん
579578:04/10/31 22:29:21 ID:ecXijKhO
すまん誤爆。
580名無し~3.EXE:04/10/31 23:00:21 ID:0ZtRzk+g
581名無し~3.EXE:04/11/01 00:12:41 ID:6T0te4FD
>>580
thanks!
582名無し~3.EXE:04/11/02 17:36:40 ID:ZQf/yOfd
xcopy 使ってるんだが、一つ不満が…
ディレクトリのタイムスタンプがコピーした日時になってしまう…。

なんかお薦めない?
583名無し~3.EXE:04/11/02 20:17:09 ID:PBUDtgF5
/dスイッチ付けて2回コピーすれば2回目に直るよ。

xcopyの処理が、先ずフォルダをコピーして、その次にそのフォルダの中身を
コピーするので、サブフォルダやファイルがコピーされ作られるタイミングで
親フォルダの更新日時が変わってしまうみたい。
584名無し~3.EXE:04/11/02 21:51:26 ID:ZQf/yOfd
>>583 レスどうも。試して見たが、うまくいかない。
ほとんどのディレクトリのタイムスタンプだけがコピーした日時になってる…
585名無し~3.EXE:04/11/02 22:33:48 ID:PBUDtgF5
OSのバージョンと、試したxcopyのコマンドライン晒して。
Windows 2000で確認したけど

    xcopy /d /e /i コピー元フォルダ コピー先フォルダ

で上手くいったよ。
586名無し~3.EXE:04/11/02 22:42:20 ID:pU4/JvyW
ディレクトリの日時変更ができないのは大昔からの伝統です。
587名無し~3.EXE:04/11/02 23:53:27 ID:ZQf/yOfd
>>585
あぁ、解った。最初の xcopy の時も /d オプション必要ってことね。これを忘れてた
「ファイル」はコピー必要ないから、/t オプションでやるといいね。

でも、2回実行しないといけないというのがなんとも…

ありがとう。解決できた
588名無し~3.EXE:04/11/04 16:58:38 ID:6or29jTn
サーバー:Win2000
クライアント:Win98

〜nanika.ini〜
名前,ログオンユーザー名,グループA
名前,ログオンユーザー名,グループB


この環境下でログオンスクリプトでドメイングループを判別して分岐したいと思っています。
for /f "tokens=3 delims=," %%i in ('findstr /b "%username%" nanika.ini') do call :nantoka %%i

:nantoka
if %i == "グループA" goto :Adazo
if %i == "グループB" goto :Bdazo

という式だと構文が違うと言われ、ifmemberで出来たら言うこと無しですがコマンド認識されず。
かなりお手上げ状態なんですが、何か方法がありますでしょうか?

やっぱりW98でドメイングループの取得って不可能でしょうか・・・・
589名無し~3.EXE:04/11/04 18:49:16 ID:Q2MFgcXS
そもそも、win98 のコマンドプロンプトで for /f が使えてるの?
590名無し~3.EXE:04/11/04 20:10:34 ID:PJfdGZhf
Win98は、findstrやcallのターゲットがラベルってのも使えない
591名無し~3.EXE:04/11/04 22:15:18 ID:N/Hk6x7R
これ使えば出来るかも。
http://www.kixtart.org/
592名無し~3.EXE:04/11/07 16:28:02 ID:ASyece9I
特定のディレクトリ下にある全てのディレクトリに特定のディレクトリを追加するコマンドを教えてください。
よろしくお願いします。
593名無し~3.EXE:04/11/07 16:42:16 ID:chOtDTuH
訳がわからん
594名無し~3.EXE:04/11/07 16:54:25 ID:a2U8T7Fo
よし、宇宙語検定4級の俺が翻訳してみよう。

C:\
 └hoge
   ├foo1
   ├foo2
   └foo3

C:\
 └hoge
   ├foo1
   │└test
   ├foo2
   │└test
   └foo3
    └test
こんな感じか?
595名無し~3.EXE:04/11/07 17:02:33 ID:Q6luK+LJ
リパースポイントのことか?
596名無し~3.EXE:04/11/08 03:05:49 ID:wRbkix0B
あの、9x/MeでDOSプロンプトのフォントを好きなものに変更する
ことってできますか?
↓によると、PIFMGR.DLL を書き換えることによって、MSゴシック
をMS明朝には変更できるんですが、同じやり方で他のフォント名
に書き換えても、切り替わらないんです(MSゴシックのまま)。

ttp://www.alles.or.jp/~sfujita/jpn/doodle12.htm#2003-0218

ちなみに切り替えたいフォントは、JISX0213対応のHabianというフォント
です。
597名無し~3.EXE:04/11/09 19:23:20 ID:RBqveJIU
「FIND /N "文字列" 対象ファイル」とすると
「[行番号] ファイル名」のように結果が出るが、
この検索語が見つかった[行番号]を変数に入れたい。
無理?
598名無し~3.EXE:04/11/09 19:48:53 ID:y2lqokml
>>597
for /f
599名無し~3.EXE:04/11/10 08:51:35 ID:HL+LowNI
>>597
Win95/98/Meでは無理。
600597:04/11/10 09:52:25 ID:7TFkKkwx
>>598
FOR /F "delims=]" %%i IN ('FIND /N "文字列" 対象ファイル') DO SET G=%%i
SET G=%i:~1%
で出来た。ありがとう。
601597:04/11/10 09:53:08 ID:7TFkKkwx
>>599
私はXPだ。君にも感謝する。ありがとう。
602名無し~3.EXE:04/11/14 06:16:05 ID:NEYZVDiV
ipconfig = linuxのifconfigと思ってたら違った
MS-DOSでネットワークを有効/無効にするコマンドってある?
GUIでやるしかないですか?
603名無し~3.EXE:04/11/14 06:58:12 ID:u6UOO3EA
netshとかでできそう
604602:04/11/14 07:57:30 ID:NEYZVDiV
>>603
レスどうもです。
netshでネットワークインターフェースを有効/無効にするものは見つかりませんですた...
605名無し~3.EXE:04/11/14 09:22:17 ID:l5zqFr65
netsh じゃできなかったはず
606名無し~3.EXE:04/11/14 09:58:12 ID:sMNe0LIb
あるファイルの9行目だけをバッチで書き換えるということは可能でしょうか?
CD ディレクトリ名
EDLIN "ファイル名"

で出来そうな気がするんですが。
607名無し~3.EXE:04/11/14 10:25:35 ID:oDrWNyoD
>>602
XPだけど、こんなWSHでできた。(vbs)

Const ssfCONTROLS = 3
sConnectionName = "ローカル エリア接続"
sEnableVerb = "有効にする(&A)"
sDisableVerb = "無効にする(&B)"
set shellApp = createobject("shell.application")
set oControlPanel = shellApp.Namespace(ssfCONTROLS)
set oNetConnections = nothing
for each folderitem in oControlPanel.items
if folderitem.name = "ネットワーク接続" then
set oNetConnections = folderitem.getfolder: exit for
end if
next
if oNetConnections is nothing then
wscript.quit
end if
set oLanConnection = nothing
for each folderitem in oNetConnections.items
if lcase(folderitem.name) = lcase(sConnectionName) then
set oLanConnection = folderitem: exit for
end if
next
if oLanConnection is nothing then
wscript.quit
end if
608名無し~3.EXE:04/11/14 10:26:13 ID:oDrWNyoD
続き

bEnabled = true
set oEnableVerb = nothing
set oDisableVerb = nothing
s = "Verbs: " & vbcrlf
for each verb in oLanConnection.verbs
s = s & vbcrlf & verb.name
if verb.name = sEnableVerb then
set oEnableVerb = verb
bEnabled = false
end if
if verb.name = sDisableVerb then
set oDisableVerb = verb
end if
next

if bEnabled then
oDisableVerb.DoIt
else
oEnableVerb.DoIt
end if

wscript.sleep 1000
609名無し~3.EXE:04/11/14 15:58:14 ID:+L/VtnWt
DOSプロンプトが開けない。どうなってしまったんだマイPCよ。・゚・(ノД`)・゚・。
610名無し~3.EXE:04/11/14 16:42:13 ID:tA5R8ATb
年の瀬も近づいてきました
再インスコの季節ですね!!
アヒャ
611名無し~3.EXE:04/11/14 18:36:47 ID:XmQ32DXt
ftpコマンドでパーミッションの変更ってできないでしょか?
ヘルプ見てみたけど、それらしいコマンドがない
612名無し~3.EXE:04/11/14 18:47:04 ID:4KEmwk1X
ssh でいいじゃん
613名無し~3.EXE:04/11/14 18:48:17 ID:oDrWNyoD
>>611
quote site chmod xxx hoge
xxxは755とか666とかね
hogeはファイル名
614名無し~3.EXE:04/11/14 18:54:17 ID:XmQ32DXt
>>613
おお、できました。
サンクス

ftp> quote site chmod 705 cgi-bin
200 SITE CHMOD command successful.
615602:04/11/14 22:59:10 ID:NEYZVDiV
>>607
レスさんくす
早速ためしてみるよん.
けっこう大変そうだね.
プログラマブルにネットワークを有効/無効にする必要ってあまり無いんだろうけど...
616602:04/11/14 23:21:07 ID:NEYZVDiV
>>607
できた! サンキュー!
ちなみにWin2kでは "ネットワークとダイヤルアップ接続" でいけました
これからvbsも勉強すっか
617名無し~3.EXE:04/11/15 14:02:42 ID:byoCyUKl
>>609
XPじゃないけど、環境変数の「プロンプト」がおかしくなるとどうにかなるという話が
618名無し~3.EXE:04/11/15 22:03:42 ID:aWq5nOp+
>>617
俺もXPじゃないです_| ̄|○
環境変数・・・少し調べてみます
619名無し~3.EXE:04/11/17 14:50:01 ID:pGHvDX7B
>>618
W2k なら ComSpec の値がおかしいとダメになる。
デフォルトでは %SystemRoot%\system32\cmd.exe で、これは変更しないのが普通
620名無し~3.EXE:04/11/21 02:28:17 ID:bASGCK7N
SET mojistr="uuu"fff
FOR /F %%i IN ('FIND "%moji%" test.txt') DO ECHO %%i

とすると、

INの中で「""」を「uuu" test.txt」から探すという風になってしまうんですが、
回避できますか?
621名無し~3.EXE:04/11/21 04:03:37 ID:3P8rS4ul
ファイルに吐き出してfindstr /g

echo "uuu"fff>foo.tmp
for /f %%i in ('findstr /g:"foo.tmp" test.txt') do echo %%i
del foo.tmp
622620:04/11/21 14:22:55 ID:bASGCK7N
>>621
どうも"の使い方がまずかったようで、
SET mojistr=""uuu"fff"
FOR /F %%i IN ('FIND %mojistr% test.txt') DO ECHO %%i"
と予め%mojistr%に""を含めてやるといけました。
教えてもらったのにすみません。
623名無し~3.EXE:04/11/22 21:25:40 ID:Sh7AJFLN
はじめまして、
皆さんに教えてもらいたいことがあります。

バッチファイルを作っているのですが、その過程で
「tabキーを2回押して、Enterを押す」っていうのは
どのように記述すればいいのでしょうか?
教えてください。

よろしくお願いします。
624名無し~3.EXE:04/11/22 21:32:08 ID:aap4pp80
echo
echo
echo.

(echo & echo & echo.) | hogehoge
625623:04/11/22 21:47:28 ID:d7AS6F+3
>>624

すいません。もう少し詳しく教えてくださりませ。
よろしくです。
626名無し~3.EXE:04/11/22 21:56:18 ID:aap4pp80
あー、投稿したらTabが消えてるのか
627名無し~3.EXE:04/11/22 22:22:29 ID:7UeX8T1J
たぶん違うことをしたいんじゃないのかな。
↓こういうのとか?
http://www.atmarkit.co.jp/fwin2k/operation/wsh05/wsh05_04.html
628名無し~3.EXE:04/11/23 22:35:09 ID:WTW0KwfL
unix の touch に相当するコマンドは?
629名無し~3.EXE:04/11/23 23:12:43 ID:n/+PJyc6
0バイトのファイル作るなら
type AAA.txt>AAA.txt
630名無し~3.EXE:04/11/24 00:00:31 ID:2JPIXWFI
>>629
Win9xなら
rem>AAA.txt
でよかったのにな。ファイル名を2度打たなければならないのが面倒だ。
631名無し~3.EXE:04/11/24 00:13:41 ID:KylFlpvi
>>630
要は空であればなんでもいいので
type nul>AAA.txt
632名無し~3.EXE:04/11/24 01:25:12 ID:2JPIXWFI
>>631
あ、そうすればよかったのか。
633名無し~3.EXE:04/11/24 01:43:15 ID:ltSjBBkd
>>631
それだ!
>>630
え?って事は、バッチファイルで>がある行のコメントアウトってどうやるの?
634名無し~3.EXE:04/11/24 04:24:55 ID:2JPIXWFI
>>633
remだとできないんだったかな?忘れた。
行頭に : をつけてラベルにしてしまえば、事実上コメントになる。
:/ などとして : の次の文字をラベルとして使えない文字にすると実行速度が少し上がるらしい。
remと違って、echo onでも表示されないという違いもある。
ちゃんと2k/XPでも使える。
635628:04/11/24 15:30:35 ID:0Xuuhc/Z
(´д⊂ヾ
636名無し~3.EXE:04/11/24 19:27:07 ID:KU8BVTJn
>>635
標準コマンドには無い。
フリーソフトならいくらでもある。
637名無し~3.EXE:04/11/24 19:50:06 ID:ltSjBBkd
つか、なにがしたいのか言えば?更新日付の変更?
638名無し~3.EXE:04/11/24 21:54:54 ID:s3xgEHZN
質問。
ipconfig/flushdnsって入力

関数は実行中に失敗しました。

dnsキャッシュが消えないんです。助けてください。
639名無し~3.EXE:04/11/24 22:34:08 ID:ardm/5FU
ipconfig と /flushdns の間に半角空白入れた?
640638:04/11/24 23:21:49 ID:s3xgEHZN
>>639
はい。
http://haiiro.info/up2/file/3599.jpg
こんな感じです。
641名無し~3.EXE:04/11/25 12:20:49 ID:u3EZMgi1
>>607
無効→有効にするWSHってどんな感じでしょうか?
いろいろとカスタマイズしてみたんですが、うまくいかないもので・・・
642名無し~3.EXE:04/11/25 12:30:54 ID:u3EZMgi1
>>641
補足
無線LANがうまくつながらないので、
対応策として無効→有効を手動で実行中!!
スタートアップかなんかに入れて自動に出来れば・・・
うまい方法ありますか?
643名無し~3.EXE:04/11/25 20:59:17 ID:4PPMAVZO
WIN98まであったCHICEに変わるものご存知ですか?
バッチファイル内の処理を一定時間まって次の処理にもって行きたいので。
WinXP-PRO対象です。
644名無し~3.EXE:04/11/26 14:36:41 ID:b/FlSpHD
>>641
有効の時に実行すれば無効に
無効の時に実行すれば有効になるよ。
645名無し~3.EXE:04/11/26 15:55:52 ID:UFVxRPoY
>>640
ipconfig /displaydns でDNSリゾルバのキャッシュは表示できる?
646名無し~3.EXE:04/11/26 16:03:52 ID:b/FlSpHD
>>643
http://www.geocities.co.jp/SiliconValley-SanJose/6898/soft.htm
ここにchoice完全互換のソフトがあるよ。
647名無し~3.EXE:04/11/26 17:22:28 ID:AlBP7chn
>>644
こんな感じでしたいんですよ・・・・
有効(実行前)→無効→有効
いわゆる再起動見ないな感じですかね?
648名無し~3.EXE:04/11/26 18:15:58 ID:b/FlSpHD
>>647
このスクリプトを2回連続して実行すれば有効->無効->有効となると思うけど
1つにまとめればこんな感じかな。

Const ssfCONTROLS = 3
sConnectionName = "ローカル エリア接続"
sEnableVerb = "有効にする(&A)"
sDisableVerb = "無効にする(&B)"
set shellApp = createobject("shell.application")
set oControlPanel = shellApp.Namespace(ssfCONTROLS)
set oNetConnections = nothing
for each folderitem in oControlPanel.items
if folderitem.name = "ネットワーク接続" then
set oNetConnections = folderitem.getfolder: exit for
end if
next
if oNetConnections is nothing then
wscript.quit
end if
set oLanConnection = nothing
for each folderitem in oNetConnections.items
if lcase(folderitem.name) = lcase(sConnectionName) then
set oLanConnection = folderitem: exit for
end if
next
if oLanConnection is nothing then
wscript.quit
end if
649名無し~3.EXE:04/11/26 18:16:52 ID:b/FlSpHD
set oEnableVerb = nothing
set oDisableVerb = nothing
for each verb in oLanConnection.verbs
if verb.name = sDisableVerb then
set oDisableVerb = verb
oDisableVerb.DoIt
wscript.sleep 1000
end if
next

for each verb in oLanConnection.verbs
if verb.name = sEnableVerb then
set oEnableVerb = verb
oEnableVerb.DoIt
wscript.sleep 1000
wscript.quit
end if
next
650638:04/11/26 20:29:47 ID:+csQtnBp
>>645
できません…。何でですかね?
651名無し~3.EXE:04/11/26 20:45:52 ID:rXrnIGE6
DNS Clientサービスが止まっているに、13ペソ
652638:04/11/26 22:57:39 ID:+csQtnBp
DD@@@
↑とっといて下さい。ベリーサンクスコ。
653名無し~3.EXE:04/11/28 07:15:54 ID:hJH5v4eL
チェックディスクした後、そのままデフラグするコマンドってできるんでしょうか?
654名無し~3.EXE:04/11/28 10:02:39 ID:iQ/Q0qnt
すっきりデフラグ
655名無し~3.EXE:04/11/28 10:37:19 ID:aFfxb8Z6
chkdsk
defrag
656名無し~3.EXE:04/11/29 04:21:50 ID:3EBKbMPV
>>654
やはりそれしかないのかな…
657名無し~3.EXE:04/11/29 05:57:32 ID:Cjb89vYZ
え、、ああそうだね、そうした方が良いよ。
質問なんですがバッチファイル内で日付DT名を参照して処理する方法が判りません

for /F "tokens=1-3 delims=/ " %%a in ('date /t') do SET DT=%%a%%b%%c
md %DT%と作るのはいいのですが
この後xcopyしたフォルダを他の(diff処理)バッチ内で処理する際
前日と今日の日付のフォルダ名をうまく扱えないので
誰かご教授下さい。

diffコマンド以下のデイレクトリ選択で上で作成した今日のdate DTと
昨日のdate DTを扱うにはどうすれば
いいんでしょうか?temp以後を手動で直して使うのが悲しいです。。。。
なので定時処理できず。あとプロント画面を出力してtxtファイル化するコマンドな
んてありますか?出来ないのかな。
diff.exeにそれらしき結果txt出力のオプションが見当たらない気がしたので。。。
プロントを選択してコピーする手作業なんです。

diff.exe /temp/20041128/ /temp/20041129/

をdiff.exe /temp/2004*/ /temp/*/など凡庸にしてcornやタスクで動かしたいのですが
無理でした。。。回避できますでしょうか。ご教授下さい。

環境はM$ W2kです。
659名無し~3.EXE:04/11/29 17:20:33 ID:RrR1RF59
-1でいいならSET /A

SET /A DT=%date:/=%-1
diff.exe /temp/%DT%/ /temp/%date:/=%/
660名無し~3.EXE:04/11/29 18:32:44 ID:3EBKbMPV
>>657
頭悪そう
661名無し~3.EXE:04/11/29 19:24:08 ID:WMBR/9F4
>659様ありがとうございます。
悲しいことに/temp/0/となってエラーが起きてしまいます。
せっかくヒントを下さったのに回避できません。orz....
どうかお教えて下さい。教えて君ですみません。

C:\Documents and Settings\Administrator\デスクトップ\dl\agent 補完代行評価版 
調査中\diff関連\GNU diffutils 2.7.2 (Win32 版)>SET /A DT=月 20041129-1
演算子がありません。

C:\Documents and Settings\Administrator\デスクトップ\dl\agent 補完代行評価版 
調査中\diff関連\GNU diffutils 2.7.2 (Win32 版)>diff.exe /temp/0/ /temp/月 20041
129/
diff.exe: extra operand `20041129/'
diff.exe: Try `diff.exe --help' for more information.

C:\Documents and Settings\Administrator\デスクトップ\dl\agent 補完代行評価版 
調査中\diff関連\GNU diffutils 2.7.2 (Win32 版)>pause
続行するには何かキーを押してください . . .
662名無し~3.EXE:04/11/29 19:35:39 ID:ur8EgY0p
>>648
あいがとございます。

いろいろためしてみます。


ついかなんですが、起動時に強制的に無効になるように設定してもいいかなと思っているんですが・・・
スクリプト分らないので、協力お願いできますか?
(WSHの本を買ってみたんですが、すぐに必要なので・・・)
663名無し~3.EXE:04/11/29 19:55:41 ID:RrR1RF59
>>661
すまん %date:/=% がよろしくなかった
XPだと曜日が入らんもんで
664名無し~3.EXE:04/11/29 20:38:54 ID:WMBR/9F4
663様すいませんです。
XPだと曜日が>Windows 2000の場合は%date%の先頭に曜日が表示されるので、これを取り除くためには、%date%ではなく、%date:~-10%とする。これにより>
と@ITにあり試したら今度は>SET /A DT=2004/11/29/=-1
オペランドがありません。

と言われてしまいました。w2kでもXPでも同じ事をするのに
書き換えが必要なのが判りました。
しかしオペランド。
無理なのでしょうかorz.....

お書きしていただけ得ると助かります。たびたびすいません。
665名無し~3.EXE:04/11/29 20:57:31 ID:RrR1RF59
>>664
@ITの見たけど俺よりあっちを参考にしたほういいね
月初めとかまったく頭に無かったし
666名無し~3.EXE:04/11/29 21:13:41 ID:WMBR/9F4
すいませんでした。
簡単にw2kで処理できればいいのでお願いします。しっこくてすいません。

XPでdateから1引く処理>w2Kでdateから1引く処理に翻訳してもらえないでしょうか。
うるう年とか月初めとか色々考慮した
プログラマブルにしだすと私には荷が重過ぎます。

なので-1でいい教えてくださったSET /Aがいいでつ。なのにうまくいかないです(泣)
667名無し~3.EXE:04/11/29 22:42:27 ID:WMBR/9F4
>665様
色々ありがとうございました。うまくいきませんが諦めました。

668名無し~3.EXE:04/11/30 01:46:16 ID:sxmoyn4w
>>667
FOR /F "eol=; tokens=1,2,3 delims=/ " %%i IN ('DATE/T') DO @SET NITIJI=%%i%%j%%k
FOR /F "eol=; tokens=1,2 delims=: " %%i IN ('TIME/T') DO @SET NITIJI=%NITIJI%%%i%%j

WinNT/2000/XPなら、以上2行を上から順番に実行する手もあるが。
669名無し~3.EXE:04/12/01 02:27:37 ID:fMgykhGn
>667様ありがとうです。
優しい方がいて下さって感謝感激です。

diff.exe /temp/20041129/ /temp/20041130/ > diff.txt
diffは昨日の処理分データと今日の処理分データを比較して差分テキストを作るのですが

diff.exe temp/前日分をシステムの関数から取る/ temp/今日の分をシステムの関数から取る
と意図したとうりならず
対象日付がうまく生成されずに比較対照(デイレクトリ)を見失い
比較対照に失敗してしいる様でextra oplaterと返してきます

定時処理化は無理そうでワンライナー書いてます。
可能なら定時処理したいのですが、難しいです(泣)

パッチの中で2つの時刻様子をうまく指定する方法が判りません。
自力では無理ぽ。諦めてます。出来るんでしょうか?

出来た方がいたら神だって崇めます。もう無理ぽ。疲れますた。ワンライナーでいいやって
投げてしまいました(涙)回避できますか?

諦めが悪くてスマソ。逝って来ます。
670名無し~3.EXE:04/12/01 19:55:18 ID:CEc+7TQM
コマンドの使い方じゃなくてロジックに頭を使え。
671名無し~3.EXE:04/12/01 20:34:13 ID:ZL/YfUr2
ロジックじゃないものね、男と女は。そうでしょ?
672名無し~3.EXE:04/12/01 22:14:20 ID:fMgykhGn
上書き込みしたdiffな問題回避できました。
スレの答えて下さった方ありがとうございました。
673一足遅かった?:04/12/02 01:57:39 ID:6Vj4tD3S
別に計算しなくても良いんではないかと。

set now=%date:~-10,4%%date:~-5,2%%date:~-2%
for /f "tokens=1,2" %%i in ('type date.txt') do (
if not "%%j"=="%date:~-10,4%%date:~-5,2%%date:~-2%" (
 echo %%j %date:~-10,4%%date:~-5,2%%date:~-2%>date.txt
 set day1=%%j
 set day2=%date:~-10,4%%date:~-5,2%%date:~-2%
) else (
 set day1=%%i
 set day2=%%j
))

echo 1=%day1%
echo 2=%day2%

遅延環境変数使えばもう少し綺麗に書けるかと。
674名無し~3.EXE:04/12/02 12:56:15 ID:V8jC1Q8j
>673様ありがとうございます。一応回避はでき定時処理は出来ました。
675名無し~3.EXE:04/12/05 12:37:16 ID:G+Pyzic8
FTPでBookmarkの共有をしようと思い
コマンドプロンプトでやろうと思うのですが
手動でやるとうまくいき、Batでやるとうまくいきません・・・・
FTPのバッチ作成の解説があるURLってありますでしょうか・・・

ログインもできない状態です。。。。
誰か誘導キボン
676名無し~3.EXE:04/12/05 12:53:50 ID:GiW25Jxt
>>675
「FTPのバッチ」でぐぐれ
677675:04/12/05 13:15:20 ID:G+Pyzic8
>>676
一発で出てきた・・・1時間ググッても出てこなかったのに。。。
678名無し~3.EXE:04/12/05 23:48:40 ID:CJUVz1F5
頑張ってもできなかったので
質問させて下さい。
-----------------------------
get IEXPLORE.EXE URL >test1.htm
-----------------------------

複数個まとめてバッチにすると出来ません(泣)
-----------------------------
get IEXPLORE.EXE URL>test1.htm
get IEXPLORE.EXE URL>test2.htm
-----------------------------
併記しても駄目でした。
-----------------------------
get IEXPLORE.EXE URL>test1.htm URL >test2.htm

-----------------------------
start IEXPLORE.EXE URL1
start IEXPLORE.EXE URL2
-----------------------------
などは出来るのですが、getだと出来ません。なんでなんでしょうか。
多分自分の記述のせいだと思うのですが、出来ない事なのでしょうか
679名無し~3.EXE:04/12/05 23:52:15 ID:CJUVz1F5
get IEXPLORE.EXE URL >test1.htm
----------------------------------------------------------
ワンライナーなら成功しますがまとめて処理したいのに出来ないです。
680名無し~3.EXE:04/12/06 00:00:47 ID:E4qqIDSa
>>679
それ、どうやって使うの?
解説があるURL紹介してくれ。
681名無し~3.EXE:04/12/06 00:00:57 ID:NOzKucCr
>>678
getってどこで配付されているの?
標準で入っていないから確認出来ないよ
682678:04/12/06 00:57:01 ID:WJVP2I/L
URLは適当に入れてコマンドラインで貼りつければ出来ます。

start IEXPLORE.EXE http://pc5.2ch.net/test/read.cgi/win/1062775949/l50
でこのスレがIEで表示されます

get IEXPLORE.EXE http://pc5.2ch.net/test/read.cgi/win/1062775949/l50 >test.htm
でこのすれが保存できます。

問題は複数まとめて1つのバッチでうまく保存できないので、ショートカットで実行じゃ使用に耐えない事。
ブラウザをコマンドラインから操りたい。自動で操作したいのですがまとめて1つのバッチでうまく保存出来ない
ので困ってます。



683名無し~3.EXE:04/12/06 01:00:26 ID:mRiFhLjh
話が通じてない・・・・
684名無し~3.EXE:04/12/06 01:04:18 ID:WJVP2I/L
get IEXPLORE.EXE http://pc5.2ch.net/test/read.cgi/win/1062775949/l50

だとベタソースがプロントに流れる。
2ちゃんお気に入りスレチェックバッチなんて定時実行したいんですがw
UA厳しいのでIEブラウザでやりたいんですが書式がNGなのか
記述がNGなのか試行錯誤してみてます。
685名無し~3.EXE:04/12/06 01:10:28 ID:E4qqIDSa
>>684
Windowsには get というコマンドは無い。といっているのが判らんのか?
686名無し~3.EXE:04/12/06 01:16:48 ID:WJVP2I/L
getメゾットはブラウザに与える挙動の属性の1つ(正確なプログラムの定義じゃないと思うw)
ネットワークプログラムしたくて彷徨ったついでに得た知識

cmd固有の物では無い。

一般的にブラウザに内包されているパラメータのようで
IEやネスケ タブラウザなんでもあると思う。

URLは知らん。忘れた。IEでも動いたしunDonutでも動く。
687名無し~3.EXE:04/12/06 01:18:28 ID:G582bXre
話がかみ合ってないよ、こいつ
688名無し~3.EXE:04/12/06 01:19:07 ID:/uriwBh/
( ゚д゚)ポカーン
689名無し~3.EXE:04/12/06 01:23:38 ID:WJVP2I/L
試してみ
690名無し~3.EXE:04/12/06 01:24:58 ID:/uriwBh/
>>689
$ which get
get: Command not found.
691名無し~3.EXE:04/12/06 01:31:01 ID:WJVP2I/L
うそだろ。環境で違うのか?
w2kでIE6

get IEXPLORE.EXE http://pc5.2ch.net/test/read.cgi/win/1062775949/l50
でhtmlソースベタでプロントに出るゾ

06 01:16:48 ID:WJVP2I/L<dd>getメゾットはブラウザに与える挙動の属性の1つ(正確なフ
゚ログラムの定義じゃないと思うw)<br>ネットワークプログラムしたくて彷徨ったついでに得た
知識<br><br>cmd固有の物では無い。<br><br>一般的にブラウザに内包されているパラメ
ータのようで<br>IEやネスケ タブラウザなんでもあると思う。<br><br>URLは知らん。忘
れた。IEでも動いたしunDonutでも動く。<br><br><dt>687 :<a href="mailto:sage"><b>
名無し~3.EXE</b></a> :04/12/06 01:18:28 ID:G582bXre<dd>話がかみ合ってないよ、こ
いつ<br><br><dt>688 :<a href="mailto:sage"><b>名無し~3.EXE</b></a> :04/12/06 0
1:19:07 ID:/uriwBh/<dd>( ゚д゚)ポカーン<br><br><dt>689 :<a href="mailto:sage"><b>
名無し~3.EXE</b></a> :04/12/06 01:23:38 ID:WJVP2I/L<dd>試してみ<br><br><dt>690
:<a href="mailto:sage"><b>名無し~3.EXE</b></a> :04/12/06 01:24:58 ID:/uriwBh/<
dd><a href=689 target=_blank>>>689</a><br>$ which get<br>get: Command not found.
<br><br></dl><font color=red face="Arial"><b>169 KB</b></font>  <font
692名無し~3.EXE:04/12/06 01:34:01 ID:WJVP2I/L
perlで使えるんだlinuxとかunixでも似たよなブラウザ動かすパラメータはあるだろうし。
OS環境で違うのか?ごめんM$じゃないのか?
693名無し~3.EXE:04/12/06 01:34:43 ID:/uriwBh/
とりあえず >>685
694名無し~3.EXE:04/12/06 01:41:10 ID:WJVP2I/L
多分NT系(w2k XP)とNT系以外だとcmdプロントとIE
パラメータ扱いが同じwinodwsでも違うと思うので
windowsで出来ない人はそれが原因かと。





695名無し~3.EXE:04/12/06 01:42:44 ID:WJVP2I/L
start IEXPLORE.EXE http://pc5.2ch.net/test/read.cgi/win/1062775949/l50

は出来ない?
696名無し~3.EXE:04/12/06 01:45:11 ID:G582bXre
2000、XP、2003にも95、98、Meにもgetなんてコマンドは無い

大方ActivePerlのget.bat
出力の一行目に400 URL must be absoluteとか出てないか
697名無し~3.EXE:04/12/06 01:48:02 ID:WJVP2I/L
getもstartも(IE)ブラウザに持たせるパラメータであって
シェルが関数をブラウザに渡してブラウザがそれを理解して動いているかな?

windowsが純粋に持つコマンド郡では当然無いです。

698名無し~3.EXE:04/12/06 01:53:26 ID:WJVP2I/L
ホントだ(鬱
C:\Documents and Settings\Administrator>get IEXPLORE.EXE http://pc5.2ch.net/tes
t/read.cgi/win/1062775949/l50
400 URL must be absolute

てつきりIEXPLORE.EXE走ってると思った。startでIEやunDonが起動してたので
getで取ってると思った

すいまそん。逝ってきます。これperlが動いてたのかorz...
699名無し~3.EXE:04/12/06 01:56:10 ID:/uriwBh/
>>696はエスパーだな
700名無し~3.EXE:04/12/06 01:58:23 ID:WJVP2I/L
>697
start以外で保存させるようなパラメータをIEに与えられないかなと
思っていたんでgetでと浅はかでした。すいませんorz............

IEに保存させるようなパラメータって与えられる物なんでしょうか?
そもそも無い気がしてますが、、、
701700アンカー間違え:04/12/06 02:03:29 ID:WJVP2I/L
すいません>696の間違いです
702名無し~3.EXE:04/12/06 02:20:21 ID:wX1iuh32
WSHでMicrosoft.XMLHTTPを使うとか
703701:04/12/06 02:30:06 ID:WJVP2I/L
702>ありがとうです。
704名無し~3.EXE:04/12/06 08:19:31 ID:a4f7c1ua
なんか、すげースレが伸びてると思ったら・・・ワロタ

で、getはバッチファイルなんだから、バッチファイルから呼び出すには、
callコマンドを使わないといけない。

call get URL>test1.htm
call get URL>test2.htm

なお、Win9xだとバッチファイルの実行結果はそのままでは
リダイレクトできなかったりするが、NT系ならこれでOK。
705名無し~3.EXE:04/12/06 16:27:21 ID:hCLvSkYN
704>ありがとう
706名無し~3.EXE:04/12/06 16:34:36 ID:hCLvSkYN
うまく書き込めないなぁ2chブラウザorz

期待どうり動きました。

bin以下のGET.batが動いてるとは気づかずorz
bin以下に沢山のブツがありました。色々試してみます

IEXPLORE.EXE 文字列でURLとして見なして開くので
start IEXPLORE.EXE 文字列

保存するパラメータ IEXPLORE.EXE 文字列

でIEに保存できるないかなとか考えてました。
IE保存そんな簡単な方法は無く
wshが必要なんですね。試してみようとした矢先でした

お手軽でいいですね。ありがとです
707名無し~3.EXE:04/12/06 20:29:38 ID:AW/d6STf
ところでWSHスレってどこいっちゃいましたかね?
Windows Scripting Host スレはPart3の途中でDAT落ちしたっぽいし
新たなスレも見当たらないし。
708名無し~3.EXE:04/12/06 21:02:56 ID:5KNRTw25
お前ら、wsh使ってますか? Part4
http://pc5.2ch.net/test/read.cgi/win/1100489339/
709名無し~3.EXE:04/12/06 22:26:13 ID:NfPQEhX0
>>708
激しく感謝。
どうやら漏れはpc2鯖の残骸の中をを検索してたようです。
710名無し~3.EXE:04/12/07 11:35:08 ID:lEQmi5dG
すいません。教えてください。

マイネットワーク(nethood)に登録されているディレクトリ(ショートカット)を
コマンドライン(ログスプ)から消したいんですがどうすればいいですか?

\\SERVERNAME\FOLDERNAMEへのリンクを消したい場合
DEL "%USERPROFILE%\NETHOOD\FOLDERNAME - SERVERNAME"
RD "%USERPROFILE%\NETHOOD\FOLDERNAME - SERVERNAME"
だめ
DEL "%USERPROFILE%\NETHOOD\FOLDERNAME*"/Q
RD "%USERPROFILE%\NETHOOD\FOLDERNAME*" /Q
だめ
DEL "%USERPROFILE%\NETHOOD\*"/Q
RD "%USERPROFILE%\NETHOOD\*" /Q
でもだめ _| ̄|○
711名無し~3.EXE:04/12/07 12:08:45 ID:m4b4+q/D
for /d %d in ("%USERPROFILE%\NETHOOD\*") do rd /s /q "%d"
712名無し~3.EXE:04/12/07 13:11:00 ID:lEQmi5dG
すごい。出来ました。forを勉強してきます。
即レスありがとうございました >711
713名無し~3.EXE:04/12/18 14:36:16 ID:grX5g94f
すいません教えて頂きたいんですが、バッチファイルの中で
startでlnkを実行しているのですが
前の処理が終了してから次の処理を行わせたいのです。

単純に30秒待ってから処理を続ける等の設定でかまわないので教えて下さい。

Pauseで止めてしまうと処理も自動で終了しないので無理で
プロセスが走り出している物の終了を検出するのは難しそうだと
考え、指定時間の待ち時間を設定すればいいと考えたのですが
そういったコマンドや記述の仕方はあるのでしょうか?


start *.lnk
<処理待させてから次の処理させたい>
start *.lnk
714名無し~3.EXE:04/12/18 14:44:10 ID:gv+Eh9BJ
>>713
>>448-490に色々書いてあるよ。
ヒントになると思うから見てみそ。
715名無し~3.EXE:04/12/18 14:59:06 ID:grX5g94f
>714
レスありがとうです。参考にします。
716713:04/12/18 17:18:57 ID:grX5g94f
バッチファイル内で処理の間にsleepを挟んで実行してもその次の処理も実行し最後まで処理
実行してしまいます。
指定秒はsleep.exe 30 で30秒間プロントは開いてますが、バッチファイル内で
処理が30秒止まる処理にならないです。とゆうか全部実行してプロントが虚しく30秒後に次々落ちて
いきます。

プロセス見てると最後まで華麗にスルーして逝きました(鬱。。。

pauseで止まって30数えてキー押して次進むと同じ事になってないと意味無いですよね。
処理待ち出来てないですが本来のsleepコマンドは↑ですよね。こうゆうふうにバッチファイル内で
出来ないのでしょうか?sleep.vbsも同じ様子で処理が最後まで進みます。

w2kですがなんとか希望する処理にしたいのですが
無理なんでしょうか。

回避出来る方法があれば教えて下さると助かります。




717713:04/12/18 17:51:43 ID:grX5g94f
すいません。出来ました。スレ汚しスマソ。

sleep.exeの方がいまいち使い方不明ですが(泣)
標準コマンドっぽく使いたい気はしますが

処理が被る事は>487の方法で回避できました。
718名無し~3.EXE:04/12/18 18:24:42 ID:2fCyc0dI
>>717
おめ。構築展開がんがってチョ。
719717:04/12/18 19:25:32 ID:grX5g94f
>718
ありがトンです。
720名無し~3.EXE:04/12/19 20:58:42 ID:c5MlA3AA
お尋ねしたいのですがATコマンドってACPIまでも支配下に置いて
休止(サスペンド ハイバネーション)状態からも復旧できるのでしょうか?
タスクスケジューラ相当の機能を備えて代換出来るのかな?なんて思ったのですが。
Cron NTなんかでもどうなのだろうかななんて疑問を抱いたのですが、
電源関係も制御して起動実行できるのでしょうか?

本体内蔵でタスクスケジューラ以外でATコマンドで出来たらと思いました
これはタスクスケジューラのそれとは違うのかなと認識していますが
教えて下さい。

AT コマンドは、指定された日時にコマンドとプログラムがコンピュータで
実行されるようにスケジュールします。AT コマンドを使用するには、
Schedule サービスが実行中でなければなりません。
721名無し~3.EXE:04/12/19 21:12:39 ID:6D3d0/NS
さっぱりわからん
722名無し~3.EXE:04/12/19 21:28:29 ID:ZVWAMJAo
そういうことができるのかできないのか知らないが
Win板のコマンドラインスレでさらっと答えるレベルを超えている
723名無し~3.EXE:04/12/19 21:30:20 ID:jq1gdcyU
atで指定できるスケジュール内容は、かなり限定的。
コマンドラインからスケジュール操作したい、という話なら、
XP以降ならschtasks、2000以前ならjt、ataskで。
724720:04/12/19 23:30:21 ID:ZP1S9l9E
>723
ありがとうです。
windows内臓ので今までやってきたのですが
windows内臓だからACPIも支配下に置いてくれているのですが(w2kタスクスケジューラ)
起動終了時に頻繁に(エクスプローラ)シェルI再描写してくれるので(なぜかは謎ですが)
体感的に重く感じられるのです。

なので他のタスク管理ツールで管理

コマンドラインで出来たらいいなぁとは思っていました。

試してみます。



725720:04/12/20 02:15:16 ID:2o4znDFV
723様の紹介して下さったソフト(atask)
windowsデフォルトの物のコマンドライン版なんですね。軽くて嬉しいです。
w2kでした。環境書かずにすみませんでした。

このスレにはお世話に成っているので
つまらない物置いてきます(どうでもいいネタ。知ってるし活用してる方もいるのかも知れませんが)

(jtとゆうのが見つけられずネットを彷徨っていると)こんなのあるんだって知りました。
ソフトで良くある時刻合わせなんですが、windows本体で自動で時刻を正確に
保つ方法なんですね。初めて知りました。net〜コマンドはw2k以降だった?
気がするのですが、時刻合わせ自動で出来ます。

---------------------------------------------------------------
■ [Tool]W2kでの時計合わせ(sntpサーバー設定のメモ)
W2kでは、標準でsntpサーバーにアクセスして時計を合わせる機能がつい
ている。その設定方法のメモ。 ここではsntpサーバーとして、
http://www.jst.mfeed.ad.jp/を使用する
コマンドプロンプトで以下のコマンドを打つ
net time /setsntp:ntp1.jst.mfeed.ad.jp <--- <Server名>
管理ツール−サービスで、Windows Timeサービスのスタートアップの種
類を自動にし、開始ボタンを押す。
----------------------------------------------------------------
726名無し~3.EXE:04/12/20 02:19:29 ID:eI1d1zqv
tclock でええやん。それとも複数のマシンを同期させるの?
727名無し~3.EXE:04/12/20 09:44:56 ID:8/hg185P
サーバ群は標準時刻に合わせる事よりも
サーバ間の時刻同期の方が重要だからね。
728名無し~3.EXE:04/12/20 21:00:18 ID:2s8SEfYh
俺漏れの設定。2000だけど。

C:\>net time /querysntp
現在の SNTP 値: time.windows.com,0x1

コマンドは正常に終了しました。


C:\>
729名無し~3.EXE:04/12/24 19:52:27 ID:gYPYKX9t
>>725
jtの入手場所 :
ftp://ftp.microsoft.com/reskit/win2000/jt.zip

お気づきのようですが、ATコマンドもataskもjtも、WindowsのTask Schedulerサービス(=windows内臓の)に
スケジュールを仕掛けるコマンドです。なので、どれでやっても、

>windows内臓だからACPIも支配下に置いてくれているのですが(w2kタスクスケジューラ)
>起動終了時に頻繁に(エクスプローラ)シェルI再描写してくれるので(なぜかは謎ですが)
>体感的に重く感じられるのです。

という問題の解決にはなりません。

>>726
逆に、NTP使える場所ならWindows Timeサービスでええやん、って希ガス。
730720:04/12/26 01:29:28 ID:21/GplR8
>729様
説明が下手ですいませんでした。

実行時の負荷などで体感的に重く感じられるのではなくて

タスク画面の終了アイコンをクリック時頻繁に(エクスプローラ)シェル
再描写してくれる挙動
(終了アイコンをクリック時毎エクスプローラを落として再起動する様で)
>そのせいで体感的に重く感じられるので

コマンドライン版なら軽くなりました。
ありがとうございます。
731名無し~3.EXE:04/12/26 11:52:57 ID:s75L0fhD
コマンドラインからフォントをインストールしたり削除したりする方法ってある?
単純にCOPYとかDELじゃ反映されない(実体だけコピー/削除されるだけ)んで…。
732名無し~3.EXE:04/12/26 22:36:14 ID:VXSiQ9VJ
>>731
Windows 98ではレジストリの下の場所を書き替えればいい。
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVaersion\Fonts
書式は自分でレジストリエディタから見て確かめろ。
確かNT系だとWindowsNTだったはずだからそこらへんうまく切り替えなきゃいけないと思う。
ちなみに絶対パスで指定すればフォント自体をFontsフォルダへコピーする必要はない。
733名無し~3.EXE:05/01/11 14:42:08 ID:vZNnSs1i
@動画を4時間かけてエンコード

A「エンコード正常終了」のメッセージの出てるスクリーンショットを、
時限スクリーンショット作成ツールで自動取得

B自動シャットダウンツールでシャットダウン

C寝ている間に全て終わってて(゚Д゚)ウマー

というふうにしたかったんだが、
Aの「スクリーンショット作成ツール」が起動たままだと、シャットダウンできないらしい。
(そのツールが起動中だと、スタートメニューからのシャットダウンすらできなかった)

だからAでスクリーンショットを自動取得が終わった後、
Bの前にその「スクリーンショット作成ツール」のプロセスを殺しておきたいんだが、
いいコマンドないかな?
XPにはtaskkillってコマンドがあるらしいのはググって知ったけど、
ウチはwin2000だからtaskkillないんだよね…
734名無し~3.EXE:05/01/11 15:29:21 ID:qFZs8sZy
>>733
2kのCDの中にkillがある。


735733:05/01/11 20:13:58 ID:9S7Yy0RJ
>>734
まりがとうございます
736名無し~3.EXE:05/01/11 21:17:22 ID:113pUxUt
プロセス殺すくらいなら、強制シャットダウンできるツール使えばいいのに
737名無し~3.EXE:05/01/12 14:45:05 ID:wddn5/Pb
「shutdown -r -t 0」だと終了しなかったりするのか?
738名無し~3.EXE:05/01/24 10:18:01 ID:87Ygzf9C
初歩的ですが検索してもどうしても見つからなかったので質問します。
XPですが、コマンドプロンプトを起動させたら、最初に
「C:\Documents and Settings\Owner>」と出るのですが、
これを「C:」からで始めるにはどうすればよいでしょうか?
起動するたびに、いちいち「cd../../」で戻るのも面倒なので。

あと、VC++6.0のBATファイルの「C:\VCVARS32.BAT」を毎回
コマンドライン上で起動させておきたいのですが、その方法もできれば…。
739名無し~3.EXE:05/01/24 10:56:33 ID:??? BE:6736872-#
ショートカット作って作業フォルダをC:に設定

http://www.atmarkit.co.jp/fwin2k/operation/command002/command5.html
740名無し~3.EXE:05/01/24 11:11:46 ID:dPaznAAZ
AとBという二つの同名のファイルがあり、更新日付を比較して
Aの方が新しければBへ上書き、という処理を行い、上書きを行った
場合と行われなかった場合とで後続の処理を分けたいのですが
何か良い方法は無いでしょうか?

XCOPYの/Dオプションを考えていたのですが、戻り値がファイルコピー
してもしなくても0で返ってくるので、処理を分岐できなくて・・・

OSはNT4.0です。
741名無し~3.EXE:05/01/24 12:07:42 ID:8tWDLMcK
xcopy /D の前後にfcでファイル比較し、戻り値を記録しておく。
コピー前が相違、コピー後が一致していればコピーしたことになる。

2000/XPならforでファイル日付を環境変数に記録できるので
簡単にできる。NT4だと無理だったはず。
742738:05/01/24 18:10:07 ID:jYCW75+f
>>739
ありがとうございます。できました。
743名無し~3.EXE:05/01/24 20:44:38 ID:SfZBlsnA
>>741
ありがとうございます。無事処理できました。

お手数でなければもう一つ教えて頂けるとありがたいのですが
コピー先のファイルと比較し、

 コピー元の方の更新日付が新しければコピーし処理@へ
 コピー元の方の更新日付が同じならばコピーせず処理終了
 コピー元の方の更新日付が古ければコピーせず処理Aへ

という処理の場合、XCOPYだけでは処理しきれないでしょうか。
日付を取得しなければいけないとなると、DIRぐらいしか思い
つかないのですが、ここから日付部分のみを取得するには
どうしたらいいでしょうか。ご教授頂ければ幸いです。


744名無し~3.EXE:05/01/27 10:26:07 ID:hdtRz24U
>>741
バッチファイル内で以下のように記述すれば、NT4でも2000でもXPでも環境変数AUSERに
年月日を記録できる。
(例えば2005年1月27日に実行すれば、環境変数AUSERに"20050127"という値が記録される)

FOR /F "eol=; tokens=1,2,3 delims=/ " %%i IN ('DATE/T') DO @SET AUSER=%%i%%j%%k

これを応用すればNT4でも後者の方法が使えるのでは・・・と思ったが、かえって面倒くさいかな?
745名無し~3.EXE:05/01/27 12:03:31 ID:AaQth7Vi
ECHOでテキストファイルにリダイレクトすると「>」と「<」が含まれている列が
ちゃんと出力できないのですが、どうしたらいいんでしょう?
746名無し~3.EXE:05/01/27 12:57:46 ID:znqPAtGw
echo ^<test^> > test.txt
747名無し~3.EXE:05/01/27 15:04:37 ID:62kPNn86
>>746
ありがとうございます。できました。

それで今、IF文で分岐しようとして以下のような構文で
作成しているのですが、うまくSectionYに飛んでくれず
SectionXを実行してしまいます。

SET ERR=1
IF ERR==1 GOTO :SectionY

:SectionX
 〜
:SectionY
 〜

どこがおかしいんでしょうか?IFの使い方でしょうか?
748名無し~3.EXE:05/01/27 15:08:27 ID:QWZFujKR
goto の後ろに書くラベル名に : は不要
ttp://forum.nifty.com/fpcu/dosvcmd/batch.htm#goto
749名無し~3.EXE:05/01/27 15:15:16 ID:62kPNn86
すいません事故解決しました。

SET ERR=1
IF "%ERR%" == "1" GOTO Section1

としたら出来ました。おさわがせしました。
750名無し~3.EXE:05/01/27 15:18:52 ID:62kPNn86
>>748
こちらもありがとうございます。
コロンいらないんですね。参考になります。
751名無し~3.EXE:05/01/27 21:32:24 ID:62kPNn86
FINDで検索した文字をプロンプトに表示しない方法はありませんか?
存在した場合、存在しなかった場合のエラー判定のみを使いたいんです。
752名無し~3.EXE:05/01/27 22:28:15 ID:ee5Q9hmr
NULにリダイレクト
753名無し~3.EXE:05/01/28 00:36:12 ID:MqHkHklv
>>752
どうもありがとうございます。
凄いです。自分にはこんなの全然思いつきません・・・
754名無し~3.EXE:05/01/29 15:00:27 ID:y8h2H+P6
バッチファイルの中でftp.exeを使った転送を行いたいんですが、
どうやってコマンドを与えればいいんでしょうか?
実行したいのはこんな感じです。

open ftp.hoge.com
cd foo/bar
binary
literal pasv
put c:\foo\bar\hoge.xxx
bye
755名無し~3.EXE:05/01/29 15:02:22 ID:y8h2H+P6
すいません、ググりなおしたら一発で出てきましたorz
756名無し~3.EXE:05/01/30 02:32:29 ID:1IwEOzk3
IF文で複数の条件を指定することってできますか?
たとえば A=B または、C=D のとき、E を実行したい場合は、

IF A=B E& GOTO END
IF C=D E& GOTO END
:END

と、今のところはしているのですが、これを1行にまとめられないものかと。
757名無し~3.EXE:05/01/30 12:18:10 ID:lWjHpeLY
>756
俺ならこうするところだが・・・
IF NOT A=B IF NOT C=D GOTO END
E
:END
758名無し~3.EXE:05/01/30 22:40:59 ID:rx3mobRm
Windowsのコマンドシェルは制御構文が貧弱すぎる。
構造化しにくいから長いバッチファイルを書くのがつらい。
caseとかwhileとかuntilを使えるようにしてほしい。
759名無し~3.EXE:05/01/30 22:49:12 ID:GBlwj8yC
>>758
WSH使えというのがMSの答え
760名無し~3.EXE:05/01/31 21:46:59 ID:ejTT/ZKT
>>758
それをやり切るから楽しいのだ。真面目にやるならバッチファイルなんぞ使うな。
761名無し~3.EXE:05/01/31 22:57:41 ID:SJGe5d5E
さっき間違って「route -f」を実行しちゃいました・・・
どこをどう間違ったのか自分でも激しく突っ込みたい気分ですorz

このせいで外部(192.168.1.1とかにはアクセスできる)につながらなくなってしまいました。
route -fで消える情報って何なんでしょうか? どこに保存されてるんでしょうか?
具体的な設定ファイルが書き換わったのなら、バックアップから復帰させることもできそうだけど・・・
正直routeもまだ勉強中だったんでよくわかってないんですが、どう設定すれば元に戻せるのかご教授ください。

特別に設定していたroute情報はありませんでした。
OSはXPです。
762名無し~3.EXE:05/01/31 23:02:42 ID:LhKwpnaM
デフォルトゲートウェイの設定見直してみるべし。
DHCP使ってるならipconfig /renew
763名無し~3.EXE:05/01/31 23:08:12 ID:SJGe5d5E
>>762
即レスありがとうございます。
早速やってみました。
そしてできました!!
直りました!!!

ほんとありがとうございます。
一時はどうなることかと思いました・・・
764名無し~3.EXE:05/01/31 23:30:31 ID:+2ADC6D/
CD-Rクリーナーっていくらするんでしょうか?ネットに繋ぐCD-Rを入れてもエラーが出るんです(;_;)
765名無し~3.EXE:05/02/01 02:27:29 ID:KKeXHiLg
>>764
高けぇぞ。4000万くらいする。
766名無し~3.EXE:05/02/01 18:50:30 ID:b62nh1N5
テキストファイルからx行目の内容を抜き出したいのですが、何かいい方法はあるでしょうか?
767名無し~3.EXE:05/02/01 19:26:17 ID:cqMU8vCV
Windows標準の方法では思いつかないけど、sedなら1行。
sed -e '5,5p' -e d < FILE
とか。
768名無し~3.EXE:05/02/01 19:28:25 ID:cqMU8vCV
別に標準入力を経由する必要もなかった…まあいいか。
769名無し~3.EXE:05/02/01 19:53:45 ID:b62nh1N5
>>767
sedを使う方法は思いついたんですが、
他の環境でも使わなきゃいけないためにできれば避けたかったんです。
sedの利用も検討してみます。
770766=769:05/02/01 19:57:50 ID:b62nh1N5
よく見たら外部のソフトを使わずにって書いてなかったorz
ともかく、本当にありがとうございます。
771名無し~3.EXE:05/02/01 20:02:30 ID:8+Ht+ZCi
多少問題あるけど。

@echo off
setlocal EnableDelayedExpansion
set X=5
set LINE=0
for /f "delims=" %%I in (DATA.TXT) do set /a LINE+=1 & if !LINE!==%X% echo %%I
endlocal
772名無し~3.EXE:05/02/01 20:07:58 ID:cqMU8vCV
>>769
じゃあ、NT5以降限定でよかったらこういうのはどう?
コマンドライン1行では無理だった。

--- test.bat ---
@echo off
for /f "skip=%1 delims=" %%i in (%2) do @echo %%i & goto end
:end

--- sample usage ---
test.bat 5 SOME.TXT
(SOME.TXT の 5 行目が表示されると思う)

「他の環境」にWin9xとかNT4が含まれているなら、sed.exeを入れるのが簡単だと思うけど。
ファイル1個ですむし、レジストリとかいじるわけじゃないし。
773772:05/02/01 20:14:59 ID:cqMU8vCV
ごめん、skipの指定を-1する必要があった。
ついでに空行が無視されるっぽいので、使い物にならないや。
>>771 さんのがよさそう。
774771:05/02/01 20:26:23 ID:8+Ht+ZCi
いや、同じく空行は駄目なのよねw
775名無し~3.EXE:05/02/02 21:45:04 ID:DwC9OyoS
バッチだとIF X = 1 かつ 2 または 3 みたいなことはできないんすかね?
776名無し~3.EXE:05/02/03 15:30:27 ID:DSB2pdsM
>>775

@ECHO OFF
SET /P X="Xに代入したい数を入力してください "
IF NOT %X%==1 IF NOT %X%==2 IF NOT %X%==3 GOTO SHORI2
ECHO Xは1,2,3のいずれかです。
GOTO END
:SHORI2
ECHO Xは1でも2でも3でもありませんでした。
:END
PAUSE
777名無し~3.EXE:05/02/03 22:09:15 ID:HghiHHO2
>>775
よく読んだらあり得ない条件だなw
778名無し~3.EXE:05/02/04 10:22:55 ID:DwHF7oeP
X == ( 1 and 2 ) or 3かX == 1 and ( 2 or 3 )かは知らないけど、
Xが複数の値を持ってなきゃいけないんだもんなw
779名無し~3.EXE:05/02/05 16:13:47 ID:l0+o/ozY
ファイルを一括コピーするのに
複製先と複製元に同名ファイルがある場合、
更新日付が新しいファイルだけをコピーする
batつくってちょ。
780名無し~3.EXE:05/02/05 16:25:52 ID:p4R7Sp01
>>779
xcopy /d
781名無し~3.EXE:05/02/05 16:41:31 ID:l0+o/ozY
>780
テキストファイルに

xcopy コピー元ディレクトリ コピー先ディレクトリ /d

って書いて拡張子を.batにして実行したらドス窓に
コマンド文字列が延々と流れるだけでなにも動いてくれない・・

782名無し~3.EXE:05/02/05 16:47:53 ID:8VuSq8wR
名前が悪い
783名無し~3.EXE:05/02/05 17:12:47 ID:l0+o/ozY
名前が悪いかぁ。基本がわかってないなぁ。
コマンドを説明するサイトはいっぱいあったけど、よう
わからん。
784名無し~3.EXE:05/02/05 20:33:12 ID:MsT4yBq1
>>783
ディレクトリパスを二重引用符で囲んでみそ
例)
xcopy "C:\Program Files\MSN" "D:\MSN\" /D
785名無し~3.EXE:05/02/05 20:37:59 ID:Sh6pMI2q
>>783
あ、待った。名前が悪いってのは
その「バッチファイルの名前」が悪いんじゃないか?
「xcopy.bat」みたいにコマンドを名前にするとそういう症状になるよ。
「うどん大好き.bat」でも何でもいいからコマンドとは違う名前にしてみそ。
786名無し~3.EXE:05/02/05 21:15:52 ID:5fVX5kuj
>>783
でけた
787名無し~3.EXE:05/02/08 01:29:29 ID:Nt9UaBPd
今更だが>769へ

for /f "tokens=1,* delims=:" %a in ('findstr /n /r ".*" data.txt') do @if %a==5 echo.%b
788名無し~3.EXE:05/02/08 02:17:11 ID:Nt9UaBPd
ちなみに↓や
 dir /b|for /f "tokens=1,* delims=:" %%a in ('findstr /n /r ".*"') do @IF "%%a"=="4" echo.%%b

↓のような使い方もできたのだが…
 dir /b>tmp.txt
 for /f "tokens=1,* delims=:" %%a in ('findstr /n /r ".*" tmp.txt') do @IF "%%a" LSS "4" echo.%%b

コレは何故か「"4"の使い方が間違ってる」というエラーが出てダメだった。
 dir /b|for /f "tokens=1,* delims=:" %%a in ('findstr /n /r ".*"') do @IF "%%a" LSS "4" echo.%%b
789名無し~3.EXE:05/02/09 21:51:41 ID:QC3V9Wlv
IF文で文字列の前方一致って判定できますか?

SET A=ABC
IF "%A%"=="AB*" 〜

みたいなことをしたいのですが。
790名無し~3.EXE:05/02/09 21:54:56 ID:8EW11fKX
素直に適当なスクリプト言語かUnix系シェルを使え
791名無し~3.EXE:05/02/09 22:18:20 ID:ZYqxvG8c
>>789
%A%を前から二文字分切ればいいんでない?


SET A=ABC
SET A=%A:~0,2%
IF "%A%"=="AB" 〜
792名無し~3.EXE:05/02/09 23:43:28 ID:Asl7YZmK
 質問です。

 Unix の type コマンドみたいな、指定したコマンドの実際のパ
スが何か教えてくれるものは DOS コマンドにはありますでしょう
か…?

 PATH 環境変数が長くなって、いったいどこのディレクトリにあ
るコマンドが実際に実行されているのか知りたい時がありまして…。
793名無し~3.EXE:05/02/10 00:29:27 ID:z3W9QXZF
ここでAutoItのことを訊いていいですか?あるいはどこで訊けばいいですか??
AutoIt scriptで .cpl (コントロールパネル)を起動するにはどう書けばいいか知りたい。
794名無し~3.EXE:05/02/10 01:16:49 ID:7M7UfEBa
>>793
お前ら、wsh使ってますか? Part4
http://pc5.2ch.net/test/read.cgi/win/1100489339/

ちなみにそんなものはない。
795名無し~3.EXE:05/02/10 02:03:52 ID:Cl6VNbZK
796名無し~3.EXE:05/02/10 02:06:38 ID:DuTRAYPc
セーフモードで起動して直接DOSでのファイルの消し方を教えて下さい。
797名無し~3.EXE:05/02/10 02:43:49 ID:rHNTsEg3
回復コンソール使え
798名無し~3.EXE:05/02/10 06:59:47 ID:67/sVVxd
>>795
ありがとうございます!
組み込みとしては用意されてないんですね。
799名無し~3.EXE:05/02/10 10:13:29 ID:wNXWW041
>>798
どーしても組み込みでやりたければ、

for %i in (notepad.exe) do echo %~$PATH:i

かなあ。
ファイルが見つからない場合は間抜けな結果になるけど。
800名無し~3.EXE:05/02/10 10:16:31 ID:wNXWW041
連投スマソ。

for %i in (notepad.exe) do @if not "%~$PATH:i" == "" echo %~$PATH:i

でいいか。
801名無し~3.EXE:05/02/10 14:14:31 ID:iKg/A2GK
コマンドの引数をダブルクォーテーションで括った場合の動作について教えてください。

Perlスクリプトを作成しcmd.exe上から実行しています。スクリプトにはディレクトリ名を
引数として渡します。ディレクトリ名が空白を含む場合は、当然
script.pl "c:\documents and settings\user"
のようにダブルクォーテーションで括ってやる必要があります。

この時、ディレクトリ名の末尾に\が付いていると、2つ目の"がエスケープされて
c:\documents and settings\user"
という文字列が渡されてしまい、正しく処理できません。

更に、その後に引数が続く場合には、次の"が出て来るか入力の終わりまでが
1つ目の"の範囲と見なされるので、例えば
script.pl "c:\documents and settings\user\" file.txt
このように実行すると、スクリプト側では
c:\documents and settings\user" file.txt
の全体を1つの引数として受け取ってしまいます。
何か回避策はないでしょうか。
802名無し~3.EXE:05/02/10 15:19:23 ID:ZmKFLrp3
"c:\documents and settings\user\\"

いぁ、かなり適当w
803名無し~3.EXE:05/02/10 17:19:03 ID:d8fEBE+m
%~s1を使い""で囲まない
というか、script.plを書き換えた方が良くないか
804名無し~3.EXE:05/02/10 17:19:59 ID:W9Yy2y/D
それで合ってると思う。
コマンドラインと言うよりPerlの仕様だね。
805801:05/02/11 05:46:09 ID:LtRZmWV5
ありがとうございます。えっと・・・
「%~s1を使う」ってどういう意味でしょうか?
806名無し~3.EXE:05/02/11 09:10:35 ID:I1tjTVAT
コマンドプロンプトというかバッチファイルの仕様。
~を使うと引数が""で括られていた場合にそれが外されるのよ。
詳しくはコマンドリファレンスに載ってるからそっち見れ。

でも>801を見る限りscript.plに渡す引数のことらしいから
>802でやるかscript.plを書き換えなきゃ駄目だと思う。
807名無し~3.EXE:05/02/12 07:31:30 ID:zrC8lYdj
すいません。MS-DOSのサイズ形式が最大になったまま元に戻りません。
方法はないでしょうか?
808名無し~3.EXE:05/02/12 07:34:02 ID:zrC8lYdj
すいません自己解決しました。
809名無し~3.EXE:05/02/12 17:40:52 ID:JstPLmPv
>>800
ありがとうございます。結局はコマンドの組み合わせが必要なんですね。
でも目視で PATH 環境変数とにらめっこするよりずっと確実です。助かりました。
810馬鹿です:05/02/17 16:32:15 ID:B557dDSA
「C:」から「C:\Program Files」に入りたいのですが、
cd Program Filesとやると、「Too many prameters」というエラーが出ます。
cd "Program Filesとやると「Format not correct」というエラーが出ます。

さて、どうしたものでしょう?
811810:05/02/17 16:33:21 ID:B557dDSA
訂正

>cd "Program Filesとやると「Format not correct」というエラーが出ます。

cd "Program Files"とやると「Format not correct」というエラーが出ます。
812810:05/02/17 16:35:14 ID:B557dDSA
OSはXP(英語版)です
813810:05/02/17 16:36:42 ID:B557dDSA
あ、progra~1で出来ました。
814名無し~3.EXE:05/02/17 16:42:47 ID:XZFwzW/d
「なんで810ちゃんはcommand.com使うん?」
815810:05/02/17 16:44:41 ID:B557dDSA
command.comて何ですか?
command.com=Command?
816810:05/02/17 16:48:02 ID:B557dDSA
質問が2つあります

・ところで、「progra~1」以外の記述方法はないのですか?
・例えば、「Program Filessss」というディレクトリに移動したい場合は、「progra~2」でしょうか?
817名無し~3.EXE:05/02/17 17:07:18 ID:DssnHjR0
>>816
dir /x
818名無し~3.EXE:05/02/17 18:01:30 ID:/OkFuHhw
>>815
cmd.exeでならcd "Program Files"で出来るはずだが、
command.comならcd "Program Files"はだめだと814は言いたかったのだろう。
819名無し~3.EXE:05/02/17 19:54:05 ID:zMStSadh
cmd.exe なら cd Program Files でも行ける。
てかウチ(Win2k)では出来てる。
820名無し~3.EXE:05/02/17 20:32:08 ID:HnRu/VsT
xpでもオケだな...
821名無し~3.EXE:05/02/17 22:47:34 ID:qp8Z/Tkt
9x の command.com なら cd ... も使えて最強だけどね
822名無し~3.EXE:05/02/17 23:40:58 ID:63qwdkAA
ヘルプにもちゃんと書いてあるね<cdは囲まなくてもいける

C:\>cd /?
現在のディレクトリを変更したり、ディレクトリ名を変更したりします。
(中略)
CHDIR コマンドは空白を区切り文字として扱わなくなるため、空白文字を
含むサブディレクトリ名を引用符で囲まなくても、そのサブディレクトリ
に CD できるようになります。たとえば、

cd \winnt\profiles\username\programs\start menu

は、次と同じです:

cd "\winnt\profiles\username\programs\start menu"

拡張機能が無効である場合は、こちらを入力します。

>>821
XPだとだめだね
823名無し~3.EXE:05/02/18 00:05:37 ID:beWr2WmF
cd "program fi*"
とか
cd progra*
とか
cd pro*
とか
cd p*
とか
824名無し~3.EXE:05/02/18 03:57:49 ID:iGYhvead
cmd.exeなら補完機能使えよ。
825810:05/02/18 11:19:20 ID:YUaBrsIT
みなさんありがとうございます
cmd.exeで試したら、「cd Program Files」で出来ました。
cmd.exeとcomman.comの違いを今知ったしだいです。お恥ずかしい。
826名無し~3.EXE:05/02/18 14:36:38 ID:Tq/UxBFM
コマン・コム?
なんかエロいな。
827名無し~3.EXE:05/02/18 17:57:39 ID:v0RpMYbz
エロサイトっぽい。
828810:05/02/18 19:21:50 ID:YUaBrsIT
ためしに、ttp://manco.com にアクセスしてみたら、普通の会社のサイトでした
829名無し~3.EXE:05/02/19 01:41:17 ID:QPoSHGrI
ttp://command.com/ ワロタ。
ttp://comman.com は誰かが取得済みで売出し中。
ttp://manko.com/ はやっぱりエロサイトですた。
830名無し~3.EXE:05/02/19 02:33:09 ID:l25YDiix
これ思い出した。
http://mimizun.com:81/2chlog/perl/natto.2ch.net/perl/kako/989/989944827.html

スレ違い続けてスマソ
831名無し~3.EXE:05/02/20 19:45:47 ID:QgGE5q0B
引数としてaaa\bbbと入力した場合、
aaa/bbbと出力させるにはどのようにしたらいいでしょうか?
\を/に置換させたいのですが。。
832名無し~3.EXE:05/02/20 20:07:07 ID:waPu2b1a
@echo off
set cmdline=%1
echo %cmdline:\=/%

うわ、てきとう
833名無し~3.EXE:05/02/20 20:13:55 ID:aXYF2hPC
>831
set hoge=%1
set hoge=%hoge:\=/%

つか set /? 見れ。
834名無し~3.EXE:05/02/20 20:25:48 ID:QgGE5q0B
すいません。ありがとうございました。
835名無し~3.EXE:05/02/22 11:18:15 ID:6LszeGmC
findstrで日本語を使う方法を教えてください


%検索対象パス%のファイルから「abcd」または「efg」を拾うなら、
  findstr /s "abcd efg" %検索対象パス%
でできるけど

「あいう」 または 「えお」を拾いたいのだが、
  findstr /s "あいう えお" %検索対象パス%
では、「あいう えお」
しか拾ってくれないようです。
どうしたら良いか教えてください





836名無し~3.EXE:05/02/22 12:34:01 ID:SAO84y7K
>>835
/c: を複数使えばいいんじゃないの?
837名無し~3.EXE:05/02/24 11:19:39 ID:onhZ/4zx
CLSコマンドってなんだ?
838名無し~3.EXE:05/02/24 11:26:00 ID:watFYlbP
CLear Screen
839名無し~3.EXE:05/02/24 13:15:20 ID:E7ttyB4P
>>836
結局、日本語は正規表現に対応していないと言うことみたい

840名無し~3.EXE:05/02/24 14:42:12 ID:JiJbr8MF
でも835は正規表現の話じゃないじゃん。
841名無し~3.EXE:05/02/24 14:44:36 ID:JiJbr8MF
連投スマソ。
今試したけど、>>835>>836の方法でできるよ。
842名無し~3.EXE:05/02/24 22:23:18 ID:E7ttyB4P
既出かもしれないが

Windows2000

for 文に日本語を入れるとうまくいかない件

  C:\> for /f "tokens=1,2 delims=\" %A in ('echo test\987654321') do echo %A___%B
  test___987654321

  C:\> for /f "tokens=1,2 delims=\" %A in ('echo 一二三\987654321') do echo %A___%B
  一二三四___98765

  C:\> for /f "tokens=1,2 delims=\" %A in ('echo 一二三四五\987654321') do echo %A___%B
  一二三四五___9876

これを回避する方法ありますか?
とりあえず、処理したい文字列を一旦ファイルに出力して、typeしてますが、とても釈然としない
  例 
    echo 一二三四五\987654321>temp.txt
    for /f ・・・・ ('type temp.txt')・・・
843名無し~3.EXE:05/02/24 22:29:52 ID:IwxM8GsK
8年くらい前にそんなもんだと諦めてそれっきり。
844 :05/02/28 18:49:00 ID:mgvhZrbo
WIN98 系ですが、
for でループしながら、ファイル名を変更させていくやり多々がWIN2kと
ぜんぜん違っていてわかりません
具体的にいいますと、

FOR /L %%I IN (1,1,5) Do (
copy c:\send\0.txt c:\receive\%%I.txt )

をWIN 98 をWIN98のバッチファイルとして実行したいのですが、
手段をお教えください
845名無し~3.EXE:05/02/28 20:15:57 ID:ZsR4017q
>>844
FOR %%I IN (1 2 3 4 5) Do copy c:\send\0.txt c:\receive\%%I.txt
846844:05/02/28 20:39:19 ID:mgvhZrbo
>>845
ありがとうございます
これ、間の(1 2 3 4 5) が1から1000までとかになったら
べた書きするしかないのでしょうか?
847名無し~3.EXE:05/02/28 22:34:56 ID:iuRfaLhj
>>846
いいえ
848inc.bat 前半:05/02/28 23:34:32 ID:ZsR4017q
@echo off
if "%1"=="GOSUB" goto SUB
set ME=%0
set RES=
:LOOP
set NUM=%1
if "%NUM%"=="" set NUM=0
call %ME% GOSUB INC %NUM% 0 1 2 3 4 5 6 7 8 9 0
set RES=%RES% %NUM%
if not "%NUM%"=="0" goto FIN
shift
goto LOOP
:FIN
shift
if "%1"=="" goto END
set RES=%RES% %1
goto FIN
:END
call %ME% GOSUB CAT %RES%
set ME=
goto EOF
849inc.bat 後半:05/02/28 23:35:29 ID:ZsR4017q
:SUB
shift
for %%I in (INC CAT) do if "%1"=="%%I" goto SUB_%%I
goto EOF
:SUB_INC
shift
set NUM=%1
:LOOP_INC
shift
if "%2"=="" goto EOF
if not "%NUM%"=="%1" goto LOOP_INC
set NUM=%2
goto EOF
:SUB_CAT
set NUM=
:LOOP_CAT
shift
if "%1"=="" goto EOF
set NUM=%1%NUM%
goto LOOP_CAT
:EOF
850名無し~3.EXE:05/02/28 23:38:07 ID:ZsR4017q
んで、inc.bat の使用例
1〜100までカウントする。

@echo off
set RES=0
:LOOP
call inc %RES%
echo Count = %NUM%
if "%NUM%"=="100" goto END
goto LOOP
:END
set RES=
set NUM=


こんなアホな方法しか思いつかんよ・・・
851名無し~3.EXE:05/03/01 01:00:49 ID:yrqN+FUZ
1.txt〜10000.txtを作るバッチファイル。
for /l %%A in (0, 1, 9999) do touch C:\hoge\%%A.txt
touchのところは適当に読みかえて。
852名無し~3.EXE:05/03/01 19:24:58 ID:zmF5b0VD
ん?Win9xのforで(0,1,9999)って指定が出来ないから>848-850なんでないの?
853844:05/03/03 10:20:14 ID:FU9M6v/y
>>847-852
 方々 本当にありがとうございました。
 どうやら、WINBAT32 っていうツールを使えば非常に簡単に
2000系のバッチが使えるようです
>>851さんのは、まさに>>852さんのおっしゃられたとおり、3桁指定しても、
変数の更新がなされないところに問題があったのです

>>848-850さんの方法も、ちょっと時間があったら試してみます

ありがとうございました
854名無し~3.EXE:05/03/06 01:30:24 ID:aUKkEqP1
「find "あああ" "D:\Test\*.log"」を実行すると・・・・


---------- D:\TEST\001.LOG
あああ
ああああああああああああああああああああああああい


・・・・・みたく
、実行結果に「---------- D:\TEST\001.LOG」ってのが表示されてしまいます。
この「---------- D:\TEST\001.LOG」を表示させたくないのですが、
よい方法はないでしょうか???

よろしくお願いします・・・。
855名無し~3.EXE:05/03/06 09:03:41 ID:HrCYJZe6
>>854
for %s in (d:\test\*.log) do @type %s | find "あああ"
856名無し~3.EXE:05/03/06 10:08:39 ID:aUKkEqP1
>>855

っっ!

コマンドライン初心者なもんで全然出来なくて困ってました。
有り難う御座います!!

857rcp:05/03/06 21:20:07 ID:J5weOM1O
今更rcp.exeを使ってファイルをUnixサーバーにコピーしたいのですが
ドライブを指定するとホスト名と間違えられてコピーできません
rcp c:\test.txt unix:/tmp
とかすると
c: 不明なホストです
と出てきてしまいます。どなたかドライブを指定するrcp.exeの起動方法
わかる方おりませんでしょうか
858名無し~3.EXE:05/03/06 21:25:17 ID:G72+r7G2
rcp uses the colon (:) to separate the host name and path name which can create problems
when you want to specify local file names which contain a colon following a drive letter.
To specify such local file names on a rcp command line, use an equal sign (=) in place of the colon and prefix the name with a slash.
For example, you would specify the local file c:/testfile as /c=/testfile.
859rcp:05/03/06 21:31:15 ID:J5weOM1O
>>858
早速ありがとうございます。
Windows標準についているのでは、そのやり方では無理みたいです。

たぶんここのソフトウェアですよね?
ttp://www.mkssoftware.com/docs/man1/rcp.1.asp
860名無し~3.EXE:05/03/06 21:35:52 ID:G72+r7G2
(゜д゜)アラヤダ!
861名無し~3.EXE:05/03/06 23:58:11 ID:PuTtFYU1
ずっと前に似たような事で使ってたけど忘れちゃった。/じゃダメなんだっけ?
rcp前にカレントフォルダ移動してパスの記述変えて使ってた気もする。
862rcp:05/03/07 00:33:22 ID:OeifC13q
>>816
ありがとうございます。
/とかいろいろと試行錯誤したのですがだめでした。
結局rcp前にドライブを移動し、
rcp \test.txtみたいな方法で逃げてしまいました。
863名無し~3.EXE:05/03/07 01:28:02 ID:kM4Fk0Se
subst か pushd/popd と組み合わせてバッチ組んでおいてはどうだろうか。
864名無し~3.EXE:05/03/07 01:42:52 ID:fSXZ7rvu
c:\hoge\hoge.txtからファイル名を取り除いて
c\hoge\を取り出したいのですが、方法がわかりません。
setかなと考えたものの先に進みません。
よろしくお願いします。
865名無し~3.EXE:05/03/07 01:58:03 ID:VIn2DXQt
>>864
%~dp1
866864:05/03/07 07:32:21 ID:fSXZ7rvu
<865さん
すみません。なんてかんたんなことがみえなくなっていたんだろ。
お手数をおかけしました。ありがとうございます。
867名無し~3.EXE:05/03/07 20:00:15 ID:xkivvu6h
バッチコマンドで、あるファイルのショットカットを作成することって可能ですか?
もし可能なら、方法を教えていただけると嬉しいです。
WinXPです。
868名無し~3.EXE:05/03/07 20:48:19 ID:JI6tm5Wz
なにそれかっこいい
869名無し~3.EXE:05/03/07 22:20:06 ID:xkivvu6h
ぐはっ!ショートカットっす…
870名無し~3.EXE:05/03/07 22:47:41 ID:nVNY24DZ
mkdir shotcut
871名無し~3.EXE:05/03/08 00:04:27 ID:w61AVD4Z
バッチプログラムを作成しています。

変数%Iに数字以外の項目が入っていたら
エラーエンドさせるようなチェック項目を追加したいのですが、

上手くコマンドを作成出来ません。。

findstr /R [0-9]*
とか
for ??? in (%%I) do ?????

みたいなコマンドを上手く使えばのでしょうが、
知恵と経験が足りなくうまくいかないです・・・・。
誰かお力添えを!!!

お願いいたします。
872名無し~3.EXE:05/03/08 01:34:31 ID:epD5YLVP
>871

∀`)ノ echo (変数)|for /f %a in ('findstr /R "[^0-9]"') do if not "%a"=="" (処理)
873名無し~3.EXE:05/03/08 08:27:35 ID:lPkf5BGo
>>872
パイプの扱いに不慣れなので教えて欲しいのですが、
先のechoが出力した結果は、for 文のどこに行くのですか
874867:05/03/08 19:59:05 ID:gdZVEB8v
どうやら、バッチでショートカットを作る方法はないようですね。
失礼しました。
875名無し~3.EXE:05/03/08 21:13:34 ID:c5qjj3YS
質問です。
バッチファイルでpauseが止まらずに先に進んでしまうのですが何故でしょうか?
同じバッチを別のPCで実行させた場合ちゃんと止まります。
OSはXPです。
876名無し~3.EXE:05/03/08 21:26:04 ID:ZmKzCKc7
プロンプトからpause打ってみたらどうなる?
バッチにpauseのみ記したのを実行するとどうなる?
877871:05/03/09 00:45:59 ID:KUEuVu8j
>>872

ありがとうございました。
助かりました。

>>875

そのpauseはif文の中にあったりしません?
ifの条件に合わず、その処理が流れてなかったり、
ifの構文自体がエラーだったりしてませんか?
878875:05/03/09 20:39:35 ID:ZSuVwTmj
>>876
アドバイスありがとうございました。
どうやら途中の全角文字が悪さをしていたようです。
漢字を外したら上手く動きました。
それぞれのPCで動きが違うのは謎ですが・・・
879名無し~3.EXE:05/03/12 11:11:02 ID:zCliqIwg
XPで文字の色、背景の色をコマンドを使って変えたいのですが、どうしたらいいですか
echo ^[[31mがだめぽです
880名無し~3.EXE:05/03/12 12:06:04 ID:OeF0yg8Y
command.comにansi.sysを組み込めばXPでもエスケープシーケンスが使える。
cmd.exeはエスケープシーケンスは使えないがcolorという内部コマンドがある。
881879:05/03/12 12:54:30 ID:zCliqIwg
>>880
ありがとうごさいます
colorっていう便利なコマンドがあるんですね

エスケープシーケンス使いたいのでできれば、
その組み込む方法を教えて頂けないでしょうか
882879:05/03/12 12:57:18 ID:zCliqIwg
すいません。自己解決しました。

ありがとうございました。
ttp://kasai86.ld.infoseek.co.jp/dos/esc.htm
883879:05/03/12 13:27:01 ID:zCliqIwg
これでできると思ったのですが
できませんでした。

XPでは、エスケープシーケンスは使えないんでしょうか
884名無し~3.EXE:05/03/12 14:42:00 ID:OeF0yg8Y
885名無し~3.EXE:05/03/12 16:23:42 ID:2XAWv59q
普段Win98使ってるのだが、別のマシンのWinXP上でバッチ的にmp3のエンコードを
やろうとしていてファイル名処理をしなきゃならないからwshでも使ってみるか、
と思ったらcmd.exeってwin98のcommand.comからかなり拡張されてるんだね。
このスレを流し見てかなりのことが出来そうなのがわかったよ。
だが、細かい処理をするのにはかなり試行錯誤がいりそう・・・
886名無し~3.EXE:05/03/12 22:04:24 ID:9Qlj55nE
NT系では16bitプログラムしかエスケープシーケンスは使えない。
887名無し~3.EXE:05/03/13 09:19:19 ID:ekyBgtcO
wowexec
888名無し~3.EXE:05/03/13 15:53:16 ID:mqNA9ll7
\x1b[1;31m

32bitでもエスケープシーケンスが反映される分、
Linuxのコンソールのほうが優秀だぞヽ(`Д´)ノウワァァン

\x1b[m
889名無し~3.EXE:05/03/16 23:29:55 ID:D10CST2c
【質問】
 WIN2000でSHUTDOWNを解除するコマンドがあるか。あるなら知りたい。

【調べた事】
 ・XPでは、SHUTDOWNのコマンドは使用できるが、2000ではコマンド自体がない。
 ・巷にあるツールでは、2000の環境でも、その辺のコントロールをするツールがある。
   (ただし、そのツールでキックしたSHUTDOWNに対して解除効果のみ)

【なぜ知りたいか】
 SYSTEMが不安定で、最近SHUTDOWNのカウントダウンが急にはじまる。
 データ保存する前に落ちるってのは百歩譲って仕様がないとしても
 サービスパック等のUPDATE中は非常にむかつく。
  (カーネルいじってる最中に落とされると、起動しなくなし、鬱)
 そこで、カウントダウン中に回避する方法を調べたいと。。。



  
890名無し~3.EXE:05/03/17 00:26:49 ID:RqNo9BjU
> 最近SHUTDOWNのカウントダウンが急にはじまる
これってまさか……
891名無し~3.EXE:05/03/17 01:03:04 ID:l3YAFRY+
892889:05/03/17 01:32:46 ID:vsspT97T
>>891
可能性大です…。

WINDOWSを再インストール後、裸同然のPCにも関わらず、回線繋いででセキュリティパッチを
あてようとしたので。その際に運悪く感染したのかもしれません。

症状も私の状況にマッチしているように思います。
明日詳細に確認・対応をしていきたいと思います。

ありがとうございました。

しかし、今頃MSブラストにやられるとは不覚…
893名無し~3.EXE:05/03/17 02:00:49 ID:THuGDjh0
原因究明しないで一時的な回避策を探そうとしたことの方が不覚だってことに気付け。
894名無し~3.EXE:05/03/17 03:56:41 ID:yG1sdp17
shutdown /A で止まったような木が駿河。
895名無し~3.EXE:05/03/17 11:01:33 ID:0vbb3NJr
指定時刻にmplayerc.exe(MediaPlayerClassic)で特定の動画を再生したいです。
cronNT(http://www.vector.co.jp/soft/winnt/util/se232096.html
を使用して、
指定時刻に以下のbatファイルを実行しますが、再生されません(batは実行されているようなのですが)
-----以下batファイル-----
C:\mplayer.exe "test.mpeg"
-----以上batファイル-----
同内容を手動で実行した場合は再生されるのですが、
どのようにしたら、自動で再生することが可能でしょうか?
お答え頂ければ幸いです。
896名無し~3.EXE:05/03/17 12:36:14 ID:FTuuOG2G
test.mpegをフルパスにすれば?
とりあえずタスクスケジューラからは問題なく再生できた
897名無し~3.EXE:05/03/17 16:51:03 ID:/DgM49vC
ATOKのバックアップ取りたいんですが
Cドライブ内だと
@echo off
cd %APPDATA%\Justsystem\Atok14
xcopy *.* F:\backup\atok\ /D /Y
pause
これで出来るんですがほかのドライブでこれを実行すると(フォルダはC:\〜と直接指定してます)

'C:\Documents' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。

と出てバックアップ取れません。どこを変更したらいいのでしょうか?
898名無し~3.EXE:05/03/17 17:57:33 ID:FTuuOG2G
cd /d %APPDATA%~~~
cd /d "C:\Documents and Settings\~~~"
899889:05/03/18 05:34:09 ID:PaLwTRqA
>>894
SHUTDOWN /A はXPのみ使用可能なコマンドなので、できなかったです。

あと、原因はブラストではなかったみたいです
900名無し~3.EXE:05/03/18 08:29:45 ID:JZaQmHdG
>>899
原因わかったの?
901名無し~3.EXE:05/03/18 21:51:50 ID:VOwrR3Ng
>>895
バックグラウンドで動いてて表示されてないだけじゃねの?
902名無し~3.EXE:05/03/18 22:08:50 ID:G7CBDPD7
findstr で直前のパターン?を任意の回数繰り返しを指定することってできる?
BREGEXP.DLL を使った正規表現でいう {n} みたいな。
903名無し~3.EXE:05/03/18 23:02:00 ID:VOwrR3Ng
findstr に使えるメタ文字は次のとおりです。

.       ワイルドカード:任意の文字
*      繰り返し:直前の文字またはクラスのゼロ個以上
^      行位置:行頭
$      行位置:行末
[class]  文字クラス:セットの任意の 1 文字
[^class]  逆クラス:セット以外の任意の 1 文字
[x-y]    範囲:指定した範囲の任意の文字
\x      エスケープ:メタ文字 x のリテラル使用
\<xyz    単語位置:単語の先頭
xyz\>   単語位置:単語の終わり
904名無し~3.EXE:05/03/20 02:11:36 ID:aHRxWLLB
いちおヘルプくらいは読んだ上で聞いたんだけど。無理なのね。
905名無し~3.EXE:2005/03/29(火) 14:25:56 ID:WyKgjPwd
こんにちは。↓のコマンドラインで hoge:~0,1!" の 1 の部分で
プログラムを止めて、1ではなく任意の数字を入力できるようにすることは
できるでしょうか?(なるべくなら2回止めずに、1回数字を指定したら
後のhoge:~0,1!"のところで1回目の数字を自動で獲得してくれるといいです。)

@echo off
setlocal enabledelayedexpansion
(%~d1) && (cd %1)
for %%a in (*) do (
Set hoge=%%~na
MD "%%~dpa!hoge:~0,1!"
MOVE %%a "%%~dpa!hoge:~0,1!"
)
D&Dしたフォルダ内のファイルをファイル名に従ってフォルダに振り分ける
コマンドのようですが、参照する先頭のファイルの文字数を指定したいのです。
よろしくお願いします。
906名無し~3.EXE:2005/03/29(火) 16:10:09 ID:Qfx0CYTE
>>905
@echo off
setlocal enabledelayedexpansion
cd /d %~dp1
set /p hage=文字数は?
for %%a in (*) do (
Set hoge=%%~na
MD "%%~dpa!hoge:~0,%hage%!"
MOVE %%a "%%~dpa!hoge:~0,%hage%!"
)
907905:2005/03/29(火) 19:58:16 ID:rs9Nb7/M
>>906
ありがとうございます。
でも、コマンドの挙動が少し変わってしまったようでつ。
D&Dしたフォルダの中身のファイルを振り分ける挙動だったのですが、
D&Dしたフォルダがあるフォルダのファイルを振り分けるようになって
しまったようです...。(´_`。)グスン
すいませんが、D&Dしたフォルダの中のファイルを振り分けるように
もう一度お願いしますです。
908905:2005/03/29(火) 20:43:13 ID:rs9Nb7/M
3行目を元に戻したらできました。
>>906さん大変ありがとうございました。m(_ _)m
9091/2:Windows暦21/04/02(土) 14:25:27 ID:kQdexS6c
ftpについて質問です。
ttp://www.atmarkit.co.jp/fwin2k/win2ktips/270ftpscript/ftpscript.html
をお手本にWSHで自動的にアップロードするスクリプトを書いたのですが、
FTPでサーバとのコネクトはとれるのですが、
アップロードの時にタイムアウトになるまで止まってしまいます。

例:ftp -s:test.txt
-- test.txtの内容 --
open <サーバホスト>
<ユーザ名>
<パス>
cd adir/bdir
ascii
put "C:\a.txt"
quit

-- コマンド実行時のプロンプト --
ftp> open <サーバホスト>
Connected to <サーバホスト>.
220 <サーバ名> FTP server ready
User (<サーバホスト>:(none)):
331 Password required for <ユーザ名>.

230 User <ユーザ名> logged in.
ftp> cd adir/bdir
250 CWD command successful.
ftp> ascii
200 Type set to A
ftp> put "C:\a.txt" // ここでタイムアウトになるまで待たされてるっぽい(1分くらい止まる)
Connection closed by remote host.
ftp> quit
9102/2:Windows暦21/04/02(土) 14:25:41 ID:kQdexS6c
当方の環境はWinXPProSP2で、
Windowsのファイアーウォールを有効にしています。
ファイアーウォールを無効にすると問題なくアップロード(put)できるのですが、
有効にしてこのコマンドで使われているプログラムの%SYSTEM%ftp.exeのブロックを解除しても
同じように途中で止まります。

ブロックする時にポップアップで警告するようにしても、
「このプログラムをブロックし続けますか?」
のダイアログで出てくるプログラムはftp.exeだけです。

自分だけが使うのならその度ファイアーウォールを無効にしたりすれば良いのですが、
仕事で配布する予定のものなので、できれば一回だけの設定などで簡単に回避したいのですが・・。

ちょっとスレ違いっぽくて申し訳ないのですが、
よろしくお願いします。
911名無し~3.EXE:Windows暦21年,2005/04/02(土) 15:32:44 ID:E9iJoLBH
>>910
察するにポートの空け方が間違ってるだけじゃないの?
kerioのfirewall使ってるけどftp.exeを許可したら問題なくputできたよ
コマンドラインから穴の空け方は
ttp://www.atmarkit.co.jp/fwin2k/operation/xpsp2dep02/xpsp2dep02_04.html
に書いてあるから、もう一度設定を見直してはどうか

まぁpro使ってるぐらいだから言われるまでもないかもしれんけど
配布される側のuser権限によってはftp使えないかもしれない、、
ことも考慮した方がいい
912名無し~3.EXE:2005/04/06(水) 23:59:07 ID:jUKr1WMs
CD(DVD)ドライブのドライブレターを取得する方法ってありますかね?
ログを読んでもちょっと理解できなかったので。。。
913名無し~3.EXE
>912
WSH使ってドライブA〜Zのドライブ種別を調べるのが最も手っ取り早いかも。