【.cmd】 バッチファイルスクリプト %4 【.bat】
1 :
デフォルトの名無しさん :
2008/12/22(月) 23:13:09 拡張子が .cmd または .bat のバッチファイルのスクリプティング(プログラミング)に関わる
質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
◆◆ご注意◆◆
Windows板の「初心者〜管理者まで必読!コマンドライン(DOS Pt.*)」スレや
PC初心者板のURLを貼りたがる人は、削除人にも認定された荒しですので
その人に指示に従う必要はありません。
◇前スレ
【.cmd】 バッチファイルスクリプト %3 【.bat】
http://pc11.2ch.net/test/read.cgi/tech/1217860043/ ※関連スレは
>>2 あたり
2 :
デフォルトの名無しさん :2008/12/22(月) 23:14:11
このスレッドは天才チンパンジー「アイちゃん」が 言語訓練のために立てたものです。 アイと研究員とのやり取りに利用するスレッドなので、 関係者以外は書きこまないで下さい。 霊長類研究所
このスレッドは3を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。
それよりさ、クリスマスの予定の話しで盛り上がらないか?
>>5 もしファイルじゃなくてフォルダを移動させたいのならfor /d使えば?
for /d %%a in ("0 [*") do move "%%a" f:\0-9\
おそらくMOVEで引っかかっていると思われ。
フォルダ単位で複数移動はできない感じ。
ワイルドカードを用いた複数指定じゃ、
ファイル名だけしか一致検索させないんだと思う。
後は
>>7 の方法でいけるのでは?
>6 なし 以上
11 :
デフォルトの名無しさん :2008/12/23(火) 05:27:39
>>7 さんのものを使ってちょこっと。
動作と見栄えは関係ないとは言え、元文があまりにも長ったらしくて見栄えがアレだったから改造。
下のサンプルは遅延展開使ったから「!」が入ってるフォルダは動かない。
一例なのでこれを使えといってるわけじゃないよ。長いのが好きなら長いままで。かってにして。
12 :
デフォルトの名無しさん :2008/12/23(火) 05:28:22
@echo off setlocal enabledelayedexpansion cd "%userprofile%\デスクトップ\MP3" set XY=1 2 3 4 5 6 7 8 9 0 set XZ=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z set X1=ア イ ウ エ オ set X2=カ キ ク ケ コ set X3=サ シ ス セ ソ set X4=タ チ ツ テ ト set X5=ナ ニ ヌ ネ ノ set X6=ハ ヒ フ ヘ ホ set X7=マ ミ ム メ モ set X8=ヤ ユ ヨ set X9=ラ リ ル レ ロ set X0=ワ ヲ ン rem 0-9 for %%A in (%XY%) do ( for /D %%B in ("%%A [*") do ( move "%%B" "f:\0-9\" )) rem A-Z for %%A in (%XZ%) do ( for /D %%B in ("%%A [*") do ( move "%%B" "f:\%%A\" )) rem ア-ン for %%A in (%XY%) do ( for %%B in (!X%%A!) do ( for /D %%C in ("%%B [*") do ( move "%%C" "f:\!X%%A:~0,1!行\%%B\" )))
13 :
デフォルトの名無しさん :2008/12/23(火) 08:51:11
毎日バッチ処理をしたいのですが、 西暦日付をフォルダ名にするコマンドがわかりません。 たとえば、最初に20081223というフォルダをつくり、 その下に、バックアップファイルを配置するバッチファイルにしたいのです。 どのようなコマンドを打てばよいでしょうか?
マイクロソフトに注文する
md %date:/=%
>13 ↓こうすれば、WindowsNT/2000/XPで共用可。>15が有効なのはWin2000以降だっけ?WinXP以降だっけ? FOR /F "eol=; tokens=1,2,3 delims=/ " %%i IN ('DATE/T') DO @MD %%i%%j%%k
17 :
13 :2008/12/23(火) 13:09:16
>>15 ,16さん
ありがとうございます。作成できました。
18 :
13 :2008/12/23(火) 13:20:09
>>15 ,16さん
Windowsコマンド辞典という書籍を見ても載っていませんでした。
お勧めの書籍などありましたら、ご教授いただけますでしょうか?
書籍よりhelpコマンドで列挙されたコマンドのヘルプ見た方がよさげ 最初は set /? や for /? がお勧め
せっかくヘルプに載っているのに、応用ができないなら何読んでも無駄。
helpにないコマンドもあるけどな
ぐーぐると/?があれば大体は Sever Core管理するようになってからもだいたいこれで事足りる
バッチでunicodeあかんみたいやね
type uncode|cmd
バッチファイルでgzipの圧縮・解凍をしたいのですが 何かいい方法ないでしょうか
すいません自己解決しました gzip.exeがあったんですね
chcp 65001 more<a.txt Not enough memory. なぜだ?
>>28 chcp 65001>a.txt
じゃなくて?
chcp 65001|more
でもなくて?
つうか chcp 65001するとバッチとかまともに動かなくね?
それが物を聞く態度か?このクソ野郎
MultiByteToWideChar使ってれば65001が変換できるのに
>>30 chcp 65001 & hoge & hage
または
(
chcp 65001
hoge
hage
)
typeで65001読めるのに変ね
みなさん、助けて下さい。 .bat(バッチ)から.batを実行したいのですがエラーになってしまいます。 <やりたい事> @メニュー的なバッチからOracleインストール後 AOracleのDB作成sqlを実行する.bat(バッチ)を実行する。 <現状> メニュー的バッチからAをCALLで呼びだすと「内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」とコンソールに表示されてしまいます。 コマンドの拡張子を実行できる設定になっている事は確認できています。 また、コマンドプロンプトからAのバッチを実行すると実行できました。 色々と調べて見たのですが原因、解決策が見つかりません。 どうか皆様のお力をお借りできればと思います。 宜しくお願いします。
わかりません
'' は、内部コマンドまたは外部コマンド、 ↑ここを書けよ
>36 仮にSQLファイル名を"データベース作成.sql"とすると、(2)は以下のようなコマンドラインで バッチファイル内に記述すればOKだと思うが、そうしてるか? ↓ Sqlplusw.exe ユーザ名/パスワード@ホスト名 @データベース作成.sql
「ウミガメのスープ」 ゲームのはじまり。はじまり。
おぢさんがいい事を教えよう。 ひとつは 「@ECHO ON」 というコマンド。 バッチファイルが動いている様子が見える魔法の呪文だ。 もうひとつは 「@PAUSE」 というコマンドだ。 キーボードの Enter を押すまで一時停止してくれる有難いコマンドだ。 動きが早すぎて目で追えないときにつかう。 たとえば、こんな具合・・・ [メニュー的なバッチ.bat] @ECHO ON ←【これ】 CALL OracleのDB作成sqlを実行する.bat @PAUSE ←【これ】 こうすればエラーメッセージが画面に表示されるので原因がつかみやすいんだ。 これを世間では「デバッグ」と言うんだ。
パススルー
44 :
初心者 :2009/01/04(日) 11:59:00
CDの起動ディスクで、起動時にCTL+Cで停止すると、CD-ROMドライブの D:ドライブとかじゃなくて、必ずA:ドライブになってますよね? あれはどういう意味なんでしょうか? 仮想ドライブ? ghostのリストア用の起動ディスクを作成しているのですが 分からないことだらけです。
46 :
初心者 :2009/01/04(日) 13:18:17
DOS起動のBootDiskの話なので、ここでもOKかなと思ったんですが。 他に行きます。
>44 BOOTDISKの仕組みを理解すると、なぜA:なのかがわかってくるよ。 A:の中にあるautoexec.batをtypeで見ればd:のghostを呼び出していることがわかるはず。
50 :
デフォルトの名無しさん :2009/01/07(水) 01:45:15
xcopyでマイドキュメントの中のファイルをコピーしたいのですが ユーザー名の部分を*にすると動きませんでした。 そこでC:\Documents and Settingsのなかをxcopyして/EXCLUDEでAll Usersと Default Userを除外しようとしたのですが除外できません。どうすればよいでしょうか? excludelist.txtには以下のように記述しています "All Users" "Default Use" .db .zip .lzh
51 :
デフォルトの名無しさん :2009/01/07(水) 01:46:14
xcopyでマイドキュメントの中のファイルをコピーしたいのですが ユーザー名の部分を*にすると動きませんでした。 そこでC:\Documents and Settingsのなかをxcopyして/EXCLUDEでAll Usersと Default Userを除外しようとしたのですが除外できません。どうすればよいでしょうか? excludelist.txtには以下のように記述しています "All Users" "Default Use" .db .zip .lzh
ダブルクォートがいらないんじゃないかな。勘だけど。
つけなくても変わらなかったです。 フルパスでも通らないので書式に問題があるのだと思うのですが・・・
>53 xcopyはバッチ専用ではないからスレ違い バッチから呼べると言ってもゲームソフトだってバッチから呼べるわけだし、 個々のコマンドやソフトの使い方なんかいちいち質問するな
>53
プログラム板はプログラムを作る人のための板です。
プログラムやソフトを使う人の板ではありません。
http://pc11.2ch.net/tech/ ここのページの先頭に書いてある注意書きをよくお読みください。
プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。
ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。
Javascript は Web 制作板、CGI は Web プログラミング板へ。
業界談義、愚痴はプログラマ板へどうぞ。
ゲーム関係の話題はゲーム製作板へどうぞ。
ネタ、板とは関係の無い話題はご遠慮ください。
Vistaだと XCOPY使うなボケ ROBOCOPY使え って怒られるんだよな
>>53 書式に問題があると思うなら最初にその書式を晒せばいい
>>51 ↓これで"All Users", "Default User", *.dbの除外は出来たから、こわい人もいることだし、
後は自分でがんばってくれ。
C:\tmp>type ex.txt
All Users
Default User
.db
C:\tmp>xcopy /y /s /exclude:ex.txt tmp tmp2
こわい人じゃなくて気違いな
ちなみに・・・ /exclude:ex.txt のところを、 /exclude:C:\hoge\unko\ex.txt みたいに パス指定するとダメだったような気がしないでもないかもしれない・・・ いちどそれでハマったことがあるようなないようなよくわかりません。
for のセットにパイプ入りのコマンドって使えますか? ↓だと使えませんでした。 for /f %%i in `schtasks /query | findstr ^copy` do echo %%i
for/?
for /f %%i in ('"echo hoge|more"') do echo %%i
66 :
デフォルトの名無しさん :2009/01/16(金) 16:24:31
for /f %%i in ('echo hoge^|more') do echo %%i
echo hoge|for /f %%i in ('more') do echo %%i
入力を促す場面で echo 入力してください set /P X= とした場合 さらに、入力例が規定値で入ってるようには改造出来ない? 無理かな
"つかえback"
部分否定しただけなのに全部否定と誤読ってのはプログラマとしてどうだろう
じゃあ正しくはどういう意味なのさ?
echo 入力してください cscript hoge.vbs set /P X= createobject("wscript.shell").sendkeys "入力例"
73 :
68 :2009/01/16(金) 17:44:43
>>72 echo 入力してください
cscript //B hoge.vbs
set /P X=
で、出来ますた。
でも別VBSがちょっとエレガントじゃないみたいな気もするが一応蟻蛾d(ry
jscript埋め込み mshtaインライン vbscript埋め込み powershellインライン etc.
>createobject("wscript.shell").sendkeys "入力例" 日本語ダメね
powershellなら日本語もいけるよ 半角カタカナはダメだけど
PowerShell使うならそもそもsetコマンド使う必要なくね?という多分言ってはいけない突っ込み
@echo off set X=Y set /P X=うんこしますか?(Y) if /i %X%==Y (echo ブリブリ) else (echo じょんよろりん)
入力例の文字列を消せる必要があるとは誰も言ってないわけか
@echo off set X=Y set /P X=ホモですか?(Y) if /i %X%==Y (echo アッー!) else (echo しゃぶりてええええええええ)
for /f %%i in ('cscript hoge.vbs') do set X=%%i wscript.echo inputbox("入力してください","タイトル","入力例")
83 :
デフォルトの名無しさん :2009/01/19(月) 21:47:59
-------------------------------------------------------------- setlocal for /f %%A in (リストB.txt) do ( find "%%A" データA.txt echo %errorlevel% ←@ここ if %ERRORLEVEL% equ 0 (echo "%%AOK") else (echo "%%ANG") )>>.\test1.log endlocal exit /b 0 -------------------------------------------------------------- @findでサーチした値がなくてもエラーレベルが0になっちゃうんですけど>< 普通に手打ちすると値がない場合はERRORLEVELは1なのに なんでですか?
@echo off set X=Y set /P X=男ですか?(Y) if /i %X%==Y (echo チンコ) else (echo マンコ) なんでですか?
-------------------------------------------------------------- @echo off set X=Y set /P X=男ですか?(Y) if /i %X%==Y (echo 入れてください) else (echo 出してください) --------------------------------------------------------------
>>83 set /? して最後の方の「遅延環境変数の展開」を読めばいいと思うよ
echo %errorlevel% は call echo %%errorlevel%% できるが if %ERRORLEVEL% equ 0 (echo "%%AOK") else (echo "%%ANG") は call if %%ERRORLEVEL%% equ 0 (echo "%%AOK") else (echo "%%ANG") できないからな 遅延しかないかのお
if not ERRORLEVEL 1 (echo "%%AOK") else (echo "%%ANG")
fc if not ERRORLEVEL 1 (echo OK) else (echo NG) =>OKになるが?
for 〜 do () のカッコで括られた部分は、見た目は複数の行に分かれているが 頭の中では1行だと思ったほうがいい。 たとえば、これは・・・ for 〜 do ( find "うんこ" ちんこ.txt echo %errorlevel% ) ↓こう書いたのと同じだと考える。 for 〜 do (find "うんこ" ちんこ.txt & echo %errorlevel%) %変数% 型の変数は、1行を実行する前にまとめて置換してから実行されるので for 文を実行する前の値に置換されてから for 文が実行される。 () カッコ内で %変数% に値をセットするのは避けたほうが、混乱しないやろ。
用途によっては、%errorlevel% を使わずに、&& や || で済ませるのもいいかもしれない。 for 〜 do ( find "うんこ" ちんこ.txt && echo OK || echo NG )
()カッコ の中身をサブルーチン化してみた。 動作チェックしてないけど、コレでどうかな。 for /f %%A in (リストB.txt) do call :unko %%A データA.txt >>.\test1.log exit /b 0 :unko find "%1" "%2" echo %errorlevel% if %ERRORLEVEL% equ 0 (echo "%1OK") else (echo "%1NG") exit /b
マルチだから相手すんな
94 :
デフォルトの名無しさん :2009/01/21(水) 17:17:16
マルチ先を示さないとわからんよ
ぐぐればわかるよ
96 :
デフォルトの名無しさん :2009/01/21(水) 17:31:10
1行書く暇があったらURL書いた方が早いだろ 何もったいぶってるんだ?www
1行書く暇があったらぐぐった方が早いだろ 何もったいぶってるんだ?www
98 :
↑こいつ基地外 :2009/01/21(水) 17:34:27
↑こいつ基地外
100 :
デフォルトの名無しさん :2009/01/21(水) 18:18:31
マルチを告発するためにわざわざ出てきて 何が何でもマルチ先を秘匿したいとは、よっぽどの変人と見たほうがいいだろう
変人というか暇人 放置推奨
102 :
デフォルトの名無しさん :2009/01/21(水) 18:25:26
URL切れてるしww間抜け坊主 そんなもの修復してまでやるやつはいないよ
>マルチを告発するためにわざわざ出てきて ちがうだろ? 親切だろ?
マルチがばれて必死だなwww
解決済なのに?
108 :
デフォルトの名無しさん :2009/01/21(水) 21:10:02
#295-297←なんだこれ 2chスレのURLもまともに貼れないアホ
109 :
デフォルトの名無しさん :2009/01/21(水) 21:18:45
というかすべて終わってからマルチ報告しても意味無いだろ
パンツ見えてますよ チャック開いてますよ ウンコついてますよ カツラずれてますよ 臭ってますよ みたいな効果が期待できる
お姉さんパンツ見えてますよ
すでにパンツ見えてしまってから報告しても意味無いだろ
というかすべてパンツ見てしまってから報告しても意味無いだろ
ふぅ お姉さんパンツ見えてますよ
お嬢さん、亀の子タワシ見えてますよ
116 :
デフォルトの名無しさん :2009/01/22(木) 00:08:15
見苦しいな
なんだこのスレ 明らかに荒らしがいる
>>108 html知らないアホ
直後のレスも見れないアホ
このレスを叩くアホ
121 :
デフォルトの名無しさん :2009/01/22(木) 06:55:33
html で範囲指定とかできるわけないし
できるよ
2chそのものがhtmlで表示してるんですけど。
なんかひとり必死なのがいるね バッチリ釣られてるし
釣られてるというか、思惑通りってやつだな > このレスを叩くアホ
URLをHTMLと思ってるの?
ぐぐればわかるよ
129 :
デフォルトの名無しさん :2009/01/22(木) 14:09:12
HTMLを知ってる
>>118 のHTML講座の会場はここですか?
今は URL じゃなくて URI って言うんだけどな
/⌒⌒⌒⌒⌒⌒ )) | ( 从 ノ.ノ | ( ./  ̄ ̄ ̄ ̄\ | ウリの国では URL を |:::::: ヽ 丶. | URI と言うニダ |::::.____、_ _,__) ∠ (∂: ̄ ̄| ・ー |=|・ー | \_________ ( (  ̄ )・・( ̄ i ヘ\ .._. )3( .._丿 / \ヽ _二__ノ|\ /⌒ヽ. \__/\i/\_| | ヽ \o \ | | \o \
ぐぐればわかるよ
HTML教えてやらんとわからんよ
ごめん、HTMLじゃなくてURLね
ごめん、ごめん、URLじゃなくてURIね
if errorlevel == 1 なにこれ?
if ERRORLEVEL == 0ってのは0以上らしいよ
最初は誰でも知らないんだよ。 少しずつ勉強して覚えれば良いじゃないか。 シロウトが趣味で書いたものを、こんなところに晒すんじゃない。
だからー ==なのに以上とはこれ以下に? もとい如何に?
if=errorlevel=1=echo=1 if;errorlevel;1;echo;1 if,errorlevel,1,echo,1 みたいな
でたらめを公表すれば叩かれる。公表したものには素人もプロも無い。 それが嫌な素人はチラシの裏にかいてりゃ良い。 C:\>if /? バッチ プログラム中で条件処理を実行します。 IF [NOT] ERRORLEVEL 番号 コマンド IF [NOT] 文字列1==文字列2 コマンド IF [NOT] EXIST ファイル名 コマンド
>>142 どう見てもチラシの裏じゃん。
IF ERRORLEVEL 1 ・・・
IF %ERRORLEVEL% == 1 ・・・
これをごっちゃにしちゃったんだな。
それで? IF [NOT] 文字列1==文字列2 コマンド のシンタクスで IF [NOT] ERRORLEVEL 番号 コマンド のセマンティクスになる理屈はわかったんかい?
パーザが手抜きしてるだけでしょ。
if errorlevel ========== 0 echo a でも通るし。
シマンテックス ノートンの会社か?
>>144 書いた本人に聞けよ。このスレで聞いても本人には伝わらんぞ。アホ杉
間違ってる訳じゃないからいいんじゃないの
今は動く。将来はわからない。アマチュアの作品ならこれでもいい。
>>140 だからー
if errorlevel == 1
というのは
if errorlevel 1
と同じだろうがw
if %errorlevel% == 1
とは全然意味が違うんだよ。
アマチュアの作品発表会
SET IF=うんこ IF IF==うんこ ECHO ちんこ! IF %IF%==うんこ ECHO うんこ! IF IF==IF ECHO しっこ!
@ECHO ON fc aaa bbb ECHO 「ERRORLEVEL」 ECHO 「%ERRORLEVEL%」 IF ERRORLEVEL 1 ECHO あたりまえ IF ERRORLEVEL == 1 ECHO あら不思議! IF %ERRORLEVEL% == 1 ECHO しっこ! IF %ERRORLEVEL% == 1 ECHO ちんこ!
どうやら、
ERRORLEVEL は文字列ではない。(予約語とか関数とか特殊扱い)
%ERRORLEVEL% は文字列である。
ということらしい。
よって、
>>144 はうんこ!
SET IF=うんこ IF IF==うんこ ECHO ちんこ! IF %IF%==うんこ ECHO うんこ! IF IF==IF ECHO しっこ! IF IF==うんこ ECHO まんこ! IF %IF%==うんこ ECHO ちんこ! IF IF==IF ECHO ちんこ! IF IF==まんこ ECHO ちんこ! IF %IF%==うんこ ECHO まんこ! IF IF==IF ECHO しっこ! IF IF==まんこ ECHO ちんこ! IF %IF%==うんこ ECHO うんこ! IF IF==IF ECHO まんこ!
みんな if 大好きなんだなw
そのパスが フォルダなら、ファイルなら の条件で分岐処理させたいんですけど ファイルタイプをチェック出来る関数はバッチコマンドにありますか? ググって調べてみたけど見あたらなくて ファイルのサイズや存在するかしないかで代用するしかない状態です
IF EXIST そのパス\NUL ECHO フォルダだよ
for/?
165 :
↑もう挨拶していなくなった終わった話に絡むアホ助 :2009/01/24(土) 18:18:47
attrib/?
IF=EXIST=そのパス\NUL=ECHO=フォルダだよ
@if (0==1) rem ファイル情報出力ツール
>>162 @echo off
cscript.exe //nologo /e:jscript %0
exit /b %ERRORLEVEL%
@end
function Format(form) {
for (var i = 1; i < arguments.length; i++)
form = form.replace(new RegExp("\\{" + (i - 1) + "\\}", "g"), arguments[i]);
return form;
}
function GetNewestAndOldestFiles(folder)
{
with (new Enumerator(new ActiveXObject("Scripting.FileSystemObject").GetFolder(folder).Files)) {
var newest = item(), oldest = item();
for (; ! atEnd(); moveNext()) {
if (newest.DateLastModified < item().DateLastModified)
newest = item();
if (oldest.DateLastModified > item().DateLastModified)
oldest = item();
}
}
return { Newest: newest, Oldest: oldest };
}
with (GetNewestAndOldestFiles(WScript.Arguments.length ? WScript.Arguments(0) : ".")) {
var n = new Date(Newest.DateLastModified), o = new Date(Oldest.DateLastModified);
WScript.StdOut.Write(Format("最新のファイル\n最新ファイル名 ⇒ {0}\n更新情報 ⇒ {1}\n\n"
+ "再古のファイル\n最古ファイル名 ⇒ {2}\n更新情報 ⇒ {3}\n\n"
+ "2ファイルの間隔 ⇒ {4}日間\n",
Newest.Name, n.toLocaleString(), Oldest.Name, o.toLocaleString(),
((n - o) / 864e5) | 0));
}
IF EXIST そのパス\*.* ECHO フォルダだよ
D:\Temp\tmp.exeが存在する前提で、 B:\Tempディレクトリが無ければD:\Tempディレクトリとその中身をB:へコピーして、 その後 B\:Temp\tmp.exe を起動するバッチファイルお願いします。
SET IF=うんこ IF IF==まんこ ECHO ちんこ! IF %IF%==ちんこ ECHO まんこ! IF IF==IF ECHO しっこ!
>>170 B:\Tempがあって B\:Temp\tmp.exe が無い場合は何もしなくていいのか?
ECHO まんこ!まんこ!まんこ! ECHO ちんこ! ちんこ! ちんこ!
>>172 判りにくくてすみません。
B\:Temp\tmp.exe起動は共通でお願いします。
コマンドラインのリダイレクトを追加してくださるとうれしいです。
でたらめを公表すれば叩かれる。
エェー 信用できないならやるなYO
B:\ とか何か懐かしいドライブレターだな。 最近見た事が無い。
A:\すら最近見ることは稀だ。
読んでもないし試してもいない
喜んでタダ働きします
コマンドラインのリダイレクトって何?
目的はカレントを作業ディレクトリに使用するアプリを RAMディスク上に移して使用することです。 他のデバイスに埋もれないようにする為に使わないところを割り当てました。 >181 B:\Temp\tmp.exe "%0" 呼称が間違っていたらすみません。
自分で調べない試さない 聞いた方が楽
IT土方をなめるなよ。 ピンハネされまくって、ひ孫受けの土方に渡る金は、元金の1/3以下
これぐらいずうずうしくないと業界やって行けない
もちろん自分用ですw。 C#みたいに簡単な言語なら自分でゴチャゴチャやるんですが、 バッチは触ったこと無くて、制約とかファイルの扱いとかエラーになる理由がイマイチよくわからないので、 それならいっそ聞いてみようかと思いまして。
試行錯誤で結果オーライの世界だから理由なんかない 環境違うと動かない可能性があるから注意
copy D:\Temp\* B:\Temp\ B:\Temp\tmp.exe "%0"
>189 要求仕様の1割も満たしていない典型的なダメ回答ktkrw
どこが?
C#でやればいいのに
まあ別に既存のファイルに上書きするなとか、ユーザーの入力待ちで止めるなとか 仕様には書いてないしな。
はっきり書いてあるじゃん
気に入るように自分で作れよ
196 :
170 :2009/01/24(土) 22:49:19
ちょっと調べにもぐってたので遅くなりましたが、自己解決しました。 お手を煩わせてしまった方、申し訳ないです。一応掲載。 if exist B:\Temp goto ST xcopy /E /Y /I D:\Temp\tmp.exe B:\Temp\tmp.exe :ST B:\Temp\tmp.exe %1 変数の扱いや、引数にスペースが入ってたり空だったりする場合の""をどうするかで悩んでたのですが、 どうやらパスにスペースがある場合は自動的に""が付くようで安心しました。
お前ら役立たずだから自己解決しました
198 :
デフォルトの名無しさん :2009/01/24(土) 23:01:24
事故解したのか。 まあ、そうやって自分で調べて解決してこそPGだな。 一応、>189は「B:\Tempディレクトリが存在しないとき」に実行するとエラーになるはずなので 提示されてる仕様を満たしてないのは間違いないと思うぞ。
補足:こうしないとDOS窓が閉じないですねw。 B:\Temp\tmp.exe %1 ↓ start B:\Temp\tmp.exe %1
答えなきゃ良かった
ショートカットにしたほうが(A)よ cmd.exe /c (if not exist B:\Temp xcopy /E /Y /I D:\Temp\tmp.exe B:\Temp\tmp.exe) & START B:\Temp\tmp.exe
フォルダのサイズ(サブディレクトリも含む)を取得するにはどうすれば?
dir /s + for
でたらめを公表すれば叩かれる。公表したものには素人もプロも無い。 それが嫌な素人はチラシの裏にかいてりゃ良い。
というかすべて出終わってから自己解決します 後出し最強
>>196 > if exist B:\Temp goto ST
> xcopy /E /Y /I D:\Temp\tmp.exe B:\Temp\tmp.exe
> :ST
> B:\Temp\tmp.exe %1 ←毎回通るけどいいのかな?
208 :
207 :2009/01/25(日) 00:51:11
なんでもないです>< 気にしないでください>< 俺ならgotoなんかしないでif文の中にコピー文入れちゃう と負け惜しみ言っときます
211 :
デフォルトの名無しさん :2009/01/25(日) 21:01:35
>>210 毎回再起動時にクリアされるRAMディスクに、起動時にまとめて書き込むよりもオンデマンドで書き込む方がいいってことだろ。
関連付けやショートカットの参照先をそのバッチにすれば、無意識のうちにRAMディスク上を作業ディレクトリに出来る。
俺も似たことやってるので想像はつく。もっともバッチじゃなくてランチャだが。
保存先をユーザープロファイルにすれば、多ユーザ環境で細々したソフトの作業ディレクトリを分けるのに使える。
Tempフォルダ自体を消さずに、中身だけを空にする命令って可能ですか? del "C:\Documents and Settings\xxx\Local Settings\Temp\*.*" だと .tmp ファイルは消してくれるんですが、それ以外のフォルダが残ってしまい、 rmdir /S "C:\Documents and Settings\xxx\Local Settings\Temp\" だとTempフォルダごと消えてしまいます・・・(あたりまえですが)
cd /d "C:\Documents and Settings\xxx\Local Settings\Temp\" rmdir /S "C:\Documents and Settings\xxx\Local Settings\Temp\"
>>212 ::こまごまと削除していく方法
cd "C:\〜\Temp\"
for /f "tokens=*" %A in ('dir /b') do del %A
::新規作成する方法
rmdir /s "C:\〜\Temp\"
mkdir "C:\〜\Temp\"
下の方が確実だと思うけどお好みで。
>for /f "tokens=*" %A in ('dir /b') do del %A 残りそう
例えば、 for /f "tokens=*" %A in ("a b") do echo del %A
そもそもフォルダが残るだろ?
'del'じゃフォルダ消せなかったな。 cd "C:\〜\Temp\" for /f "tokens=*" %A in ('dir /b') do ( if exist "%A\" ( rd /s "%~A" ) else ( del "%~A" ) )
残りそう
例えば、 for /f "tokens=*" %A in (";ab") do echo del "%A"
for /f "tokens=*" %A in (" ab") do echo del "%A" これも残る
cd "C:\〜\Temp\" for %A in (*) do del "%A" for /d %A in (*) do rd /s "%A" どうやったらそんな例外を見つけて来れるんだよw
cd "C:\〜\Temp\" for %A in (*) do del "%A" for /d %A in (*) do rd /s "%A" rmdir /s "C:\〜\Temp\" mkdir "C:\〜\Temp\" cd /d "C:\Documents and Settings\xxx\Local Settings\Temp\" rmdir /S "C:\Documents and Settings\xxx\Local Settings\Temp\" start B:\Temp\tmp.exe %1
find "うんこ" ちんこ.txt echo %errorlevel%
cd /d "C:\Documents and Settings\xxx\Local Settings\Temp\"
228 :
デフォルトの名無しさん :2009/01/30(金) 19:30:17
>>223 del "C:\Documents and Settings\xxx\Local Settings\Temp\*.*"
for /d %A in ("C:\Documents and Settings\xxx\Local Settings\Temp\*.*") do rd /s %A
cdはいらないよ
つ%Temp% del "%Temp%\*" for /d %A in ("%Temp%\*") do rd /s %A
230 :
デフォルトの名無しさん :2009/01/31(土) 01:38:26
拡張子はbatしか使ったこと無いけど、batとcmdの違いって何なんだ。
9x/DOSなどcommand.comではbatしか認識しない。 cmd.exeはcmdも認識する。それだけ。
Tempフォルダ内を掃除するスクリプトですが、
>>228 さんの
echo y|del "C:\Documents and Settings\xxx\Local Settings\Temp\*.*"
for /d %%A in ("C:\Documents and Settings\xxx\Local Settings\Temp\*.*") do echo y|rd /s "%%A"
と、
>>223 さんの
cd "C:\Documents and Settings\xxx\Local Settings\Temp\"
for %%A in (*) do del "%%A"
for /d %%A in (*) do echo y|rd /s "%%A"
をメモ帳に書いてやってみたところ、どちらもうまく
Temp内の、使用していないファイルとフォルダ(中身が空のもの含む)をすべて削除してくれたようです。
for %%A in (*) do del "%%A" はYes/Noが返ってこず、即削除なのに
for /d %%A in (*) do rd /s "%%A" はひとフォルダごとにYes/Noが返ってくるんですね。
大変参考になりました。
ありがとうございます。。。
http://oshiete1.goo.ne.jp/qa276713.html TEMPファイルを削除するには? - 教えて!goo
質問者:welovekobe TEMPファイルを削除するには?
困り度:
すぐに回答を! Windows2000を使用してますが、アプリケーションの使い方が悪いせいか、
Local Settingフォルダ内のTEMPフォルダの*.tmpファイルが
すぐたまってしまいます。autoexec.batはあるにはありますが、
中身はまっしろでした。どうも使われていないみたいです・・・。
Windows2000のOSのしくみがどうも良く分からないのですが、
Windows2000で、起動時に自動的にtempファイルを除去
する方法をどなたかご存知の方、いらっしゃいましたら、
是非、お教え下さいませ。よろしくお願いします。
質問投稿日時:02/05/23 12:15質問番号:276713
直ぐに出来る方法?を2点ほど ソフトをインストールして行う方法 1.No1さんが言われているソフトやWindows半標準?のTweakUI等を 使用すればソフトが自動でやってくれます。また、他の人のソフトに 頼りたくなければそういうソフトを自作すればいいだけです。 ソフトをインストールしないで行う方法 2.Tempフォルダの中身を削除するBat(バッチ)ファイルを作成する。 Batファイル中身の例: del "C:\Documents and Settings\hogehoge\Local Settings\Temp\*.tmp" 作ったBatファイルをスタートアップに入れればWinLogon時に削除できます。 また、別のタイミングでファイルを消したい場合(時間指定等々)は コントロールパネルにタスクと言うのがあります。これに登録すれば OS起動時・Logon時・指定時間・何時間置等々指定が可能です。 いかがでしょうか。 回答日時:02/05/23 12:44回答番号:No.2 この回答へのお礼 具体的なアドバイスどうも有難うございました。 BATファイルでも、やってみます。どうも有難うございました。
「窓の手」というソフトで起動時にTEMPファイルを削除するような設定にできます。 他にいろいろな設定もできるので入れておいて損はないと思います。 また、メモリに余裕があるならRAMディスクを作るのもいいと思いますよ。 二つともVectorでダウンロードできます。 回答日時:02/05/23 12:25回答番号:No.1 この回答へのお礼 早々のお返事どうも有難うございました。 そういうンフトがちゃんとあるんですね。 試してみます・・・。どうもです。
http://enjoy-pc.info/37/88/001050.html エンジョイ ・ PC ( パソコン )
初心者のためのパソコン講座です。
初心者がパソコンを購入する方法からパソコンになじむ方法、
初心者がパソコンを使いこなしていくための情報をお伝えしていきます。
トップページ > WindowsXPの軽量化 > Tempフォルダ内の一時ファイルを自動的に削除する
WindowsXPの軽量化
Tempフォルダ内の一時ファイルを自動的に削除する
スポンサードリンク
Windowsは使っているうちにTempフォルダ内に一時ファイルがたくさんたまってきます。
この一時ファイルは、名前のとおり一時的に使うファイルで、Windowsを再起動したら不要なファイルです。
このTempフォルダ内の一時ファイルを自動的に削除することによって
ディスクの容量が無駄に消費されるのを防ぎます。
Tempフォルダ内の一時ファイルを自動的に削除するには次のような設定を行います。
■「窓の手」を起動します
■「ログオン(2)」タブを選択します
■「ログオン時にTempフォルダ内を削除」にチェックを入れ、
「ファイルだけを削除」のチェックを入れずに「設定反映」ボタンを押します
■「閉じる」ボタンを押し「窓の手」を終了します
システムが不安定でおかしくなったとサポートに持ち込まれたPCには 窓の手がインストールされている割合が多いんだよね。 バッチとは関係ないけど。
http://oshiete1.goo.ne.jp/qa1724639.html OS XP tempファイルの削除方法 - 教えて!goo
教えて!goo > デジタルライフ > その他(デジタルライフ)
OS XP tempファイルの削除方法
困り度: すぐに回答を!
OS Meでは、単独であるので削除しやすかったのですが OS XP tempファイルは、
まとまって単位で箱に入っているので削除しにくいのですが、
どうすれば箱の中の選んだものを削除を1個なり削除することは可能でしょうか。
よろしくお願いします。
質問投稿日時:05/10/20 17:56質問番号:1724639
#1です。お礼をありがとうございました。
"答えてねっと"見ました。
確かにC:\TEMP\**は、98/MEの頃の一時ファイルの保管場所です。(C:\TEMP\**の意味、わかりますか??)
XPの場合は、私が、紹介したところです。
・・ですから、該当するフォルダーを開いて、あとは各ファイルをクリック、上にある"×"をクリックして削除するだけです。
もちろん削除しても問題はありません。
>自分がいらないと・・1個でも減らし消したいのです。
あと、PCの不要ファイルを削除したいのなら・・
EasyCleaner 2.0.6.380
?
http://cowscorpion.com/Cleaner/easycleaner.html? CCleaner 1.24.180
?
http://cowscorpion.com/Cleaner/ccleaner.html? 上記のフリーソフトが、お勧め、興味あるならのぞいてみてくださいね。
ちなみに外国のサイトのソフトですが、日本語表示可能ですよ。
以上
C:\TEMP\**の意味は、わかります。
XPは、少しややこしくなっておりますね。
答えてねっと 答えて検索で OS XP tempファイル削除
でかなりヒットはしました。基本がよく飲みこめていないのでがんばろうと思います。
この回答へのお礼 ありがとうございました。ryo_manさんは、なかなか
パソコンにおくわしいとお見受けしました。
昔、puzouさんというお詳しい方と受ける感じがよく似ていらっしゃるなーと思いました。
他にレジストリ操作などまだまだおっかないんでくわしく
なれたらイイナーと思っております。
del/? rmdir/?
教えてgooをコピペしているのは何の目的だろう
http://www.kotaete-net.net/Docs.aspx?docname=TOP1 答えてねっととは?
▼「答えてねっと」は、マイクロソフトが運営するパソコンに関する Q&A サイトです。
○ 「パソコンを使っているけど、詳しい人がそばにいないから何もできない。」
○ 「パソコン用語がわからないから、本や HELP を見てもわからない。」
○ 「もっと簡単にできる方法はないのかしら。」
○ 「どうやったらもっと見栄えよくできるの?」
○ 「自分が覚えたことを他の人にも教えてあげたい。」
○ 「他の人と、情報や意見を交換したい。」
こんな悩みや希望をお持ちになったことはありませんか?
悩みはあるけど聞く人がいない、恥ずかしくて聞きづらい、情報交換の場がない。
「答えてねっと」は、このような人たちみんなが満足できるような、
聞きやすい、わかりやすい、そして楽しい!をコンセプトに開設いたしました。
マイクロソフト製品をはじめとした、パソコン一般に関するトラブルや疑問などについて、
24 時間いつでも無料で相談することができます。
また、質問に対し自分が知っている情報があれば、それを回答として投稿する、
そんな助け合いや情報交換の場としてご利用ください。
「答えてねっと」は、パソコンに不慣れな初心者の方をはじめ、使い込んだパワーユーザーの方まで、
すべての皆様が安心して利用でき、ご満足いただけるサイトを目指していきます。
244 :
デフォルトの名無しさん :2009/02/01(日) 11:42:38
batファイルの練習でDOS画面にHelloって出力したいのですが 画面が一瞬で消えてしまいます どのようにしたら画面を消さないで文字を表示したままにできるのでしょうか? ECHO Hello
pause
246 :
244 :2009/02/01(日) 11:55:32
ありがとうございました おかげさまで無事解決できました
スタートボタンにマウスを合わせるとボタンが消えるmuqpc マイコレクションに登録 製品名:OS製品/Windows Vista/Home Premium 現象:おかしい/その他 スタートボタンにマウスを合わせるとボタンが消えるというようなことがありますか。それともこちらのパソコンの一時的なトラブルでしょうか。
セーフモードで立ち上げたらどうなりますか? 同じ現象が起きますか? Shutdownして、その後通常起動してみてください。 それでどうなりますか?
次のことを確認してください。 ・タスクバーのあいているところで右クリックしてください。 ・タスクバーを固定する に チェックマークが入っていますか? もし入っていなければ、タスクバーを固定する をクリックしてください。
>>239 の
C:\TEMP\**
の意味がわかりません。上級者ですが優しく教えてください。
ググレカス
252 :
デフォルトの名無しさん :2009/02/01(日) 14:20:26
A.batとB.batがあるとします B.batに変数file1にファイルのパス(c:\test.exe)を代入しました そしてA.batからB.batを読み込んで、変数file1に記録されてるパス(c:\test.exe)を出力したいのですが 参考になるサイトがもしございましたら教えてください
*ぐぐれる?
C:\TEMP\*.* のtypoだろ
自信満々に上から目線で「わかりますか??」と言いながら2か所もtypoとは情けないですね。
>>256 ありがとうございます
教えていただきましたサイトを拝見しました
バットファイルではできないことがわかりましたの諦めます
スレ汚しすみませんでした
パソコン起動時にRSSが表示されなくなり imi Tickerスキン画像の確保に失敗しましたエラーウィンドウ.. エラー ウィンドウの作成に失敗しました起動しなおして下さい エラー ハンドルクローズ失敗 と出てきます。このような場合はどのように対処すればよいのでしょうか 何度パソコンを起動しても同じエラーが出てくるのでちょっと心配になりました。 普通にインターネットやメールはできます。
タスクバーを固定
>>253 申し訳ありません。
>213は
・Tempフォルダ自体を消す
・しかしプロンプト自体でTempフォルダを使っている(cd /d "C:\〜Temp\")ため、
Tempフォルダ自体はアクセス中で削除できない
・結果フォルダの中身だけをキレイに削除してくれる
ということですね
>213さんありがとうございます。。
本当に初心者で、パソコン用語が分からないので質問の意味が理解できなかったら申し訳ありません。 デジカメをケーブルでノートパソコンにつなぐと 今までは自動的に画像をパソコンに取り込めたのですが いつのまにか 「デバイス上に新しい画像が見当たりません」と表示されてしまいます。 新しい画像は更新してSDカードに入っております。 どのようにしたら以前のように パソコン内に画像を取り込めるのでしょうか。 よろしくお願いいたします。
ありがとうございました。 あまりにも初心者で質問もうまくできない状態ですので ご迷惑をおかけいたしました。 感謝いたしております。
初心者ですがエスパー伊藤さんに助けてもらい無事に解決できました こちらのスレのエキスパートな常連様方のお手間を煩わせずに解決することができました スレ汚し失礼しました(_ _)
bat/? cmd/?
バッチファイルの変数をVBSへパラメータとして渡すことってできますか?
できますよ。何がわからないんですか?
set a=1 test.vbs %a% 上記のような書き方だと、VBSが実行されないんですがどこが悪いのでしょうか?
cscript test.vbs %a%
ありがとうございました。 あまりにも初心者で質問もうまくできない状態ですので ご迷惑をおかけいたしました。 感謝いたしております。
@echo off start "" "notepad.exe" %1 このバッチファイルに A&B.txt という名前のファイルをドラッグするとエラーが発生します。 どうすればうまく起動されるのでしょうか?
ありがとうございました けっこう手間かかりそうですね 他に方法はありませんか?
>>273 @echo off
start "" "notepad.exe" "%~1"
それは試しました 他に解決方法をご存知でしたらどうかお願いします
>>277 試したならエラーが発生せずに動作しただろ
エラーって何ですか? 初心者なので親切に教えてください。
半角&みたいなメタキャラクタを処理したいんなら 素直にVBScriptとか使った方がいいよ
文字列をハッシュに返すアプリはないでしょうか? Hash.exe "文字列" 2時間以上探しても見つかりません‥orz
mixer.exe
自分で作れよ
>>284 バッチ以外全くスキルがありません、作ってくれませんか?
作ってくれませんか/?
ほれ 文字列をハッシュに返すアプリ.exe
プログラム板ってのはな 自分で作る人たちの板なんだよ
>>273 それは、Windows のエクスプローラが A&B.txt という名前のファイルを
"" で囲ってくれないのが原因だな。
unko.bat A&B.txt -- OK
unko.bat "A&B.txt" -- ダメ
長いファイル名なら "" で囲ってくれるんだが、短いファイル名は囲ってくれない。
どうても、と言うんなら、長いファイル名になるように工夫するしかない。
たとえば、 A&B.txt というファイルをデスクトップやマイドキュメントなどの
空白を含むディレクトリに移動してから、その
>>273 のバッチにドラッグすればいい。
運用でカバー、ってやつだな。
・・・でも、そんな事するくらいなら、A&B.txt というクソなアフィル名を手作業で変えといたほうが
後々メンドウな事にならずに済むかな。
perl -MDigest::MD5 -e "print Digest::MD5::md5_hex 'UNKO'" 1bc25757fce1394a6dc4fd55b58a739f
バッチファイルをWSHでラップして、それにドロップしてやればよい
@ECHO OFF SET /P UNKO=文字列を入力しろやヴォケ!= FOR /F usebackq %%I IN (`perl -MDigest::MD5 -e "print Digest::MD5::md5_hex '%UNKO%'"`) DO SET HASH=%%I ECHO おまいのハッシュは %HASH% だコノヤロウ! PAUSE
294 :
282 :2009/02/07(土) 00:12:53
>>292 出来ました〜ありがとうございます。
.net freamworkやvisual studio2008 VB C++ Perl
PCにわんさか入れてました‥
しばらくはC:\Perlを別の場所にコピーして使おうと思いますm_ _m
半年ROMってろ
バッチファイルやめてWSHで作って、それにドロップしてやればよい
ドロップハンドラをかえればいいよ
関連付けを "%1" %* から "%1" "%*" に変えれ
なるほど ありがとうございました
>>298 いや、それはまずい。
ファイルひとつでいいなら "%1" でいいでしょ。
よくないでしょ。
いいでしょ。
やってみれば?
%1の意味知ってますか?
0.01 ?
バッチファイルでできるのに
>>300 > ファイルひとつでいいなら "%1" でいいでしょ。
"%1" "%2" でした。すまん。
>
>>298 > いや、それはまずい。
ファイルひとつでいいなら、まずくないでした。すまん。
やっぱり合ってた。すまん
きにするな どのみち関連付けじゃだめだから バッチファイルでやるよ
きにせんでもええが%1を勉強しろよ
やっぱり違ってた。すまん
a&b.txtはうまくいっても、"a b&c.txt"がだめやね
>>318 ほんと試しもしないで出鱈目いうやつ大杉
>>276 >>300 ほんとにドロップしてから言えよな
コマンドプロンプトで適当なことやるなよな
>>276 でうまくいかないと言ってる奴はどういう環境でやっているのか。
>>320 ほんとにドロップしてから言えよな
コマンドプロンプトで適当なことやるなよな
どのPCでドロップしてやっても
>>276 でうまくいくが。
そのファイルのパスに空白あるだろ?
c:\a&format&b.txtをドロップしてみ
インジェクション?
コンセプション!!
落ちは?
if "ー"==^"^"^" (echo 1) else echo 2 なぜ?
"ー"<うーん、なぜだろうね?
最小コードは if ^"ー==^"^" (echo 1) else echo 2 つまり"ーの2文字が問題 SJISでもUNICODEでも問題なさそうだが
@echo off start "" "notepad.exe" %1 このバッチファイルに A%cd%B.txt という名前のファイルをドラッグするとエラーが発生します。 どうすればうまく起動されるのでしょうか?
>>332 どうあがいても無理。あきらめましょう。
どうしてもというなら、バッチは諦めて他の wsh とかプログラミング言語に置き換えるしかない。
できるよ A%cd%B.txt も A&B.txt つcmdcmdline
∩___∩ | | ノ\ ヽ | / ●゛ ● | | | ∪ ( _●_) ミ j 彡、 |∪| | J / ∩ノ ⊃ ヽ ( \ / _ノ | | .\ “ /__| | \ /___ /
コマンドプロンプトのメタキャラクタがファイル名に使えるってのが 全ての元凶だよなぁ...
元凶ってちゃんと読める?
ドロップハンドラがへぼいだけだろ?
元勲ってちゃんと読める?
スイマセン、D&D方式のbatを作っているのですが どうしても半角スペースの含まれているファイルを認識してくれません テストとして echo "%~1" pause とやってみたのですが 例として123 456.txtとか読ませても echoで "X:\123" と言う感じで出てしまいます なんとか解決方法は無いものでしょうか
echo %*
>>342 早速のお返事、本当に有り難うございます、無事エコーでフルのファイル名が取得できました
ここから拡張子とかの抽出などやっていきたいと思います
検索などで調べても出てこなかったのであきらめかけていました;;
ありがとうございました!
>>336 DOSで終わった人生を延命治療でかろうじて生き延びてるだけだから贅沢言うな
345 :
デフォルトの名無しさん :2009/02/12(木) 16:03:50
質問です。いつもUSBのスピーカーで音を出しています。 しかし地デジのソフトを立ち上げるとUSBスピーカーでは起動できませんといわれ、 いつも「再生デバイス」→「既定値に設定」とデバイスの既定値を変えます。 でも面倒なのでbatファイルをクリックすると再生デバイスの既定値を変更し、 さらに地デジを立ち上げることが出来るようにしたいのですが、それは可能でしょうか?
不可能です
>>346 早速ありがとうございます。少し面倒でも仕方がないですね。
それでできたのか?
前スレ>715だが… とりあえず何とかなった。 みんなが残してくれた物を参考に頑張ってみたよ。ありがとう。 相変わらず ”( ) [ ] ”とかの文字がファイル名に含まれるけどね… 改善要求したら却下されたorz バッチ自体はfor /f とか、サブルーチンをかましてグルグル回したら、うまくいきました。
for/?
ショートカット作るコマンドラインツールおせーて
サンクス
いろいろな人が使っているPCのデスクトップにあるテキストファイルを削除する バッチを作りたいんですけど、いい方法はありますか? これで出来るかなーと思ってたんですけど、フォルダにワイルドカードは無理だったんですね。 C:\Documents and Settings\*\Desktop\*.txt
フォルダもワイルドカード使えるようにバッチの先頭に書いておく echo W 100 2 0 200 | debug
361 :
357 :2009/02/15(日) 14:14:56
>>358 すいません。どういう意味でしょう?
echoはONにするかOFFにするかぐらいしかわからなくて・・・
362 :
357 :2009/02/15(日) 14:51:43
これでいけそうですね。 どうもありがとうございました。 cd /d C:\Documents and Settings for /d %%i in (*) do del %%i\Desktop\*.txt
>>362 for /d %%i in ("C:\Documents and Settings\*") do del "%%~i\Desktop\*.txt"
wshにまけとるね>cmd
勝つ必要があるのか?
368 :
357 :2009/02/15(日) 23:19:43
シンプル必要があるのか?
すいません、どんだけ頑張っても一向にできないのでご教授ください フォルダ内に、フォルダ・拡張子の違うファイルが複数あったとして フォルダ内の拡張子を限定して更新日準備並べて、テキストで出力したいのですが どすればいいでしょうか dir /b /a:-d /o:-d /s *.[拡張子] [フォルダ]> 出力.txt だと、うまくいかないですpq
>370 ↓例えばコレで代用するわけにはいかないの?/bがないからファイル名はフルパスじゃないけど。 dir /a-d /o-d /s "C:\Documents and Settings\*.dat" | find "/" | sort /r
できたら、フルパスで出力して他のを組み合わせbat化したいんですよ。 出力するものはフルパスまたはファイル名でリスト化して、for /f "skip=1〜〜で1行目をスキップしてそれ以外を削除しようと思ってます。 /dir [ファイル名]\.[拡張子] /a:-d /o:-d /b /s>出力.txt でいけそうなのかな。。。うーん。。
373 :
371 :2009/02/18(水) 00:43:59
>372 それだとサブフォルダがネックになりそうだ。/s を外してもいいなら話は簡単に終わりそうだが、 それができないのならWSHの使用も検討すべきかも。
374 :
372 :2009/02/18(水) 01:25:14
>>372 /sなければいけそうですね・・。一晩じっくり考えて見ます(他の処理も含めて。。
繰返し内で%1,%2,%3・・・と自動で変えていくにはどうすればよいのでしょうか?
shift
for %%i in (%*) do echo %%i
なるほど ありがとうございました
unshiftできないの?
>unshift 'unshift' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
バッチファイルを最小化して実行するコマンドラインツールか何かないですかね。 ショートカットを作ってプロパティで最小化してやればいけるんですがそのひと手間を減らしたんですが。
>>383 それだと頭のcmd分のウィンドウが一瞬でる
>383 ↓普通はこっちでは? start /min cmd /c バッチファイル名
それだけで解決するってどこに書いてあった?
\人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人_人/ > < > FORフォ━━━━━━━(゚∀゚)━━━━━━ウ!!! < > < /⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒Y⌒\ (\ , -+--、 /)っ ⊂ ヽ ,」_─‐、:i' (っノ \\ (;;ノI、;;)lァ // \ ヽ、_ヽヮ`,ノ // \ ):::V:::::ノ,⌒/ 〈::::::|:::::ヾノ フォォォォォォォォ|:::::|::::::::/ ォォォォォォォォォォォォ!!!! /;;;;;|;;;;;;/ ノ:::::::::::::::) / y⌒ヾ/ ヽ/ / ( , / | | \ |__/\入 }:::| ):::ゝ ノ:::::)⊂ノ´ (;;;;;/
>>384 でないけど?
やりかたがあほなんじゃないか?
でるけど?
阿呆ォォォォォォォォォォォォォォォォォォォォ!!!!なんじゃないか?
なるほど ありがとうございました
start "最小化実行中" /min unko.bat こんな感じで… ちがうか…
VBSなどから呼び出せば何も出ないだろうに ていうかVBSで書けばいいのに
なるほど ありがとうございました
応用すると非表示もできるね
おーこれは便利
■質問です。 皆さんは cmd ファイルや bat ファイルをどのテキストエディタで作成していますか? 私は自宅でも会社でもフリーソフトの Notepad++ を使っており、概ね満足しているのですが、 このスレの玄人の方たちがどのようなエディタを使っているのか 興味があったのでお聞きしました。 よろしければ教えていただけると非常に嬉しいです。よろしくお願いします。
俺は聞きたくない。
メモ帳。 メモ帳で書きたくないような規模のものは、 そもそもバッチファイルで書きたいとも思わないので問題ない。
変数に任意桁の乱数を格納するためにはどうすればよいでしょうか?
バッチファイルを最小化や非表示で実行する関連付けを教えてちょ
copy con abc.bat type con>abc.bat どっちがいいと思う?
なるほど ありがとうございました
なるほど ありがとうございました
すいません。超初心者です。 半角英数にしたいのですがどうしたらいいですか? かれこれ30分悩んでます。
もうできてるな
すいません。超初心者です。 全角英数にしたいのですがどうしたらいいですか? かれこれ2時間40分悩んでます。
∩___∩ /) | ノ ヽ ( i ))) / ● ● | / / | ( _●_) |ノ / 彡、 |∪| ,/ / ヽノ /´ 君、キーボードの左端を見てみるクマ
なるほど ありがとうございました
マジレスするが Alt+半角/全角 を押した後 キーボード左端の英数を押せばいいんじゃないの
すれ違い
VistaのCommand.com?
保守
なんで /a 付けてんの?
気持ちの問題だろ。
set /a 変数=random でもいけそうな気がしたけど、やっぱりいけない。
%ramdom%は純粋な乱数じゃない気がするけど
擬似乱数ってこと? でも、それって・・・
ミキ・ラン・スーはキャンディーズ
なるほど それはしりませんでした ありがとうございました
>424 むしろ/a無いほうが、違いがすぐ分かるような気がするのは俺だけ?
echoがonかoffの状態かで分岐させることは出来ますか?
出来ます
単純な代入に /a 付けるのはおかしいよぉ
結果が見えて便利じゃないか
数値の代入に/aを付けるのはおかしくない
おそらく、単純な代入じゃなく数値の代入だから /a 付けたんじゃない? 本人の気持ちの問題だろ。
438 :
デフォルトの名無しさん :2009/02/27(金) 19:07:42
>>431-432 リダイレクション、一時ファイルを使えばできるが、
使わずにやる方法があるかな?
パイプもfor/fも駄目だし。
こんなところで役に立たない知識が役立つとは
ほんとだ。パイプつかえないや。なんでだろ〜
>>439 バッチだと自分でecho on/off管理したほうが早いね。
変数一個で条件分岐できる。
しってどうする?というきがしないでもない
↑ 自分に必要で無い。 だからあなたにも必要で無い。 まるでジャイアンだな。
呼び出し元の設定がオンだとオフに変え、 呼び出し元の設定がオフだとオンに変えたい という何か特別な必要があるんだよw
なるほど
>リダイレクション、一時ファイルを使えばできる すでに答えは出ている。
?
ECHO | FIND /I "ON" > NUL IF ERRORLEVEL 1 ECHO "エコーはOFFだよ。オンじゃないからね"
?
>一時ファイルを使えばできる 一意なファイル名の生成、持ち回り、削除、エラー時に残るのが面倒だな ファイルのsetlocalみたいなのがあればいいのにな
>>451 ECHO OFF
ECHO | FIND /I "OFF" > NUL
IF ERRORLEVEL 1 ECHO "エコーはONだよ。オフじゃないからね"
?
遅延展開がonかoffの状態かで分岐させることは出来ますか? のほうが需要がありそうだなや
変更したいときはそう 確認したいときに「ECHO」みたいなのがないからね
ネストに制限があるから、変更済なら変更しないほうがよいかも
460 :
431 :2009/02/28(土) 18:08:24
if "!cd!"=="%cd%" (echo 遅延展開はONです) else echo 遅延展開はOFFです
パイプ使えないってば
>>461 set cd=
環境破壊するぐらいならsetlocalだよね
?
Windws2003サーバのDOSバッチでexitを記述せずに終了すると 戻り値は必ず「0」になるでしょうか? ご存じの方教えてください。 また、MS内で仕様の記述箇所あれば教えてください。 お願いします。
バッチに統一的な仕様など存在しない。 OSや環境が違えば動作が違うと思っておけば間違いない。
467 :
デフォルトの名無しさん :2009/03/01(日) 15:27:54
batの書き方とか、チュートリアルのサイトって有るの?
さがせばあるんじゃないひとつやふたつ。 質は知らんけど。
>>465 バッチはふつうエラーがなければERRORLEVELを設定しないだろ
ERRORLEVELはERRORLEVELを設定するコマンドを実行したときに設定されるだけで
ERRORLEVELを設定しないコマンドだけを使ったバッチはERRORLEVELを設定しないだろ
バッチの戻り値って何だ?
普通、終了ステータスの意味。
MS製品だから void mainの戻り値
if defined errorlevel echo 有 だと無くても有りになって判定できない 判定できる?
可能だけど必要ないだろ?
set errorlevel
set errorlevel2=2 set errorlevel
set errorlevel | find /i "errorlevel="
set errorlevel2=errorlevel=3 set errorlevel | find /i "errorlevel="
set errorlevel | findstr /b /i "errorlevel="
set errorlevel | findstr /b /i "errorlevel=" if not errolevel 1 set errolevel=
指定ディスクの空き容量によってERRORLEVELを返したりできませんか?
できないと思うのが変
2003SVサーバのサービス(IIS)が起動しているかif文で判断させることはできるのかな? IISが上がっていなければ上がる設定にしたいなと… IF EXISTでファイルで判断出来るのは分かったのだが… ヘルプおながいしますだ
fsutil/?
>>485 ?q=IsServiceRunning+IShellDispatch2
dir … | set /p errorlevel 但し、要応用。
=抜け
>>483 ERRORLEVEL より 空き容量 のほうが桁数が多いがどうするんだ?
FOR /F "usebackq tokens=3,3" %%I IN (`DIR C:\^|findstr "バイトの空き領域"`) DO SET A=%%I SET B=%A:,=% IF %B% LEQ 200000000000 ECHO ディスクの空き領域が %A% になりました。
FOR /F "tokens=3" %%I IN ('DIR C:\') DO SET A=%%I CMD /C EXIT %A:,=%
for 〜 do ( 〜 〜 〜 )>>aaaaa.txt こんな感じでリダイレクトするバッチを何回か実行したら 同ディレクトリに aaaaa.txt が2個も作成された 開いてみたがしっかり個別の内容で存在しているし、最新の状態に更新してもファイルは消えない 同ディレクトリに同ファイル名は存在できないはずなのにどういうことだ・・・
aaaaa.txt.lnk
>>496 パソコンの使い方の質問はこっち
PC初心者
http://pc11.2ch.net/pcqa/ ▼━ 質問の仕方 ━━━━━━━━━━━━
★E-mail欄には何も記入しない (IDを出す→偽者対策・質問者の区別、2回目以降も)
* 2回目以降の書込みは、最初に質問した際の「発言番号」を名前欄に入力
* 他所から誘導された場合は、その旨書く(マルチポストとの区別)
▼━ 該当事項を明記すること ━━━━━
★使用OS(Windows XP Professional SP3/Vista HomePremium SP1 等)
★使用ソフトウェア名とバージョン(Internet Explorer 7/MS-Word 2007 等)
★関係有りそうな出来事、問題発生の直前に行なった操作(何もしないのに問題は発生しません)
★起こった出来事、表示されるメッセージなどを具体的に詳しく書く
★現在の状況(問題発生後に試したこととその結果)
★パソコンのメーカ名と型番 (PCV-RX75等、説明書や本体背面で確認)
自作ならばマザーボード等の型番。他人に作ってもらった似非自作機はお断り
★インターネットの問題は接続形態(ADSL/CATV/FTTH/ダイヤルアップ)とルータの有無や契約ISPの名称を書く
★数字・ファイル名・アドレス・したいこと等を具体的に書く(個人情報は伏せる)
▼━ 禁止事項 ━━━━━━━━━━━
★違法行為やそれに深く関係する質問・話題(P2Pソフト,エミュレータ,RARファイル,DVDやCCCDのコピー,ポート解放 等)
★マルチポスト(複数の場所で同じ質問をすること)は絶対禁止
★情報の小出し(後から「ちなみにOSはWindowsXPです」等) / * 本人以外の代理質問
★勝手な名称の省略(例 "Outlook"と"Outlook Express"は別モノです)や隠蔽(「某ソフト」「あるサイト」等)
★検索や辞書(e-words.jp)で分かる用語の意味の質問
★自作自演 釣り質問 ネタ質問 粘着 基地外 荒らし コピペ β版 正式サポートが終了したOSに関する質問
▼━ 質問の前に・・・ ━━━━━
★質問の前にまず ググる(Googleで検索)
http://www.google.co.jp/
>>496 ほんまかいな?
dir aaaaa.txt
の結果を貼ってみ
500 :
496 :2009/03/08(日) 00:31:20
ごめwwwやらかしましたw スレ汚かもですが原因分かったので書いときます 引数ファイルと同ディレクトリにファイルの更新日時をリダイレクトするbatでしたが C:\Documents and Settings\All Users\デスクトップ\aaaaa.txt D:\Documents and Settings\Administrator\デスクトップ\aaaaa.txt この2ファイルがデスクトップ上に表示されていた 知らぬ間に \All Users\デスクトップ にファイルが作られていたことが原因です 当初cmdのバグかと疑っちまったorz
こういう複数ディレクトリを1フォルダに見せる機能はない? あれば便利なのに。
あるじゃん。それがあるから混乱したんだろ?
>>502 c:\aとc:\bをひとつに見せる方法は?
mklink
ないようね
時計が止まった爺さんには、
>>504 を理解するのは無理
無知ですみません 分かりにくい質問かもしれませんが ログイン時のパスワードを一度間違えて、その後正しく入力しログインしたのですが 以下のエラー文が出ました DCOM Server Process Launcher サービスが異常終了したため Windows を再起動する必要があります。 変な質問ですみませんが どうすればいいでしょうか? 当方の環境はXPのノートです
書き込みありがとうございます!!!!! 再起動とは何でしょうか? 申し訳ありませんが 初心者なのでわかりやすく教えて下さい。 m(__)m
でんげんぼたんを3びょうかんおしつづけて もういっかい でんげんぼたんをおせばいいよ
たびたびありがとうございます。 でんげんぼたんを3びょうかんおしつづけて もういっかい でんげんぼたんを押してみました わけのわからない英語や数字がいっぱいでてきました。 どのキーを押してもピーピーうるさい音がします。 これでよろしかったでしょうか? もしかして何かまずいことをしてしまいましたか?
>>511 それでいい
おとなしくしばらくそのまま待ってろ
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1311860028 DCOM Server Process Launcherについて。 DCOM Server Process Launcherって何です...ko_nn_ni_ti_waaさん
DCOM Server Process Launcherについて。
DCOM Server Process Launcherって何ですか??
私のパソコンが、起動するとDCOM Server Process Launcherが正常に終了されなかったためシャットダウンします。
と出てフリーズ状態になります。何度強制終了して再起動しても同じです。パソコンが使い物にならません。
だれか知恵を下さい。もしくはどこに問い合わせたら良いかわかる方いらっしゃいますか?
違反報告
質問日時: 2007/6/11 16:28:19
解決日時: 2007/6/26 03:33:22
回答数: 2
閲覧数: 5,480
ソーシャルブックマークへ投稿: Yahoo!ブックマークへ投稿 はてなブックマークへ投稿 (ソーシャルブックマークとは)
ベストアンサーに選ばれた回答chocolatechocolatecrepeさん XPで自分がやった方法で書かせていただきます。 1.コンピューターの電源を入れてすぐに「F8」キーを連打します。 2.出てきた画面から「セーフモード」を選びます。 3.「はい」「いいえ」がある選択肢が出てきますので、それで「いいえ」を選ぶと、 「システムの復元」画面に行きます。普通に動いていた頃を選んで、その頃に復元します。 これをやってみたら正常に動きました。 その後、ウイルススキャンをしてみたら、感染をしていました。 無事駆除して今は普通にパソコンが動いています。 お試しください。 回答日時:2007/6/15 21:40:14
http://support.microsoft.com/kb/315575/ja DCOM オブジェクトの作成 Server 再起動後 DCOM のプログラムがハングします。
|
いずれかの次のオペレーティング システムを実行しているコンピュータ上にオブジェクトの作成を要求する
DCOM プログラム (クライアント) が応答を停止 (ハング)。
Windows 98 Second Edition
Windows 98
Windows Millennium Edition (Me)
先頭へ戻る
この問題のバグの原因となるサーバーを誤って解釈、
セキュリティで保護されていないバインド要求が既に処理されていること、
RPC のレイヤで要求の処理によって可能性します。
先頭へ戻る
マイクロソフトでは、現在この問題を修正する修正プログラムを提供中ですが、
修正プログラムはこの資料に記載された問題のみを修正することを目的としています。.
障害があったコンピュータに対してのみ適用することを推奨します。.
この問題を解決するには、Microsoft Product Support Services にお問い合わせのうえ、
修正ファイルを入手してください。. Microsoft Product Support Services の電話番号一覧
およびサポート料金については、次のマイクロソフト Web サイトを参照してください。:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS (
http://support.microsoft.com/default.aspx?scid=fh;en-us;cntactms )
注 : 特殊な場合に、サポートの呼び出しの発生が通常に雑費可能性がありますが
場合にキャンセル Microsoft Support 担当者により、特定の更新プログラムを適用するが、問題を解決します。
追加の質問および問題の特定更新プログラムの対象とならない問題、
通常のサポート料金が適用されます。
注 : Windows 98、Windows 98 Second Edition、および Windows Millennim Edition (Me) 修正プログラムは、
Microsoft ダウンロード センターからダウンロードできます。
だれが暴れてるの?
消してしまいたいレスでもあるのか?
mklink/?
521 :
デフォルトの名無しさん :2009/03/13(金) 18:59:33
WINDOWS XP PROにて、現在AというアカウントでログオンしているPCが200台有るとします。 バッチファイルで、一度全台ログオフさせて、Bというアカウントで一斉にログインするようにしたいのですが 可能でしょうか?(ドメインには参加していない)
さっきファ板でオタクファッション発見みたいなのを開いたら ロリータBBSみたいなのに飛ばされました。 で、パソコンが重くなったんで再起動して またインターネットのブラウザを開くと、アメリカのエロページに 飛ばされるようになりました。 こういう事は前にもあったので、コントロールパネルから インターネットオプションの標準ページをYAHOOにしました。 しかしまたブラウザを開くとエロページに飛ばされてしまいます。 しかもインターネットをしていて少したつと 何もして無いのに変なブラウザが開かれ全画面表示になったりします。 これは何故なんでしょうか? 一応スパイウェアソフトは使って、スパイウェアは削除したんですが。 長文ですが誰か答えてください。
パソコンの電源が自動で切れません。「電源を切っても大丈夫です」のようなメッセージが出てから、いつも手動で電源を切っています。 バッチ使って自動で切れるようにできますか?XPを使っています。
ある気に入ったサイトがあるのですが、 現在までの更新をオフラインでも同じように(トップページからクリックで下の階層に進む形で)保存というのはできないのでしょうか? 1ページずつの保存のやり方はわかるんですが・・・バッチファイルで階層形式で保存はむりなのでしょうか?
>524 むり
さっそくのお返事ありがとうございます。!!! だめですか… 他になにか考えられることはありますでしょうか? また思い当たる事がありましたら教えてください。 ご回答お待ちしております。
>>523 状況がよくわからない。
shutdown した後でも、電源スイッチを押さないと切れないという意味?
ACPI
昔はみんなそうだったな
コンピューターと縁を切る準備ができました
mklink/?
おちんちんのエラの部分に小さいギザギザがあります。 これは何かの病気でしょうか? 別に痛くも痒くもないのですが、見た目が不気味で気になります。 病院に行った方がいいですか?
'mklink' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
colorの現在値を取り出す方法は?
536 :
デフォルトの名無しさん :2009/03/15(日) 06:30:47
mag -_
>>523 ハードが対応してないと無理じゃなかったっけか
スレ違いかもしれないですが、、 test1.txt a1,b1 a2,b2 a3,b3 test2.txt a2,c1 a1,c2 a3,c3 の二つのファイルがあって test3,txt a1,b1,c2 a2,b2,c1 a3,b3,c3 というファイルを作りたいのですが、 batファイルだけで作成可能でしょうか?
どうしてbatだけでやりたいの?苦行かなにか?馬鹿なのか?マゾ?アホ?
「どんな環境でも動作する」、という前提がありまして。 vbsも使用できるのですが、なにぶん経験がないので できればbatだけでやりたいな、と。。 苦行というか宿題>です><
del test3.txt for /f "tokens=1,2 delims=," %%i in (test1.txt) do @( for /f "tokens=1,2 delims=," %%k in ('findstr /r ^%%i test2.txt') do @echo %%i,%%j,%%l )>>test3.txt なんか間違ってる気がする
昔、そんなことのできる元unix系フリーソフトがあったような 名前忘れた 今だと gawk 使うかな
>>543 ありがとうございます!実現できました!!
>なんか間違ってる気がする うん間違ってる 再現用データ test2.txt a2,ca1 a1,ca2 a3,ca3
del test3.txt for /f "tokens=1,2 delims=," %%i in (test1.txt) do @( for /f "tokens=2 delims=," %%k in ('findstr /r "^%%i" test2.txt') do @echo %%i,%%j,%%k )>>test3.txt こうか
>>523 パソコン困りごと相談Windows2000過去ログ
203881 [コンピューターの電源を切る準備ができました] kawayosi4416 2004/9/25-19:29
メーカー名:IBM アイビーエム
OS名:Windows2000
パソコン名:2190−27M
ソフト関連:OS関連
--
windows2000を終了時に「コンピューターの電源を切る準備ができました」と表示されて自動で電源が切れません
この「コンピューターの電源を切る準備ができました」を表示させない方法はありませんか?
203886 Re:[コンピューターの電源を切る準備ができました] SARU 2004/9/25-19:49
自分のPCがAPMモードかACPIモードのどちらで動作しているか
確認(デバイスマネージャのコンピュータに標準PCとあればAPMモード、
acpi〜とあればACPIモード)し、APMなら
[シャットダウンしても自動的に電源が切れません]
http://homepage2.nifty.com/winfaq/w2k/boot.html#877 を参考に。
ACPIモードならBIOSが対応していない可能性があるので
メーカーのHPで確認。
http://oshiete1.goo.ne.jp/qa1560583.html 「コンピュータの電源を切る準備ができました」の表示で止まり自動で電源が切れなくなった - 教えて!goo
質問
質問者:tosshibo 「コンピュータの電源を切る準備ができました」の表示で止まり自動で電源が切れなくなった
困り度: すぐに回答を!
昨日スタンバイの項目がなくなったので?
http://homepage2.nifty.com/winfaq/w98/boot.html#29?で設定を直したら スタンバイの項目は表示されるようになりましたが「コンピュータの電源を切る準備ができました」の表示で止まり
自動で電源が切れなくなりました。どうすれば今まで通に直せますか。初心者なのでよろしくお願いします。
質問投稿日時:05/08/05 04:03質問番号:1560583
回答
回答者:jazzydays これが原因かどうかはわかりませんが、win98だったら同じくwinfaqの↓を試してみてください。
種類:アドバイス
どんな人:一般人
自信:参考意見
ログインして投票する参考になった:0件
回答日時:05/08/05 04:16回答番号:No.1
回答 回答者:izumon この現象は、No.1の方が指摘しているケースと、リソースの低下により引き起こされているケースがあります。 一般的には、リソース不足が原因になっていることが多いので、まずは次のように設定してください。 ○ デスクトップ上のアイコンを極力減らす ○ 常駐プログラムの削減について 「スタートボタン」→「ファイル名を指定して実行」→「msconfig」と打つ→「システム構成ユーティリティ」→「スタートアップ」で、必要のないものはチェックを外します。(私はウイルスソフト以外は全て削除していました) ○ 画面について 「画面のプロパティ」を開き、 1 「背景」→なし 2 「効果」→すべてチェックを外す 3 「Web」→Activ DesktopをWebページとして表示のチェックを外す 4 「設定」→High Color(16ビット)に設定 ○ 音について 「コントロールパネル」→「サウンド」→「サウンド名」をすべて「なし」に設定。 ○ その他 「スタートボタン」→「設定」→「フォルダオプション」→「表示タブ」をクリックし、 「登録されているファイルの拡張子は表示しない」と「隠しファイルとシステムファイルを表示しない」以外のチェックを外す ○ 最後の仕上げ 1 スタート ⇒ WINDOWSの終了 ⇒「MS−DOS」で起動する 2 「scanreg /fix /opt」と打ち、終了したらENTERキーを押して、「exit」と打つ 種類:アドバイス どんな人:一般人 自信:参考意見 ログインして投票する参考になった:0件 回答日時:05/08/05 07:22回答番号:No.2
del test3.txt for /f "tokens=1,2 delims=," %%i in (test1.txt) do ( for /f "tokens=1,2 delims=," %%k in (test2.txt) do if %%i==%%k (echo %%i,%%j,%%l) >>test3.txt )
あなたとの縁を切る準備ができました
さらに質問を・・・ あるファイルをforを使ってパラメータセットして、そのパラメータの3つ目に @が含まれているかどうかをで分岐させたいのですが。。 元ファイルtest1.txt aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,d@d2 aaa3,bbb3,,ddd3 つくりたいファイルtest2.txt aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 for /f"tokens=1,2,3,4 delims," %%i in (test.txt) do @( で%%cの中に@が入っていたら、 echo %i,%j,,%k とかすれば と思ってifやらfindやら試してみたのですがうまくいかず。 すみません、お願いします。
set x=%%k setlocal enabledelayedexpansion if not !x:@=!==!x! echo %%i,%%j,,%%k endlocal
>>524 http://oshiete1.goo.ne.jp/qa4680374.html サイトをまるごと保存 うまくいかない時があり困っています - 教えて!goo
質問
質問者:arrg
サイトをまるごと保存 うまくいかない時があり困っています
困り度: 困っています
私はネットで小説を読むのが好きです。
しかしいざ時間ができて読みに行けばサイトが重かったり消されていたりという事もしばしばあります。
そこでお気に入りの作品はサイトごと保存しようと思い「順集」「webox」を使ってみました。
この二つでうまくいくこともあるのですが、なぜかうまくいかないことも。
具体的な例を上げると、もともとのサイトのリンクの末尾が「〜40」など拡張子が表示されていない場合。
これは「順集」を使ってみたところ一つのサイト内で「.html」を勝手に付けた状態のリンクに直してダウンロードしてくれたところとそうでないところができてしまいました。
こういったことは何か設定でうまくいったりするのでしょうか?
また何か他に良いソフトはないでしょうか?教えてください。お願いします。
質問投稿日時:09/02/01 17:04質問番号:4680374
>>553 echo %%k|find "@" >nul && echo %%i,%%j,,%%k
元ファイルtest1.txt aaa1,bbb1,ccc1,ddd1 bbb2,bbb2,d@d2 bbb3,aaa3,aaa2,ddd1 aaa2,bbb2,,d@d2 ddd3,bbb3,,ddd3 aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 つくりたいファイルtest2.txt aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 bbb3,aaa3,aaa2,ddd1 ddd3,bbb3,,ddd3 aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 ddd3,bbb3,,ddd3 bbb3,aaa3,aaa2,ddd1
1 AAA 2 BBB 3 CCC 4 1 5 2 6 3 7 4 8 AAA BBB CCC
あ1 AAA い2 BBB 3 CCCう 4 1え 5 お2 6 3 7 4 8 AAA BBB CCC
元ファイルtest1.txt abcdefg hijklmn つくりたいファイルtest2.txt gfedcba nmlkjih
元ファイルtest1.txt abcdefg hijklmn つくりたいファイルtest2.txt cbagfed nmihlkj
元ファイルtest1.txt aaa1,bbb1,ccc1,ddd1 bbb2,bbb2,d@d2 bbb3,aaa3,aaa2,ddd1 aaa2,bbb2,,d@d2 ddd3,bbb3,,ddd3 aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 つくりたいファイルtest2.txt aaa1,bbb1,ccc1,ddd1 aaa2,bbb2,,d@d2 aaa3,bbb3,,ddd3 bbb3,aaa3,aaa2,ddd1,bbb1,ccc1,ddd1 ddd3,bbb3,,ddd3 ,bbb2,d@d2 aaa1,bbb1,ccc1,ddd1,aaa3,aaa2,ddd1 aaa2,bbb2,,d@d2 ,ccc1,ddd1 aaa3,bbb3,,ddd3 ,d@d2 ddd3,bbb3,,ddd3 ,aaa2,ddd1 bbb3,aaa3,aaa2,ddd1,,d@d2
# timecode format v2 510 531.333333 以下略… というファイルの2行目の510だけを取り出して環境変数にsetしたいのですが何か方法はありますか?
set/?
あ、510に限らず色々なファイルの2行目だけを取り出したいんです
set/? () & <
すみませんさっぱりわかりません
(set /p x=&set /p x=)<ファイル echo %x%
ありがとうございます。 でも見ても何してるんだかわかりません…
元ファイルtest1.txt abcdefg hijklmn つくりたいファイルtest2.txt cbagfed nmihlkj これの2行目
more +1 ファイル|(set /p x=&call echo %%x%%)
これを feb8,44d5,c352,5162 c7c3,4668,6033,6c25 d73f,c047,858d,dfc7 1778,e481,1b9e,9654 096a,405f,a6b3,9158 698a,3093,49a1,d001 fb59,2dc5,716e,7aeb こうです 63f2,f96d,02df,128c 698a,3093,49a1,d001 b81b,0e12,57d3,b87b 502a,d62d,1682,97b5 09ec,c885,2587,aa96 bccd,6033,0feb,a90f 402c,64bf,a8e8,e9bf
0バイトのファイルを指定個作成ってバッチでやると するとどーやるん?
for/?
あいう1 AAA いうえ2 BBB 3 CCCういい 4 1ええう 5 おうえ2 6 3えええ 7 4い 8 AAA BBB CCC
call :sub 10 goto :eof :sub for /l %%n in (1,1,%1) do type nul >%%n
これはひどい
あいう1 AAA いうえ2 BBB 3 CCCういい 4 1ええう 5 おうえ2 6 3えええ 7 4い 8 AAA BBB CCC 9 RRR 777 GGG 10 NNN いうえ えいう 11 TTT んんん XXX 12 222 444 777
りんご,128,12 みかん,36,24 バナナ,98,4 りんご 100 個 10 1,000 みかん 120 個 6 720 バナナ 50 本 2 100 りんご"みかん”バナナ 100"120"50" 10"6"2" 1,000"720"100"
forは途中でやめられない? for /l %%i in (1,1,1000) ( if ... やめ )
if ... break
バッチのbreakは違うだろ
if ... exit
みかん みかん りんご りんご バナナ みかん いちご りんご いちご
つくりたいファイルtest2.txt みかん みかん みかん みかん りんご りんご バナナ みかん いちご りんご いちご りんご いちご
コンソールまで閉じるだろ
こんな感じです 147 231 294 乳 161 253 322 乳・卵・小麦・大豆 161 253 322 乳・大豆 133 209 266 乳 154 242 308 乳 鶏肉 175 275 350 乳・大豆 150 236 301 乳 山芋 147 231 294 乳 161 253 322 乳・大豆 154 242 308 乳 175 275 350 乳・大豆 140 220 280 乳・バナナ・オレンジ・りんご 175 275 350 乳・落花生・くるみ 175 275 350 乳・小麦・大豆 126 196 252 乳・オレンジ 154 242 308 乳 松茸 168 264 336 乳 キウイ 175 275 350 乳・ゼラチン 126 196 252 乳・オレンジ 159 250 319 乳 133 209 266 乳 あわび 133 209 266 乳 126 196 252 乳・オレンジ
テーガクキューフキンの謎 「ひとり1万2千円」 2兆円を1億人で山分けするんだから、ひとり2万円のはず。 なんで1万2千円なん? 65歳以上と18歳以下は2万円だけど、 ホントに全部足して2兆円になるの? 1万2千円もらえる人と2万円もらえるひとに分けることで 全部でいくらかかったのかを分かりにくくしているように思える。 どうせ、余った分をあやふやにしようって魂胆でしょ? 余った分、いったい誰のポッポに入るん?
if ... goto xxx ) :xxx
みかんくいたい
ぼくのバナナでよければ・・・しゃぶれせてあげるよ
皮をはいであげましょう
痛くしないでくださいね
ははは
初歩的なことだとは思うのですが 指定ファイルの有無で分岐したいのですが どうすればよいのでしょうか?
if goto
恋愛占いが成立する条件があって 私の誕生日 = < 明日 兄の誕生日 = 昨日 妹の誕生日 > 去年 これでやっとできました
if exist unko.txt goto :100 exit :100 echo unko.txt があるよ。
なるほど。existを使えば良いのですね。 ありがとうございました。
条件があって DVDは頼まない 家庭用ゲームは故障中 プレゼントは受取拒否 イオン水は流す 肉屋は苦手 魚屋は金魚の糞 カニ屋が隠れスポット ロールケーキ2本 ゴミ出しは頼む 以上です
DVD = 頼まない 家庭用ゲーム = 故障中 プレゼント = 受取拒否 イオン水 = 流す 肉屋 = 苦手 魚屋 = 金魚の糞 カニ屋 = 隠れスポット ロールケーキ = 2本 ゴミ出し = 頼む
これはひどい
連投すみません .
レス番号まちがえたー
実際に試してから書いた方がいいぜ
コンソールが閉じないように自分で改変すらできないのか
問題解決力が必要 コンソールが閉じないように自分で改変 とか書いといた方がいいぜ
なるほど
なるほど っていいたいだけだろ
C:\Folder配下に、不特定の名前の、フォルダーやファイルがあります、更にその配下にも、ファイルやフォルダーがあります、このような状況で C:\Folder配下のフォルダー及び、ファイルを全て削除するコマンドを教えてもらえないでしょうか。
>>616 >>614 です
DEL コマンドでは、ファイルは削除できますが、フォルダーは削除できないのですが
自己解決しましたが、糞スレなので明示しません、これでも同等の結果が得られます
format c:
>>615 >>616 確認してください、よろしくorz
deltreeとかrd /sとか。formatなら/q付けていいと思う。
駄作自演乙
PC初心者乙
初歩的なことだとは思うのですが 指定フォルダの有無で分岐したいのですが どうすればよいのでしょうか?
ヘルプに書いてあるから読め
hh ms-its:ntcmds.chm::/if.htm
フォルダの名前はこうです C:\Document and Settings\acdf C:\Document and Settings\aeca C:\Document and Settings\baac C:\Document and Settings\bbbd C:\Document and Settings\bcbf C:\Document and Settings\bcde C:\Document and Settings\bdbe C:\Document and Settings\bdea C:\Document and Settings\bfbd C:\Document and Settings\bfda C:\Document and Settings\bfdd C:\Document and Settings\bffa C:\Document and Settings\bffa C:\Document and Settings\cacb C:\Document and Settings\caeb C:\Document and Settings\cbdb C:\Document and Settings\cbfd C:\Document and Settings\cbfe C:\Document and Settings\ccdb C:\Document and Settings\cced C:\Document and Settings\cebf C:\Document and Settings\cfba C:\Document and Settings\cfdc C:\Document and Settings\dafa C:\Document and Settings\dbbb C:\Document and Settings\dbeb C:\Document and Settings\dccd C:\Document and Settings\ddae C:\Document and Settings\dfbb
IF EXIST "C:\Document and Settings\acdf\*.*" GOTO :UNKO IF EXIST "C:\Document and Settings\aeca\*.*" GOTO :UNKO ・・・
C:\Document and Settings\acdfac C:\Document and Settings\aecaae C:\Document and Settings\baacba C:\Document and Settings\bbbdbb C:\Document and Settings\bcbfbc C:\Document and Settings\bcdebc C:\Document and Settings\bdbebd C:\Document and Settings\bdeabd C:\Document and Settings\bfbdbf C:\Document and Settings\bfdabf C:\Document and Settings\bfddbf C:\Document and Settings\bffabf C:\Document and Settings\bffabf C:\Document and Settings\cacbca C:\Document and Settings\caebca C:\Document and Settings\cbdbcb C:\Document and Settings\cbfdcb C:\Document and Settings\cbfecb C:\Document and Settings\ccdbcc C:\Document and Settings\ccedcc C:\Document and Settings\cebfce C:\Document and Settings\cfbacf C:\Document and Settings\cfdccf C:\Document and Settings\dafada C:\Document and Settings\dbbbdb C:\Document and Settings\dbebdb C:\Document and Settings\dccddc C:\Document and Settings\ddaedd C:\Document and Settings\dfbbdf
もう少しネタを練ってからにしてほしい。
aaa abc 123.txt→aaa.txt ↑こんな感じで、ファイル名の一つ目の半角の空白より後ろの文字を消してリネームしたいんだけど どういう風にbat組めばいいか分からないですorz何方かお願いします
set/? %PATH:文字列1=文字列2% "文字列1" をアスタリスクで始め、展開された出力の先頭から、文字列1 の残りの部分 が最初に現れるまでのすべてを一致させることもできます。
C:\Document and Settings\ac dfac C:\Document and Settings\aec aae C:\Document and Settings\baa cba C:\Document and Settings\b bbdbb C:\Document and Settings\bc bfbc C:\Document and Settings\bcdebc C:\Document and Settings\bdb ebd C:\Document and Settings\bde abd C:\Document and Settings\bfbdbf C:\Document and Settings\bf dabf C:\Document and Settings\bf ddbf C:\Document and Settings\bff abf C:\Document and Settings\bf fabf C:\Document and Settings\cac bca C:\Document and Settings\caeb ca C:\Document and Settings\cb dbcb C:\Document and Settings\cbfd cb C:\Document and Settings\cbf ecb C:\Document and Settings\cc dbcc C:\Document and Settings\cce dcc C:\Document and Settings\cebf ce C:\Document and Settings\cf bacf C:\Document and Settings\cfd ccf C:\Document and Settings\daf ada C:\Document and Settings\dbb bdb C:\Document and Settings\dbe bdb C:\Document and Settings\dc cddc C:\Document and Settings\ddae dd C:\Document and Settings\dfb bdf
これを C:\Document and Settings\a cdfac C:\Document and Settings\a ecaae C:\Document and Settings\b aacba C:\Document and Settings\b bbdbb C:\Document and Settings\b cbfbc C:\Document and Settings\b cdebc C:\Document and Settings\b dbebd C:\Document and Settings\b deabd C:\Document and Settings\b fbdbf C:\Document and Settings\b fdabf C:\Document and Settings\b fddbf C:\Document and Settings\b ffabf C:\Document and Settings\b ffabf C:\Document and Settings\c acbca C:\Document and Settings\c aebca C:\Document and Settings\c bdbcb C:\Document and Settings\c bfdcb C:\Document and Settings\c bfecb C:\Document and Settings\c cdbcc C:\Document and Settings\c cedcc C:\Document and Settings\c ebfce C:\Document and Settings\c fbacf C:\Document and Settings\c fdccf C:\Document and Settings\d afada C:\Document and Settings\d bbbdb C:\Document and Settings\d bebdb C:\Document and Settings\d ccddc C:\Document and Settings\d daedd C:\Document and Settings\d fbbdf
こうです C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document C:\Document
%PATH:~10,1% のやり方で1文字ずつ空白チェック
CALL :UNKO "C:\Documents and Settings\aaa abc 123.txt" GOTO :EOF :UNKO SET A=%~n1 SET B= :01 SET B=%B%%A:~0,1% SET A=%A:~1% IF NOT "%A:~0,1%"==" " GOTO :01 SET B=%B%%~x1 RENAME %1 "%B%" EXIT /B
メンドクセー
空白ないとき無限ループしないか?
たしかに無限ループしそうだな。じゃ改良・・・
CALL :UNKO "C:\Documents and Settings\aaa abc 123.txt"
GOTO :EOF
:UNKO
SET A=%~n1
SET B=
:01
IF "%A%"=="" GOTO :02
SET B=%B%%A:~0,1%
SET A=%A:~1%
IF NOT "%A:~0,1%"==" " GOTO :01
:02
SET B=%B%%~x1
RENAME %1 "%B%"
EXIT /B
>>642 そんなにいい方法があるんなら、具体的にコード書いてくれよ。
>>634 のはマッチした場所を置換するだけだから
set A=C:\Documents and Settings\aaa abc 123.txt
set A=%A:* =hoge%
echo %A%
hogeand Settings\aaa abc 123.txt
ってなるだけじゃね?
set A=%A: *=hoge%
みたいな使いかたはできないし。
俺は空白チェックなんて面倒なことやらずにforを一発で抜けりゃいいんじゃないのかと思ったけど。 set A=C:\Documents and Settings\aaa abc 123.txt for /F "delims= " %%i in ("%A%") do ( set B=%%i goto aaa ) :aaa echo %B%
そんなメンドクセーならもういいよ
>>645 はfor/fがわかってないみたい
goto aaaが必要か?
>>644 set A=!A:%A:* =%=!
>>647 は原理だから応用しろよ(と書いとかないとな
なるほど
なるほどなるほど
chcp 65001の状態で、バッチファイルを動かす方法はないものでしょうか?
コマンドプロンプトでUTF-8使おうとすると不便でなりません。
>>34 読んでもいまいちわからんない…
それが物を聞く態度か?
そんなにいい方法があるんなら、具体的にコード書いてくれよ。
>>653 激しく同意!
わたくしからもお願いします。
なんか最近基地外が棲みついたようだな…
わからんない
分からないならレスしないでください
ないならレスしないでください
>わからんない は「わからん」の否定だろ?
chcp 20932 chcp 50220 ができて chcp 65001 ができない理由は何なんだ!
分からないならレスしないでください
コンソールが65001をまともにサポートしてないんですよ。
サポートしてない理由は何なんだ!
基地外が棲みついたようだな…
3バイト文字コードをサポートしてないんじゃなかろか
>>668 それもあるみたい。
あと、UTF-8がどこの地域と結びついていないというのも、
コードページから地域情報を引き出そうというおかしなプログラムに都合が悪いそうだ。
そんなことがOld New Thingに書いてあった。
コンソールでカーソル位置がずれるところを見ると、コンソールが悪いじゃね
ユニコードにしか無い文字を含むファイル名があっても DIR コマンドで正しく表示されるんだよな。 ってことは、コンソールはユニコードが常時表示可能な状態なんだよな。 DIR コマンドはユニコード専用APIで文字を表示してるってことなのかな? じゃぁたとえば、標準入力から utf8 文字を読み込んで、ユニコード専用APIで 表示するフィルターソフトがあればいいわけじゃん。 (UNIXで言えば「nkf」みたいな) 仮にそれを 「unko.exe」 だとすると、 C> utf8アプリ | unko.exe ってやれば、正しく表示してくれることになる。 ・・・で、unko.exe に該当するようなソフトって、どこかに無いですか?
分からないならレスしないでください
dir /S /B *.txt > list.txt とすると、ファイルのフルパスがlist.txtに出力されますが。 出力されるパスの区切り文字を、\ から / に変えるにはどうすればいいでしょうか? とりあえず現状はWSH使ってやってるんですが、コマンドプロンプトの標準コマンド だけで出来る方法があればいいなというとこです。
分からないならレスしないでください
そんなにいい方法があるんなら、具体的にコード書いてくれよ。
chcp 1200ができればよいのだがエラーになる。なぜだ!
utf-8版cmd.exe互換シェルを作れば? ないのかね?
ckwとかどうよ
cygwinでckの方は使ってる。ckwはUTF-8はさすがに無理か・・・
パソコンの使い方の話は板違い
バッチファイルをunicodeやutf-8で書きたいのか sjis範囲外の文字をかきたいのか、どっち?
いやでも実際、コマンドプロンプトでUTF-8扱う話題なんて、どこでしたらいいんだよw
>>684 Console重すぎ。まだckwの方がいい
JISもだめだから3バイトや地域は関係ないんじゃないか
シェルだけやってもだめ moreとかどうする
バッチファイルで例えば echo ™©® はどうすればいい?
690 :
671 :2009/04/10(金) 21:03:07
悪意のあるソフトウェアを検出
>>691 過去ログ読んでよ。それができくらいなら苦労しないよ。
表示だけなら
>>691 でできるだろ
できないのはファイル入力だろ
たしかに google で検索すると chcp 65001 を使うやり方がたくさんヒットするから
おそらくソレを鵜呑みにしてコピペしただけだろうが、
実際に *自分* で試してみたのか?
>>691
すいません質問させてください。 既出だったらすいません C:\Documents and Settings\Adiministrator\デスクトップ という文字列から、"\"をカウントして変数に出力するスクリプトを作成したいのですが コマンドプロンプトのみ使用する場合、どのようなスクリプトを作成すれば良いのでしょうか。 基礎的な質問ですが宜しくお願いします。
CALL :UNKO "C:\Documents and Settings\Adiministrator\デスクトップ" ECHO %A%個 GOTO :EOF :UNKO SET X=%~1 SET A=0 :UNKO_1 IF "%X:~0,1%"=="\" SET /A A=%A%+1 SET X=%X:~1% IF NOT "%X%"=="" GOTO :UNKO_1 EXIT /B
ありがとうございました
UNKOでる〜〜〜〜 がまんできない〜〜〜〜〜〜 UNKO
SET /A A=%A%+1 右辺の % 要らない
人 (__) (__) (´‘ω‘ `) UNKOうんこっこ / つ (_(__⌒) |^lヽ、 ┌●(_)─┘.| ) ブリブリ
SET /A A=%A%+1 右辺の A 要らない SET /A A+=1
>>699 chcp 1252
echo echo ™©® >hoge.cmd
hoge.cmd
うんこ臭
twu ?
なんか最近基地外が棲みついたようだな…
だったら最初からそう書けばいいじゃん! 後だしジャンケンに勝っても自慢にならんぞ!
可哀相な子
powershellならunicodeでもutf-8で書ける
指定フォルダ内の更新日時が一番新しいファイルを開くには どうすればよいでしょうか?
過去ログ読んでよ。
分からないならレスしないでください
すでに答えは出ている。
>>716 よくわからんが、powershell用のターミナルはUTF-8表示できるの?
cmd.exe用のターミナルはUTF-8表示できるのに。
それぐらい試せよ
>>709 hoge.ps1
echo ™©®야후
分からないならレスしないでください
>>718 探しましたがわかりませんでした・・・。
申し訳ないですが、教えてくださいm(_ _)m
たかが Powershell ごときのために 過去のソフトウエア資産をすべて捨てるわけにはいかない。 こんなの、マイクロスフトのせんずりshellやんけ。
お客のシステムでPSが使えるのはいつ頃からだろうか・・・
cd /d 指定フォルダ for /f %%i in ('dir /o-d') do ( start "" "%%~fi" goto :break ) :break
dir /b
cd /d 指定フォルダ for /f %%i in ('dir /b /od') do set x="%%~fi" start "" %x%
pushd
なるほど ありがとうございます。 ファイル名にスペースを含んでいた場合どう対応させればよいのでしょう?
くくってあるだろ
>>721 MSゴシック
chcp 65001
PowerShell
なんか最近基地外が棲みついたようだな…
737 :
デフォルトの名無しさん :2009/04/15(水) 11:15:16
c:\gazou(画像を入れているフォルダ)に移動してそこのファイル・フォルダ一覧を取得したいです image.txtとpath.txtに分け、path.txtに画像を入れているフォルダ名を入れ、 image.txtからpath.txtを読み込み、フォルダに移動して一覧を表示させたいのですが image.txtのcdを実行した時にc:\%imagedir%に変数にセットした値が反映されず、c:\となってしまいます 変数に格納したフォルダ名を利用して、cdを実行した時にc:\gazouに移したいのですがどなたかご教示お願い致します 【path.txt】 set imagedir = gazou 【image.txt】 call path.txt cd c:\%imagedir% dir PAUSE
なんだよ.txtって素直に.batにしろ cmdって.bat, .cmdしか処理しなかったんじゃないか
739 :
737 :2009/04/15(水) 13:14:06
すみません、.txtのところは.batの記述ミスです 恐れ入りますが.batとして読み替えていただけると助かります 訂正 image.txt→image.bat path.txt→path.bat
@echo off set imagedir = gazou echo "%imagedir%" echo "%imagedir %"
741 :
737 :2009/04/15(水) 14:46:37
>>740 ありがとうございます
"%imagedir %"という風に記述したら画面に変数が表示されたのですが
cd "%imagedir %"としてみたんですが半角英数が入ってしまってcdが実行できませんでした
cd "%imagedir%"では変数が表示されません
たいへん恐縮でございますが何卒ご指導お願い致します
半角英数? set imagedir = gazou
echo "%imagedir : =%"
>>741 まだわかんねーのかい・・・
set imagedir = gazou
これの意味するところは変数「imagedir 」(最後にスペース)に「 gazou」(最初にスペース)を入れるということ。
決して「imagedir」に「gazou」を入れるという意味ではない。
後者は
set imagedir=gazou
だから。
>>744 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaそういうことだったんですね!!!!!!!
ありがとうございました解決です!
c:\ahou(阿呆を入れているフォルダ)に移動してそこのファイル・フォルダ一覧を取得したいです image.txtとpath.txtに分け、path.txtに画像を入れているフォルダ名を入れ、 image.txtからpath.txtを読み込み、フォルダに移動して一覧を表示させたいのですが image.txtのcdを実行した時にc:\%imagedir%に変数にセットした値が反映されず、c:\となってしまいます 変数に格納したフォルダ名を利用して、cdを実行した時にc:\ahouに移したいのですがどなたかご教示お願い致します
747 :
737 :2009/04/15(水) 21:20:11
念のため書きますが746さんと私は別人ですので
Uzzzzzzzzzzzzzzzzzzzeeeeeeeeeeeeeeeeeeeeeeeeeeeaaaaaaaaaaaaaaそういうことだったんですね!!!!!!!
ero画像を入れているフォルダ
ずばり!!!
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaそういうことだったんですね!!!!!!! ありがとうございました正解です!
752 :
737 :2009/04/15(水) 22:00:32
なんで絡まれるのかわかりません^^;
= の両側に空白を入れるあたり、Cやjavaなどの C系言語脳炎に侵された最近の若者っぽいですね。 Cなどの難しいことは良く知ってるのに、 バッチファイルなどの簡単な事は知らない。 教育が偏りすぎなんです。 もっと教育現場を見直す必要がありますね。
Java が C系言語? ???
VBAもC系言語?
Fortranだって空白入れるだろ。 「C系言語」とか意味不明だわ。
ALGOL系
>>756 それは後期になってC言語に影響されはじめてからのことだろ。
FORTRANで空白なんて入れてたらカードが何枚あっても足りない。
dosって結局2002年からバージョンアップされてないわけだろ 何がいいわけ?
ここdosのスレじゃないぜ
バッチファイルってdosコマンド使うんじゃないの?
うましかじゃないの?
分からないならレスしないでください
764 :
デフォルトの名無しさん :2009/04/17(金) 00:16:11
通りすがりが学生の時に作ったバッチを晒してみる。 *.classを*.javaにするバッチ… 使い方は読めば分かる人には分かるだろうが classフォルダとjavaフォルダを作って classフォルダに*.classファイルとjad.exe(探せば拾える。googleさんにでも聞いてくれ) を置く 後はその↑の階層から実行すればOK rname.batは消すか何とかしてくれあれを晒すのは、ちょっと…^^; ほしい人がいたら上げて見るが、 多大なバッシングを受けそうな気が(これを上げる地点で受けそうな気もするが)… cd class jad.exe *.class jad.exe *$*.class for %%i in (*.jad) do native2ascii.exe -reverse %%i %%i.java cd .. call rname.bat // rname.batは*.jad.javaとなっているのを.javaにする copy /y *.java ..\java del *.jad del *.java てか、こんな処理もっと簡単にできるだろうにorz 長文失礼 追記 // ←これ使えたっけ?
765 :
デフォルトの名無しさん :2009/04/17(金) 00:50:20
すみません。拡張子".Z"を解凍できる外部コマンドを教えてください expend?は無理でした よろしくお願いします
uncompress
icomp
現在のプロセス数をタスクトレイに表示 そんなバッチファイルください
title `ps -efW | wc -l` みたいなことやればよし titleに情報表示って何気に便利なんだよな
バッチで、ps -eなんて使えるの?
知ったかぶりは無視してください
Windowsで、ps -eなんて使えるの? バッチ で、` ` なんて使えるの?
powershellもどうせならbashコマンドに似せて作ってくれたらよかったのに
なるほど
知ったかぶりは無視してください
なるほど
tasklist/nh|find /c /v ""|(set /p x=& call title %x%)
titleコマンドはいつからタスクトレイに表示するコマンドになったんだ?
無理 の一言で済ませて欲しいならそっちでも構わないよ
なるほど
start /min cmd /k "tasklist/nh|find /c /v ""|(set /p x=& call title %x%)"
なるほど
784 :
デフォルトの名無しさん :2009/04/20(月) 21:47:03
ご助言お願いします。 特定のディレクトリに、longfilename日付.txtというファイルが いくつかあります。※状況によってファイル数が変わる (例) longfilename20090417.txt longfilename20090419.txt longfilename20090420.txt これらのファイルの中身の"aaa"という文字列を"bbb"に変換したいのですが どのようにすれば良いでしょうか 以下のように書きましたが、うまくいきませんでした。 dir *.txt > tmp.txt type tmp.txt | find "txt" > tmp1.txt for /f "tokens=4" %%a in (tmp1.txt) do echo %%a >> tmp2.txt for /f %%a in (tmp2.txt) do sed -e 's/aaa/bbb/g' %%a > %%a 問題点としては、 ・Sed LOGOS版2.42が、ロングファイルネームのファイルを使えないっぽい ・4行目のfor文の記述では繰り返し処理が無理? 使用しているsedは、Sed LOGOS版2.42というものです。 よろしくお願いします。
>>764 自意識過剰すぎる
本当は今も学生なんじゃないか?
>>784 Sed LOGOS版2.42がどういう仕様かは知らないけど、
いくつかDOS/Win用sed使った経験からいうと、
sedの引数は '〜' じゃなく "〜" で括らないと
意図どおりにならない気がする。
それから、
> for /f %%a in (tmp2.txt) do sed -e 's/aaa/bbb/g' %%a > %%a
入力ファイルと出力ファイルが同じだと
うまくリダイレクトできないんじゃなかったっけ?
あと、実際のファイル名が分からないから念のため触れておくと、
> for /f "tokens=4" %%a in (tmp1.txt) do echo %%a >> tmp2.txt
もしもファイル名に空白を含む可能性があるなら、
これだと空白でファイル名が途切れる。
for /f %%a in ('dir /b *.txt') do type "%%~a"
みたいにすると、きれいにファイル名だけ取り出せるはず。
Sed LOGOS版2.42が、ロングファイルネームのファイルを使えない
for文の記述では繰り返し処理が無理
知ったかぶりは無視してください
やっぱりロングファイルネームのファイルを使えないですか
やりかたがあほなんじゃないか?
間抜けなコードだねw
ベクターにSed LOGOS版2.42があったので試してみた。
>>786 で挙げた点のうち、
> sedの引数は '〜' じゃなく "〜" で括らないと
> 意図どおりにならない気がする。
これは '〜' でも大丈夫だった。
それから、DOS用なので
>>787 のいうようにロングファイルネームは使えなかった。
でもショートファイルネームにすればいいだけの話なら、
for /f %%a in ('dir /b *.txt') do sed -e "s/aaa/bbb/" %%~snxa
みたいにすればいけるよ。
ロングファイルネームのファイルを使えない間抜け
いやそんな面倒な事しなくても普通は出来るから。
ロングファイルネームが使えるWindows用sedって無いですよね?
Cygwinでsed動かせばいいんじゃないの? まあCygwinはCygwinでパスの扱いに難を感じることもあるけどさ。
sed使わなければいいんじゃないの?
なるほど
for %%a in (*.txt) do ( sed -e "s/aaa/bbb/" < %%a > %%a+ && del /y %%a && ren %%a+ %%a )
for %%a in (*.txt) do perl -i.bak -e "s/aaa/bbb/" %%a
for %%a in (*.txt) do perl -i.bak -pe "s/aaa/bbb/" "%%a"
作業ファイル使わずにできるだろぼけ
そんな面倒な事しなくても普通は出来るから。
なるほど
さいばんちょ
CPU使用率だけをウインドウのタイトルにリアルタイムで表示させたいです。
:loop title 100% goto loop
\ ∩─ー、 ==== \/ ● 、_ `ヽ ====== / \( ● ● |つ | X_入__ノ ミ そんな餌で俺様が釣られクマ―― 、 (_/ ノ /⌒l /\___ノ゙_/ / ===== 〈 __ノ ==== \ \_ \ \___) \ ====== (´⌒ \ ___ \__ (´⌒;;(´⌒;; \___)___)(´;;⌒ (´⌒;; ズザザザ
wmic
>>809 :LOOP
DIR C:\ | FIND "空き領域">c:\temp\dir-title.tmp
FOR /F "eol=; tokens=3* delims= " %%i IN ('TYPE c:\temp\dir-title.tmp') DO @TITLE %%i %%j
PING WaitDammy
GOTO LOOP
CPU使用率とディスクの空き領域に何の関係が?
814 :
812 :2009/04/22(水) 15:06:04
WaitDammy
Win32_Processor
誰がミッキーマウスだ
麻生?
読み方の質問は板違い
type %0>>%0 echo ファイルサイズの限界を求めるバッチを作りました pause
2倍になるだけだけどぼけ
823 :
デフォルトの名無しさん :2009/04/25(土) 17:48:02
set /p d=4桁で日付を入力してください だと4つの数字がひとつの変数になってしまいますが、 前半2つの月と後半二つの日にちを別々の変数として得るにはどうすればいいですか?
set /p d=前半2つの月を入力してください
825 :
デフォルトの名無しさん :2009/04/25(土) 18:00:50
そういう風に月と日にちで2回入力しないとだめですか?
あ、わかった %d:~0,2% %d:~2% でやればいいんですね!
set /a d % 100 set /a d / 100
バッチファイルで四則演算したくなったら迷わず別のスクリプト使うな
%は四則か?
%は四則でできるな
なるほど
今開いてるフォルダを閉じるには、どうすれば良いでしょうか?
taskkill /im explorer.exe
今開いてるフォルダだけを閉じるには、どうすれば良いでしょうか?
taskkill /im explorer.exe
すみません。いくつか開いてるフォルダがあって、任意のフォルダのみ閉じるには どうすればいいでしょうか。 バッチの中で、フォルダのパスを変数に入れてれば出来ますか?
mshta.exe vbscript:execute("createobject(""shell.application"").windows.item.quit:close") でいけると思う
便乗質問 taskkill /FI "WINDOWTITLE EQ コマンド プロンプト" (これはOK。別窓のコマンド プロンプトが閉じます) taskkill /FI "WINDOWTITLE EQ Program Files" 情報: 指定された条件のタスクは実行されていません。 (ダメ。エクスプローラで Program Files を開いているのに!) なんで?
プロセスは1個 フォルダのウィンドウは複数
なるほど
tasklist /v
ん〜〜〜えっとね、えっとね、よくわかんない
プロセス:ウィンドウ=1:1 メインウィンドウあり プロセス:ウィンドウ=1:n メインウィンドウなし tasklist /v taskkill はメインウィンドウのタイトル つまりexplorerにはメインウィンドウがない
なるほど
845 :
デフォルトの名無しさん :2009/04/29(水) 14:18:45
バッチファイルの中で半角のビックリマーク!!を表示させるには どうすれば良いでしょうか 環境:XP コマンドプロンプト上で以下は正常に表示されますが echo baka!! バッチだと!!が表示されません
^! でエスケープできると思うがもともと!って普通に出ないか。
ありがとうございます ^^でエスケープできました
>>845 >バッチだと!!が表示されません
ふつう表示されるが?
遅延展開してるからだろぼけ
echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo バッチファイルの中で半角のビックリマーク!!を表示させるには echo どうすれば良いでしょうか echo 環境:XP echo echo コマンドプロンプト上で以下は正常に表示されますが echo echo baka!! echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
お兄様方・・ batでクリップボードに『あいうえお』とだけ送ることって出来ますか
batから動的にEXEやvbsを作成すれば可能なんじゃないかな
>>852 ありがとうございます。
ということはbatにこだわらずvbsで作れば実現できますでしょうか。。
CLIP 説明: コマンド ライン ツールの出力を Windows クリップボードにリダイレクトします。 その出力されたテキストをほかのプログラムに貼り付けることができます。 パラメータ一覧: /? このヘルプを表示します。 例: DIR | CLIP 現在のディレクトリ一覧のコピーを Windows クリップボード に貼り付けます。 CLIP < README.TXT readme.txt ファイルのテキストのコピーを Windows クリップボードに貼り付けます。
お兄様方・・ batでクリップボードからテキストを取り出すことって出来ますか
惜しいな。 for /f "tokens=2 delims==" %i in ('wmic cpu get loadPercentage /value') do titl e %i
すれ汚しすいません
>>859 mshtaはフォーカスがとられるから使いにくいな
863 :
デフォルトの名無しさん :2009/05/01(金) 06:06:20
現在、居るディレクトリのパスを環境変数に入れるには どうすればよろしいでしょうか?
>>863 SETLOCAL ENABLEEXTENSIONS
ECHO %CD%
cd | set /p x=
SET X=%CD%
batから動的にEXEやvbsを作成すれば可能なんじゃないかな
なにが可能って?
>>867 作成せんでも、jsをbatに組み込めば可能なんじゃないかな
そんなことせんでもmshta使えば可能なんじゃないかな
そんなもの修復してまでやるやつはいないよ
お兄様方・・テキスト整形をしたいのですが条件に見合うソフトがないので こちらでお願いさせてください。 このようなテキストがあります。 1-3 1,3,5-6 7,9-10,12 入力されている規則はつながっている数字なら - で表現して 飛んでいる数字は,で区切って表現というような形です。 これを次のように分解して , 区切りで 整形したいのですが 1,2,3 1,3,5,6 7,9,10,12 数字の桁数は最大で5桁でして複数条件になるので置換作業では追いつかなくて困っています; テキストファイルをドラッグ&ドロップで読み込ませたら 自動で整形したファイルを同一ディレクトリに吐き出すような動きだと嬉しいです。 あつまかしくてすいません。よろしくお願いいたします
FOR /L だな
そんなものバッチでやる馬鹿はお前ぐらいだよ
できた set XZ=A B C D E F G H I J K L M N O P Q R S T U V W X Y Z set X1=ア イ ウ エ オ set X2=カ キ ク ケ コ set X3=サ シ ス セ ソ set X4=タ チ ツ テ ト set X5=ナ ニ ヌ ネ ノ set X6=ハ ヒ フ ヘ ホ set X7=マ ミ ム メ モ set X8=ヤ ユ ヨ set X9=ラ リ ル レ ロ set X0=ワ ヲ ン
>>874 そんなものバッチでできない馬鹿はお前ぐらいだよ
>>875 出来ました!!歓喜!!!
batは読めませんがすごいです。。
この程度だよ
バッチでソフトを起動したらソフトが終了するまでバッチが停止してしまうんですが 起動後そのまま停止しないようにするにはどうすればよいのでしょうか?
START 指定されたプログラムまたはコマンドを実行するためにウィンドウを開きます。 START ["タイトル"] [/D パス] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL] [/AFFINITY <16 進数のアフィニティ>] [/WAIT] [/B] [コマンド/プログラム] [パラメータ] "タイトル" ウィンドウのタイトル バーに表示するタイトル。 パス 開始するディレクトリ。 B 新しいウィンドウを作成せずにアプリケーションを起動します。 アプリケーションは Ctrl + C を無視します。 アプリケーションで Ctr l+ C を有効にしていない限り、 Ctrl + Break がアプリケーションを中断する唯一の方法です。 I 新しい環境は、現在の環境ではなく、cmd.exe に渡された元の環境に なります。 MIN ウィンドウを最小化の状態で起動します。 MAX ウィンドウを最大表示の状態で起動します。 SEPARATE 16 ビットの Windows プログラムを別メモリ領域で起動します。 SHARED 16 ビットの Windows プログラムを共有メモリ領域で起動します。 LOW IDLE 優先度クラスでアプリケーションを起動します。 NORMAL NORMAL 優先度クラスでアプリケーションを起動します。 HIGH HIGH 優先度クラスでアプリケーションを起動します。 REALTIME REALTIME 優先度クラスでアプリケーションを起動します。 ABOVENORMAL ABOVENORMAL 優先度クラスでアプリケーションを起動します。 BELOWNORMAL BELOWNORMAL 優先度クラスでアプリケーションを起動します。 AFFINITY 新しいアプリケーションでは、16 進数で表現された プロセッサの affinity mask が指定されます。 WAIT アプリケーションを起動し、終了するまで待ちます。 コマンド/プログラム (以下略)
コピペうざい
884 :
881 :2009/05/02(土) 14:58:26
僻むなよ、貧乏人。
(厨)皆さんリア中に見えますがリアル中年です
意味わからん
dir コマンドでファイルの更新時刻が一覧で見れますが、分単位までしか表示されません。 ファイルの更新時刻を秒単位まで一覧表示するにはどうしたらよいでしょうか?
>>880 wmic process call create "アプリ"
なるほど
SUBSTで仮想ドライブを作成する際にアイコンやラベルなどは設定できないのでしょうか?
>>896 そういうパソコンの使い方の質問は完全な板違い
ここは自分でプログラムを作る人の板
DOSコマンドの質問してるのに何故完全な板違いなんでしょう・・・。
DOSコマンドの質問をするスレじゃないからね
もしかして: autorun.inf
なるほど
echo "なるほど^^!^^!"
なるほど
なるほど
なんで?
試せばわかる
なるほど
913 :
デフォルトの名無しさん :2009/05/06(水) 00:28:26
アプリを終了して起動するだけのBATファイルなのですが、 起動した後でも黒い画面が残るのですが、これを消すとか出ないようにするにはどうすれば良いでしょうか?
無理にbatじゃなくていいじゃん
なるほどじゃん
CALLでバッチ呼び出して引数渡して、戻り値をとるみたいなことってできますか?
できます
CALL バッチ 引数 echo %errorlevel%
CHNKO.BAT ------------- CALL UNKO.BAT 引数1 引数2 ECHO 戻り値は [%ERRORLEVEL%] UNKO.BAT -------------- ECHO 引数は [%1] [%2] EXIT /B 123
なるほど
STARTでバッチ呼び出して引数渡して、戻り値をとるみたいなことってできますか?
START /b バッチ 引数 echo %errorlevel%
戻り値は%ERRORLEVEL%以外も取れますか?
echo %=exitcode%
なるほど
なるほどってレスしてるやつ誰だよ
echo !ERRORLEVEL!
なーるほどなるほどなるほーど
いかにも
ファイル名の大文字変換や小文字変換はできますか?
できるよ
やっぱりですか ですよね
どうやるのですか?サンプルお願いします。
なるほどってレスしてるやつ誰だよ
できました!ありがとう
set x=%x:a=A% ... set x=%x:z=Z%
>>937 '...'は内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
939 :
デフォルトの名無しさん :2009/05/07(木) 02:50:20
バッチファイルで以下のようなのを作りたいのですが、 可能でしょうか?可能なのであればサンプルがあると 助かるのですが・・・ ・↑↓のキー入力でメニューを選択する ・現在選択しているメニューは白抜き文字になる ・Enterキーで決定する
可能、サンプルある どこいったか不明
やっぱりですか ですよね できました!ありがとう
ファイルやフォルダの機種依存文字?(中国語とか記号)のせいで読み込もうとするとエラーが出るソフトがいっぱいある そういった字を一括で消したんだけどそうゆうのバッチでできない?
可能、サンプルある どこいったか不明
>>939 エスケープシーケンス使ってやってるの見たことあるな
やっぱりですか ですよね できました!ありがとう
set %x:©=% ... set %x:®=% ...
>>939 powershell使ってやってるの見たことあるな
なるへそ
フォルダの全ファイルに対して、ファイル名が半角カタカナであった場合、 全角カタカナに変換するパッチを作成したいですが、出来るでしょうか? 例:アイウエオ → アイウエオ
やればできる
set %x:ア=ア% ... set %x:ン=ン%
なるへそ
アプリを終了させたいのですが taskkillと同じようなコマンドありませんか?
tskill
wmic process call terminate
powershell kill
app shutdown
なるへそ
この4スレッド、俺適に永久保存
なるほど
'app' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。
やっぱりですか ですよね できました!ありがとう
出来ました!!歓喜!!!
なるほど
やっぱりですか ですよね できました!ありがとう
なるほど
がんばり方が気持ち悪い
やっぱりですか ですよね
2つのファイル(A.txt、B.txt)の内容を比較して、A.txtに存在していて、B.txtに存在していないものを書き出すことは可能でしょうか? A.txtの内容 a b c d B.txtの内容 a b d
可能
kwsk
type A.txt type B.txt echo c
出来ました!!歓喜!!!
つfor
やっぱりですか ですよね できました!ありがとう
ありがとうございました けっこう手間かかりそうですね 他に方法はありませんか?
だったら最初からそう書けばいいじゃん! 後だしジャンケンに勝っても自慢にならんぞ!
おまえの勝ち!
おーこれは便利 そっちの方がシンプルね。
早々のお返事どうも有難うございました。 ありがとうございます。作成できました。
せっかくヘルプに載っているのに、馬の耳に念仏やったね
やっぱそうですか〜。めんどいなぁ。 ありがとうございました。
なるほど
やっぱりですか ですよね できました!ありがとう
なるほどってレスしてるやつ誰だよ
なるほど ありがとうございました
それはたしかにそのとおりです。 ありがとうございました!
頭で覚えるのではなく体で覚えるんだ
んーそうなんだ
勉強になるなあ このスレッド、俺適に永久保存
998 :
デフォルトの名無しさん :2009/05/11(月) 00:15:08
ま
ん
1000 :
デフォルトの名無しさん :2009/05/11(月) 00:17:16
こ
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。