バッチファイルプログラミング質問スレ
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
NGNG0002デフォルトの名無しさん
NGNG昔は良く捕まえて虫かごにいれておいたんですが。
0003デフォルトの名無しさん
NGNG0004デフォルトの名無しさん
NGNG0005デフォルトの名無しさん
NGNG0006デフォルトの名無しさん
NGNGバッチファイルについて語ったり質問したりするスレ
http://pc.2ch.net/tech/kako/1006/10061/1006167121.html
関連スレ
バッチ_スレ
http://pc.2ch.net/tech/kako/1018/10181/1018163331.html
0007デフォルトの名無しさん
NGNG0008デフォルトの名無しさん
NGNG使用できる命令:
DOS内部コマンドとほぼすべての外部コマンド。
使用できる制御構造:
IF FOR GOTO
主にバッチファイル専用コマンド:
BATKEY PAUSE CHOICE
変数:
使えるがその用途は限りなく少ない。環境変数は使える。
レベル:
BASIC以下。プログラミングと呼ぶのも憚られる。
楽しみ方:
他のプログラミング言語と違い大量の制限があるためその制限を超えた何かを作ること。
0009デフォルトの名無しさん
NGNG0010デフォルトの名無しさん
NGNG存在。
0011デフォルトの名無しさん
NGNGpl2batのようなことやると
バッチファイル内にperlのスクリプトかけるから
なんでもできそうやな
近視眼だとそれだけで終わっちゃうけど
0012デフォルトの名無しさん
NGNGじゃあはじめからperl使えよと。と言う話になったり。
001311
NGNG他人に使わせる時にいちいちperl -f xxx para para とか書かせるのが。
知識ある人ばっかりじゃないんだから,隠蔽してあげられるところは
隠蔽したほうがね…
0014デフォルトの名無しさん
NGNG★★★★★★★★★★★★★★★★★★★★★★★★★★★★
★・裏情報取引サイト→http://www.kawachi.zaq.ne.jp/dpdan803/★
★・国際免許取得→→→http://www.kawachi.zaq.ne.jp/dpdan803/★
★・あらゆる調査→→→http://www.kawachi.zaq.ne.jp/dpdan803/★
★★★★★★★★★★★★★★★★★★★★★★★★★★★★
001511
NGNGそれならbatではなく実行ファイルにしておけたらいいけど、
できるならばソースはいつでも手が入れられたり覗けるようにするほうが
自分が居なくなったりしても混乱が減らせるでそ。
(退職などで)ツール作って残してくれてる人もいるが、
環境が変わった際に変更できないといちいち車輪を発明しなおさないと
いけないのが面倒で…
(あと,ジョブセキュリティにするような輩とかもいるし・・・)
この形で運用できるのは結構便利だったりする。
0016デフォルトの名無しさん
NGNGSOSで.com化とか。
ついでにつっこんどくと、perlに-fオプションはない。
0017デフォルトの名無しさん
NGNGそれはバッチ
0018デフォルトの名無しさん
NGNGそう言うときのバッチファイルか!
@echo off
perl -f xxx %1 %2
0019135
NGNGごめん。sedとごっちゃになってた…
0020デフォルトの名無しさん
NGNG↓
com2txt
0021デフォルトの名無しさん
NGNGcallが抜けている。
0022デフォルトの名無しさん
NGNGわすれてたyo・・・頭の中にはあったんだがなぁ・・・。
0023デフォルトの名無しさん
NGNGperl %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto EXIT
}
#perl script
exit;
:EXIT
0024デフォルトの名無しさん
NGNGああ、すぐわかるPerlか何かに載ってたなぁ・・・。
0025デフォルトの名無しさん
NGNG002625
NGNGでもこれでバッチには無視される行ってできないかな。
@rem = undef;
# perl script
exit;
^M
perl %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
0027デフォルトの名無しさん
NGNG間違ってるというかなんじゃそら。
0028デフォルトの名無しさん
NGNG具体的にどのへんが間違ってる?
0029デフォルトの名無しさん
NGNG0030デフォルトの名無しさん
NGNG0031デフォルトの名無しさん
NGNGID:ZBsKvw39 (゚∀゚)アヒャヒャ
ID:ZBsKvw39 (゚∀゚)アヒャヒャ
0032デフォルトの名無しさん
NGNG0033デフォルトの名無しさん
NGNG0034デフォルトの名無しさん
NGNG逆転も何もないって。
勢いで上告なんかしても一発で上告却下(門前払い)だよ。
二審も一審を支持。これに対して上告しようにも、
刑事訴訟と同様、自由に上告できるってもんでもないのです。
民事訴訟法312条 (上告の理由) 1項
「上告は、判決に憲法の解釈の誤りがあること
その他憲法の違反があることを理由とするときに、することができる。」
http://www.m-net.ne.jp/~doba/goto/hon.htm
ようするに上告しても今の制度では100%無駄。 これで完全終了ってことか。
0035デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0036デフォルトの名無しさん
NGNG同意。いろんな状況があるけど、結局たどり着くところはそこだと思う。
0037デフォルトの名無しさん
NGNG時間の約束が守れない奴はどんなに偉かろうが人間的にもうだめぽ
0038デフォルトの名無しさん
NGNG正直、コレから5年で5兆日本円(機軸)
稼ぐ事は普通に結構出来ますが
「目先の」 小さな事が僕にとって大事です。
お願いします。
助けを頂きたいのです。かなりヤバイです
一刻の猶予が完全に無いんです
大丈夫でしょうか、
けんすう様(泣
0039デフォルトの名無しさん
NGNGマジに見える貴方がバッカみたい。
しかし、もう寝るので許すよ。
0040デフォルトの名無しさん
NGNG0041デフォルトの名無しさん
NGNG0042デフォルトの名無しさん
NGNGhttp://dailynews.yahoo.co.jp/fc/computer/2channel/ の左下
0043デフォルトの名無しさん
NGNG趣旨は理解しているのだが
空気も趣旨も読めない筋肉あらいぐまに乱入されたら
罵倒合戦になっても致し方あるまい
0044デフォルトの名無しさん
NGNGこの板は中と半端な馬鹿が集まってきているから好き
267 名前:番組の途中ですが名無しです[] 投稿日:03/01/08 19:10 ID:qfaGu+ZB
じゃあさトップに閲覧料1分1億円てかいといて訴えられるたびに請求したら良くない?
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNG0047デフォルトの名無しさん
NGNG誰も何も言えない時代が来そうな伊予柑
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNGヲチ板を見ればわかるが、基本的に警察・裁判所以外には情
報を出さないということは、相手が事件化させ名前が知れ渡る
可能性があっても敢えて訴えるというほどの決意を持たない限
り大丈夫ってことだから。
だから、当面基本的には変わらないだろ。
尤も、今後そういう訴える奴も増えていくだろうし、
中には刑事事件化するものもでるだろう。
あとはさらなるリスクを冒してまでひろゆきが、
そこまで放置していられるかどうかだろうね。
0050デフォルトの名無しさん
NGNGバカに乗っ取られたマターリスレ晒しage中。
0051デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0052デフォルトの名無しさん
NGNG0053デフォルトの名無しさん
NGNG0054デフォルトの名無しさん
NGNG0055デフォルトの名無しさん
NGNG0056デフォルトの名無しさん
NGNGような気がする。
今まで如何に無責任な書き込みが多かったかを示しているような
気もするけど、閑散として活気もなくなったような気もする。
0057デフォルトの名無しさん
NGNGでも全員が閲覧できるわけじゃないから
ヤバイこと書き込まなきゃOKなんでしょ?
0058デフォルトの名無しさん
NGNGモナーが出演決定!!!!!!!!!!!!!!!!!!!!!
<<放送時間>>
1/12
大阪 テレビ大阪 (日)9:30〜10:00
東京 テレビ東京 (日)9:30〜10:00
名古屋 テレビ愛知 (日)9:30〜10:00
福岡 TVQ九州放送 (日)9:30〜10:00
札幌 テレビ北海道 (日)9:30〜10:00
岡山・高松 テレビせとうち (日)9:30〜10:00
0059デフォルトの名無しさん
NGNGまた孫悟空だろう。
0060デフォルトの名無しさん
NGNG何て事してくれんのよ
キラーって奴は・・・
戦って守りきりますよ
母は強し
0061デフォルトの名無しさん
NGNGに管理人一人じゃどうしようもない。。が、当然2chだけじゃなく他の掲示板に
も大きな問題となる判決だ、、
0062デフォルトの名無しさん
NGNG2ちゃんからリンクして拾ってくるようにできんかな?
0063デフォルトの名無しさん
NGNG厨房逝ってよし。
0064デフォルトの名無しさん
NGNG人がいるけど、それって何をするとでるの?
俺は見たこと無い。
0065山崎渉
NGNG0066山崎渉
NGNG0067デフォルトの名無しさん
NGNGVBSのスレを知りませんか?
0068山崎渉
NGNG0069デフォルトの名無しさん
NGNG0070デフォルトの名無しさん
NGNGCD
COPY
CLS
CTTY
DATE
DEL / ERASE
DIR
ECHO
EXIT
FOR
IF
MD / MKDIR
PATH
PAUSE
PROMPT
RD /RMDIR
REN /RENAME
SET
SHIFT
TIME
TYPE
VER
VOL
0071デフォルトの名無しさん
NGNGATTRIB
CHOICE
FORMAT
MOVE
COMMAND
糞多いので省略
0072デフォルトの名無しさん
NGNGコンパイル不要
特別なソフト不要
数値が扱えない
低速
0073デフォルトの名無しさん
NGNG拡張子などのリネーム作業を大幅に短縮できる
ネットワークとかシステムの細かな設定が可能
いわゆるCUIでの操作なのでコマンドを覚えるのが大変(らしい)
0074デフォルトの名無しさん
NGNG0075デフォルトの名無しさん
NGNGrem /* レジストリ保存 win9x */
rem /* intpathでパス指定、ここでは"?:\" */
set intpath=\
if "%1" == "" goto err
cd %intpath%
md %1
cd %1
for %%i in (user;system) do \windows\command\attrib -r -s -h \windows\%%i.dat > nul
for %%i in (user;system) do copy \windows\%%i.dat
goto exit
:err
echo %%1を指定せよ
:exit
set intpath=
exit
これをファイル名を指定して実行のダイアログにドラッグして[space]+フォルダ名でウマー
例 C:\hoge.bat 123456
0076デフォルトの名無しさん
NGNG> for %%i in (user;system) do \windows\command\attrib -r -s -h \windows\%%i.dat > nul
> for %%i in (user;system) do copy \windows\%%i.dat
セミコロン区切りってできるんだっけ。
0077デフォルトの名無しさん
NGNGできる。スペースとかカンマでもできるけど、
自分でそれがいいと思うのを使えばいい
@echo off
echo space
for %%i in (1 2 3) do echo %%i
pause >nul
echo ;
for %%i in (1;2;3) do echo %%i
pause >nul
echo ,
for %%i in (1,2,3) do echo %%i
pause >nul
exit
0078デフォルトの名無しさん
NGNG0079デフォルトの名無しさん
NGNG0080デフォルトの名無しさん
NGNG0081デフォルトの名無しさん
NGNG0082デフォルトの名無しさん
NGNG0083デフォルトの名無しさん
NGNGhttp://pcweb.mycom.co.jp/column/msdos.html
0084デフォルトの名無しさん
NGNGhttp://pc.2ch.net/test/read.cgi/prog/1043591614/
MS-DOS ってどうよ
http://pc.2ch.net/test/read.cgi/os/1010640399/
0085デフォルトの名無しさん
NGNGいつごろからか知ってる?
0086デフォルトの名無しさん
NGNG3.3で動作確認
0087デフォルトの名無しさん
NGNGrem /* レジストリ保存&復元ユーテリティ win9x */
set intpath=\
if "%1" == "/?" goto usage
if "%1" == "" goto usage
if not exist \windows\command\attrib.exe goto err
echo レジストリ保存&復元ユーテリティ win9x
echo レジストリを保存作業を開始します.
echo 開始ディレクトリは ?:%intpath% です.
echo/
for %%i in (user;system) do \windows\command\attrib -r -h -s \windows\%%i.dat
echo ?:%intpath%ディレクトリを作成しています...
md %intpath%%1
if exist %intpath%%1\*.* del %intpath%%1\*.??? >nul
echo/
for %%i in (user;system) do copy \windows\%%i.dat %intpath%%1 > nul
echo %intpath%%1へレジストリを保存しました
echo 復元ユーテリティをコピーしています...
cd %intpath%%1
set p=%%
echo @echo off>regback.bat
echo rem /* レジストリ保存&復元ユーテリティ win9x */>>regback.bat
echo/>>regback.bat
echo if not exist \windows\command\attrib.exe goto err>>regback.bat
echo echo レジストリ復元ツール>>regback.bat
echo echo レジストリを復元します.>>regback.bat
echo echo/>>regback.bat
echo echo 以前のバックアップファイルを.\backup\に保存します.>>regback.bat
0088デフォルトの名無しさん
NGNGecho md backup>>regback.bat
echo if exist backup\*.* del backup\*.??? > nul>>regback.bat
echo for %p%%p%i in (user;system) do copy \windows\%p%%p%i.dat .\backup > nul>>regback.bat
echo echo 以前のバックアップファイルを.\backup\に保存しました.>>regback.bat
echo echo/>>regback.bat
echo echo レジストリを復元しています...>>regback.bat
echo echo 復元中は絶対にウィンドウを閉じないでください.>>regback.bat
echo for %p%%p%i in (user;system) do del \windows\%p%%p%i.dat>>regback.bat
echo copy *.dat \windows>>regback.bat
echo echo レジストリを復元に成功しました.>>regback.bat
echo echo レジストリを反映させるには再起動をしてください.>>regback.bat
echo goto exit>>regback.bat
echo/>>regback.bat
echo :err>>regback.bat
echo echo エラー: \windows\command\attrib.exeが見つかりません>>regback.bat
echo/>>regback.bat
echo :exit>>regback.bat
echo exit>>regback.bat
echo レジストリ保存作業完了しました。
goto exit
:err
echo エラー: \windows\command\attrib.exeが見つかりません
echo/
goto exit
:usage
echo レジストリ保存&復元ユーテリティ win9x
0089デフォルトの名無しさん
NGNGecho/
echo ???.bat [フォルダ名]
echo/
echo [フォルダ名] 保存したいフォルダの名前を指定します.
:exit
set p=
exit
レジストリを復元したりするツールですが
0090デフォルトの名無しさん
NGNGそうか、ずっとそうだったのか。知らんかったよ。
逝って来る前にもう一つだけ、これって常識?
0091デフォルトの名無しさん
NGNG0092デフォルトの名無しさん
NGNG0093デフォルトの名無しさん
NGNG>主にバッチファイル専用コマンド:
>BATKEY PAUSE CHOICE
あほ
0094デフォルトの名無しさん
NGNG持ってるOSは何
プログラミング(?暦はどのくらい
エスケープシーケンスは使った事があるか
0095デフォルトの名無しさん
NGNG> 持ってるOSは何
メインはLinux
> プログラミング(?暦はどのくらい
20年くらい
> エスケープシーケンスは使った事があるか
ある。今でもbashのプロンプトに使ったりするし。
>>92は「DOSなんて(もう)持ってない」ってこと。すまん。
0096デフォルトの名無しさん
NGNG0097デフォルトの名無しさん
NGNGALIAS
BIND
BUILTIN
CD
COMPGEN
CONTINUE
DIRS
ECHO
EVAL
EXIT
FALSE
FG
FUNCTION
HASH
HISTORY
JOBS
LET
LOGOUT
PRINTF
PWD
READONLY
SELECT
SHIFT
SOURCE
TEST
TRUE
TYPESET
UMASK
UNSET
VARIABLES
WHILE
0098デフォルトの名無しさん
NGNG何のbuiltinか知らんが、FGはあってもBGはないのか?
0099デフォルトの名無しさん
NGNGhelpコマンドからそのまま引っ張ったから。
0100デフォルトの名無しさん
NGNGCygWinの方(一部)
fg [job_spec] for NAME [in WORDS ... ;] do COMMA
for (( exp1; exp2; exp3 )); do COM function NAME { COMMANDS ; } or NA
getopts optstring name [arg] hash [-lr] [-p pathname] [-dt] [na
help [-s] [pattern ...] history [-c] [-d offset] [n] or hi
if COMMANDS; then COMMANDS; [ elif jobs [-lnprs] [jobspec ...] or job
kill [-s sigspec | -n signum | -si let arg [arg ...]
local name[=value] ... logout
popd [+N | -N] [-n] printf format [arguments]
pushd [dir | +N | -N] [-n] pwd [-PL]
read [-ers] [-u fd] [-t timeout] [ readonly [-anf] [name[=value] ...]
return [n] select NAME [in WORDS ... ;] do CO
set [--abefhkmnptuvxBCHP] [-o opti shift [n]
shopt [-pqsu] [-o long-option] opt source filename
suspend [-f] test [expr]
time [-p] PIPELINE times
trap [arg] [signal_spec ...] or tr true
type [-afptP] name [name ...] typeset [-afFirtx] [-p] name[=valu
ulimit [-SHacdflmnpstuv] [limit] umask [-p] [-S] [mode]
unalias [-a] [name ...] unset [-f] [-v] [name ...]
until COMMANDS; do COMMANDS; done variables - Some variable names an
wait [n] while COMMANDS; do COMMANDS; done
{ COMMANDS ; }
0101デフォルトの名無しさん
NGNG0102デフォルトの名無しさん
NGNG0103デフォルトの名無しさん
NGNG0104デフォルトの名無しさん
NGNG0105デフォルトの名無しさん
NGNG0106デフォルトの名無しさん
NGNG3人いるらしぃ
0107デフォルトの名無しさん
NGNG0108デフォルトの名無しさん
NGNG0109デフォルトの名無しさん
NGNG0110デフォルトの名無しさん
NGNG0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNG0113デフォルトの名無しさん
NGNG0114デフォルトの名無しさん
NGNG神!!
BATKEYとかあればジャンケンゲームとかくらいなら作れそうな気がするが、こ
れだけやる気をそそられない課題も珍しい。
0115デフォルトの名無しさん
NGNGでも行が数千行にもなって、途中でヤメタ。
もうすぐで完成しそうだけど、それを作り続ける気力が無い…
0116デフォルトの名無しさん
NGNG0117デフォルトの名無しさん
NGNGなぜか迷路を作ろうとおもたよ
0118デフォルトの名無しさん
NGNGすんのよ。
0119デフォルトの名無しさん
NGNGtype [ファイル名]。
typeコマンドはエスケープシーケンスも読みこんでくれる
0120デフォルトの名無しさん
NGNGタイプだぁ〜?
echo を使え
0121デフォルトの名無しさん
NGNGファイル自体が大きくなる。そうなると、gotoとか多く使うでしょ。
gotoって、意外と時間かかるから、プレイする時間より待つ時間の方が長くなる。
だからなるべく早く処理するためには、システムファイル(exeとdllに値する部分)と見る部分のファイル
(ビットマップに値する部分のファイル)を分離せざるを得ないと思われ。
0122デフォルトの名無しさん
NGNG0123デフォルトの名無しさん
NGNGプロセスの生成+分割されたファイルの読み込みと、
でかい単一ファイルの読み込みのどっちが重いかってことになるのかな。
0124デフォルトの名無しさん
NGNGだいたい4-50KB、1500行ぐらいになると厳しいね。
だから、分割はそのくらいで分割してる。
callは設定ファイルを読み込む時に使ってる。
0125デフォルトの名無しさん
NGNG> だいたい4-50KB、1500行ぐらいになると厳しいね。
それだけ書くってとこで凄すぎ。というか呆れた。
0126デフォルトの名無しさん
NGNGそのぐらい、どうってことないと思うが
0127デフォルトの名無しさん
NGNG0128デフォルトの名無しさん
NGNG0129デフォルトの名無しさん
NGNG0130set /?より
NGNGSET /A 式
SET /P 変数=[プロンプト文字列]
/A スイッチは、等号の右側の文字列が、評価すべき数式であることを
指定します。式の評価はごく単純で、次の操作がサポートされます。
操作は、優先順位の高い順に示されています:
() - グループ化
* / % - 算術演算子
+ - - 算術演算子
<< >> - 論理シフト
& - ビット演算子 AND
^ - ビット演算子排他的 OR
| - ビット演算子 OR
= *= /= %= += -= - 代入
&= ^= |= <<= >>=
, - 式の区切り記号
0131set /?より
NGNG%PATH:文字列1=文字列2%
は、PATH 環境変数を展開し、その結果に含まれるすべての "文字列1" を
"文字列2" に置き換えます。"文字列2" に空の文字列を指定すると、展開
された出力からすべての "文字列1" を削除することができます。"文字列1"
をアスタリスクで始め、展開された出力の先頭から、文字列1 の残りの部分
が最初に現れるまでのすべてを一致させることもできます。
0132set /?より
NGNG%PATH:~10,5%
は、PATH 環境変数を展開し、展開結果の 11 番目 (オフセット 10) の文字
から始まる 5 文字だけを使います。長さが指定されなかった場合は、変数の
値の残りの長さを既定値とします。オフセットまたは長さのどちらかが負の値
の場合、環境変数の値の長さに指定されたオフセットまたは長さを足してその
数を使います。
%PATH:~-10%
は、パス変数の最後の10 文字が展開されます。
%PATH:~0,-2%
は最後の 2 文字以外のすべてが展開されます。
0133set /?より
NGNG無効になっていますが、CMD.EXE の /V: のコマンド ライン スイッチを使
って有効または無効にできます。CMD /? を参照してください。
遅延環境変数の展開は、実行時ではなく、テキスト行を読み取るときに展開
されるという現在の制限を避けるために役立ちます。
次の例は即時変数展開の問題を説明しています。
set VAR=before
if "%VAR%" == "before" (
set VAR=after;
if "%VAR%" == "after" @echo If you see this, it worked
)
この例は、論理的には IF 文が別の IF 文の本体に含まれる複合文なので、
両方の IF 文の %VAR% が、最初の IF 文を読み取ったときに展開されます。
このため、メッセージは決して表示されません。複合分の中の IF では "before"
と "after" が比較され、決して等しくはなりません。同様に次の例も期待し
たようには動作しません。
0134set /?より
NGNGfor %i in (*) do set LIST=%LIST% %i
echo %LIST%
この例では、現在のディレクトリのファイルの一覧は作成されず、代わりに最後
に見つけられたファイルが LIST 変数に設定されます。これは %LIST% が FOR 文
が読み取られるとき、一度だけ展開され、そのときは LIST 変数は、空だからです。
つまり、実際に実行されている FOR ループは
for %i in (*) do set LIST= %i
で、LIST に最後にみつけられたファイルを設定し続けているだけです。
0135set /?より
NGNG(感嘆符)を使うことができます。遅延環境変数の展開が有効な場合、上記の
例は次のように書くと意図したように動作します。
set VAR=before
if "%VAR%" == "before" (
set VAR=after
if "!VAR!" == "after" @echo If you see this, it worked
)
set LIST=
for %i in (*) do set LIST=!LIST! %i
echo %LIST%
0136set /?より
NGNG現れないいくつかの動的な環境変数があります。これらの変数の値は、変数の
値が展開されるときに動的に計算されます。ユーザーがこれらの名前の変数を
明示的に定義する場合、その定義は下記の動的な定義を無効にします。
%CD% - 現在のディレクトリ文字列に展開します。
%DATE% - DATE コマンドと同じフォーマットで現在の日付に展開します。
%TIME% - TIME コマンドと同じフォーマットで現在の時刻に展開します。
%RANDOM% - 0 から 32767 の間の任意の 10 進数に展開します
%ERRORLEVEL% - 現在の ERRORLEVEL の値に展開します。
%CMDEXTVERSION% - 現在のコマンド プロセッサ拡張機能のバージョン番号に
展開します。
%CMDCMDLINE% - コマンド プロセッサを起動したオリジナル コマンドライン
に展開します。
0137for /?より
NGNGセットがワイルドカードを含む場合は、ファイル名ではなくディレクトリ名
の一致を指定します。
FOR /R [[ドライブ:]パス] %変数 IN (セット) DO コマンド [コマンドパラメータ]
[ドライブ:]パスから始めて、ツリーの各ディレクトリで FOR 文を実行し
ます。/R の後にディレクトリが指定されていない場合は、現在の
ディレクトリが使用されます。セットが単一のピリオド (.) である場合は、
ディレクトリ ツリーの列挙だけを行います。
0138for /?より
NGNG取られ、処理されてから、ファイル名セットの次のファイルに進みます。処理
には、ファイルの読み取り、個々のテキスト行への分割と、0 個以上のトークン
への解析が含まれます。その後、変数値を見つかったトークン文字列に設定して、
for ループの本体が呼び出されます。既定では、/F は、各ファイルの各行から、
空白で区切られた最初のトークンを渡します。空白行はスキップされます。既定
の解析動作を変更するには、オプションの "オプション" パラメータを指定しま
す。これは、異なる解析オプションを指定する 1 つ以上のキーワードを含む、
引用符で囲まれた文字列です。キーワードは、次のとおりです:
eol=c - 行末のコメント文字を指定します (1 文字)。
skip=n - ファイルの先頭でスキップする行数を指定します。
delims=xxx - 区切り文字のセットを指定します。これは、既定の
区切り文字であるスペースとタブを置き換えます。
tokens=x,y,m-n - 各繰り返しに対して、各行から for 本体に渡すトー
クンを指定します。これにより、追加の変数名が割り当
てられます。m-n の形式は範囲で、m 番目から n 番目の
トークンを指定します。tokens= 文字列の最後の文字が
アスタリスクである場合は、追加の変数が割り当てられ、
最後のトークンが解析された後、行に含まれている残り
のテキストを受け取ります。
usebackq - 次の新しい表示形式を指定します。逆引用符で囲まれた
文字列がコマンドとして実行され、一重引用符で囲まれた
文字列がリテラル文字列コマンドになりファイル名セット
のファイル名を二重引用符で囲めるようになります。
0139for /?より
NGNGこの例は、myfile.txt の各行を解析します。セミコロンで始まる行を無視し、
各行の 2 番目と 3 番目のトークンを for 本体に渡します。トークンは、カンマ
またはスペースで区切られています。for 本体の文が %i で 2 番目のトークン
を、%j で 3 番目のトークンを取得し、%k で 3 番目移行のすべてのトークンを
取得していることに注意してください。スペースを含むファイル名に対しては、
二重引用符でファイル名を引用する必要があります。この方法で二重引用符を使う
ためには、usebackq オプションを使わなければなりません。使わなければ、二重
引用符はリテラル文字列の定義として解釈され、解析されます。
%i は for 文で明示的に宣言され、%j と %k は tokens= オプションで
暗黙的に宣言されています。tokens= 行を使って 26 個までのトークンを
指定できますが、文字 'z' または 'Z' よりも高い変数を宣言することは
できません。FOR 変数名は大文字と小文字を区別し、グローバルなもので
あり、一度にアクティブにできるのは合計 52 個までです。
また、カッコで囲んだファイル名セットを一重引用符で囲み、文字列にすることに
より、即時の文字列に対する FOR /F 解析ロジックを使うこともできます。
これは、ファイルからの単一入力行として処理されます。
最後に、FOR /F コマンドを使って、コマンド出力を解析することができます。
カッコの中のファイル名セットを逆引用符で囲みます。この文字列は、コマンド
ラインとして子 CMD.EXE に渡されます。出力はメモリにキャプチャされ、ファイ
ルのように解析されます。
例:
FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i
この例は、現在の環境の環境変数名を列挙します。
0140for /?より
NGNG次のオプション構文を使うことができます:
%~I - すべての引用句 (") を削除して、I を展開します。
%~fI - %I を完全修飾パス名に展開します。
%~dI - %I をドライブ文字だけに展開します。
%~pI - %I をパス名だけに展開します。
%~nI - %I をファイル名だけに展開します。
%~xI - %I をファイル拡張子だけに展開します。
%~sI - 展開されたパスは短い名前だけを含みます。
%~aI - %I をファイルの属性に展開します。
%~tI - %I ファイルの日付/時刻に展開します。
%~zI - %I ファイルのサイズに展開します。
%~$PATH:I - PATH 環境変数に指定されているディレクトリを
検索し、最初に見つかった完全修飾名に %I を
展開します。
環境変数名が定義されていない場合、または検索
してもファイルが見つからなかった場合は、この
修飾子を指定すると空の文字列に展開されます。
修飾子を組み合わせて、複合結果を得ることもできます:
%~dpI - %I をドライブ文字とパスだけに展開します。
%~nxI - %I をファイル名と拡張子だけに展開します。
%~fsI - %I を完全なパスと短い名前だけに展開します。
%~dp$PATH:i - PATH 環境変数に指定されているディレクトリを
検索して %I を探し、最初に見つかったファイル
のドライブ文字とパスだけに展開します。
%~ftzaI - %I を DIR コマンドの出力行のように展開します。
0141デフォルトの名無しさん
NGNGバッチファイルプログラミング Win2K(NT?)以上ならかなりいけます。
0142デフォルトの名無しさん
NGNG0143デフォルトの名無しさん
NGNGecho 三角形の面積
set /p a=底辺入力?
set /p b=高さ入力?
set /a c=a*b/2
echo %c%
0144デフォルトの名無しさん
NGNG@echo off
echo 先頭文字だけ小文字→大文字変換
set /p str=アルファベット入力?
set ch=%str:~0,1%
set lower=abcdefghijklmnopqrstuvwxyz
set upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
for /L %%i in (0,1,25) do call :uppercase_loop %%i
echo %ch%%str:~1%
goto :eof
:uppercase_loop
set l=!lower:~%1,1!
set u=!upper:~%1,1!
set ch=!ch:%l%=%u%!
0145デフォルトの名無しさん
NGNG@echo off
echo ^<table^>
FOR /F "eol=; tokens=1,2,3 delims=, " %%i in (test.csv) do echo ^<tr^> ^<td^>%%i^</td^> ^<td^>%%j^</td^> ^<td^>%%k^</td^> ^</tr^>
echo ^</table^>
test.csvの中身
商品,値段,個数
りんご,80,10
みかん,90,20
ばなな,100,30
0146デフォルトの名無しさん
NGNG0147デフォルトの名無しさん
NGNG0148デフォルトの名無しさん
NGNG0149ジャンケンゲーム
NGNG@echo off&echo ジャンケンゲーム&set win=0&set lose=0&set player=&set cpu=&set msg=1
set name1=グー&set name2=チョキ&set name3=パー&set msg_name1=ジャンケン?&set msg_name2=あいこで?&set err_msg=入力エラー
set t11=draw&set t12=win&set t13=lose&set t21=lose&set t22=draw&set t23=win&set t31=win&set t32=lose&set t33=draw
:start
set player=&set /p player=!msg_name%msg%!(1:%name1% 2:%name2% 3:%name3% 9:終了) &set /a cpu=%random% / 10923 + 1
if /%player% EQU /9 (echo 結果&echo 勝ち:%win% 負け:%lose%&goto :EOF) else if /%player% LSS /1 (echo %err_msg%&goto :start) else if /%player% GTR /3 (echo %err_msg%&goto :start)
goto !t%player%%cpu%!
:win
echo 勝ち プレイヤー:!name%player%! CPU:!name%cpu%!&set /a win+=1&set msg=1&goto :start
:lose
echo 負け プレイヤー:!name%player%! CPU:!name%cpu%!&set /a lose+=1&set msg=1&goto :start
:draw
echo あいこ プレイヤー:!name%player%! CPU:!name%cpu%!&set msg=2&goto :start
0150デフォルトの名無しさん
NGNG0151デフォルトの名無しさん
NGNG0152デフォルトの名無しさん
NGNG0153デフォルトの名無しさん
NGNG@echo off
echo 人
echo ( )
echo ヽ(・∀・)ノウンコー
goto 1
0154デフォルトの名無しさん
NGNG:#
echo
pause
goto #
0155calc.bat (1/6)
NGNG一桁 x 一桁までの演算ができまつ。
----------------------------------------------------
@echo off
find "_%3_%4_" calc.bat | find "_%3_%4_">calc2.bat
rem echo %%1=%1, %%2=%2, %%3=%3, %%4=%4, %%5=%5,
if "%1"=="ADD" echo set %2=%%2>calc3.bat
if "%1"=="SUB" echo set %2=%%3>>calc3.bat
if "%1"=="MUL" echo set %2=%%4>>calc3.bat
if "%1"=="DIV" echo set %2=%%5>>calc3.bat
if "%1"=="CMP" echo set %2=%%6>>calc3.bat
if "%1"=="CMP" echo if "%%6"=="" set %2=-1>>calc3.bat
call calc2.bat calc3
del calc2.bat
del calc3.bat
goto END
:---DATA---
%1 _0_0_ 0 0 0 255 0
%1 _0_1_ 1 -1 0 0
%1 _0_2_ 2 -2 0 0
%1 _0_3_ 3 -3 0 0
%1 _0_4_ 4 -4 0 0
%1 _0_5_ 5 -5 0 0
%1 _0_6_ 6 -6 0 0
%1 _0_7_ 7 -7 0 0
%1 _0_8_ 8 -8 0 0
%1 _0_9_ 9 -9 0 0
0156calc.bat (2/6)
NGNG%1 _1_1_ 2 0 1 1 0
%1 _1_2_ 3 -1 2 0
%1 _1_3_ 4 -2 3 0
%1 _1_4_ 5 -3 4 0
%1 _1_5_ 6 -4 5 0
%1 _1_6_ 7 -5 6 0
%1 _1_7_ 8 -6 7 0
%1 _1_8_ 9 -7 8 0
%1 _1_9_ 10 -8 9 0
%1 _2_0_ 2 2 0 255 1
%1 _2_1_ 3 1 2 2 1
%1 _2_2_ 4 0 4 1 0
%1 _2_3_ 5 -1 6 0
%1 _2_4_ 6 -2 8 0
%1 _2_5_ 7 -3 10 0
%1 _2_6_ 8 -4 12 0
%1 _2_7_ 9 -5 14 0
%1 _2_8_ 10 -6 16 0
%1 _2_9_ 11 -7 18 0
0157calc.bat (3/6)
NGNG%1 _3_1_ 4 2 3 3 1
%1 _3_2_ 5 1 6 1 1
%1 _3_3_ 6 0 9 1 0
%1 _3_4_ 7 -1 12 0
%1 _3_5_ 8 -2 15 0
%1 _3_6_ 9 -3 18 0
%1 _3_7_ 10 -4 21 0
%1 _3_8_ 11 -5 24 0
%1 _3_9_ 12 -6 27 0
%1 _4_0_ 4 4 0 255 1
%1 _4_1_ 5 3 4 4 1
%1 _4_2_ 6 2 8 2 1
%1 _4_3_ 7 1 12 1 1
%1 _4_4_ 8 0 16 1 0
%1 _4_5_ 9 -1 20 0
%1 _4_6_ 10 -2 24 0
%1 _4_7_ 11 -3 28 0
%1 _4_8_ 12 -4 32 0
%1 _4_9_ 13 -5 36 0
0158calc.bat (4/6)
NGNG%1 _5_1_ 6 4 5 5 1
%1 _5_2_ 7 3 10 2 1
%1 _5_3_ 8 2 15 1 1
%1 _5_4_ 9 1 20 1 1
%1 _5_5_ 10 0 25 1 0
%1 _5_6_ 11 -1 30 0
%1 _5_7_ 12 -2 35 0
%1 _5_8_ 13 -3 40 0
%1 _5_9_ 14 -4 45 0
%1 _6_0_ 6 6 0 255 1
%1 _6_1_ 7 5 6 6 1
%1 _6_2_ 8 4 12 3 1
%1 _6_3_ 9 3 18 2 1
%1 _6_4_ 10 2 24 1 1
%1 _6_5_ 11 1 30 1 1
%1 _6_6_ 12 0 36 1 0
%1 _6_7_ 13 -1 42 0
%1 _6_8_ 14 -2 48 0
%1 _6_9_ 15 -3 54 0
0159calc.bat (5/6)
NGNG%1 _7_1_ 8 6 7 7 1
%1 _7_2_ 9 5 14 3 1
%1 _7_3_ 10 4 21 2 1
%1 _7_4_ 11 3 28 1 1
%1 _7_5_ 12 2 35 1 1
%1 _7_6_ 13 1 42 1 1
%1 _7_7_ 14 0 49 1 0
%1 _7_8_ 15 -1 56 0
%1 _7_9_ 16 -2 63 0
%1 _8_0_ 8 8 0 255 1
%1 _8_1_ 9 7 8 8 1
%1 _8_2_ 10 6 16 4 1
%1 _8_3_ 11 5 24 2 1
%1 _8_4_ 12 4 32 2 1
%1 _8_5_ 13 3 40 1 1
%1 _8_6_ 14 2 48 1 1
%1 _8_7_ 15 1 56 1 1
%1 _8_8_ 16 0 64 1 0
%1 _8_9_ 17 -1 72 0
0160calc.bat (6/6)
NGNG%1 _9_1_ 10 8 9 9 1
%1 _9_2_ 11 7 18 4 1
%1 _9_3_ 12 6 27 3 1
%1 _9_4_ 13 5 36 2 1
%1 _9_5_ 14 4 45 1 1
%1 _9_6_ 15 3 54 1 1
%1 _9_7_ 16 2 63 1 1
%1 _9_8_ 17 1 72 1 1
%1 _9_9_ 18 0 81 1 0
:END
0161sample.bat
NGNG----------------------------------------------------
@echo off
set Y=0
:Yloop
set X=0
:Xloop
call calc ADD ret %Y% %X%
echo calc ADD ret %Y% %X% ret = %ret%
call calc SUB ret %Y% %X%
echo calc SUB ret %Y% %X% ret = %ret%
call calc MUL ret %Y% %X%
echo calc MUL ret %Y% %X% ret = %ret%
call calc DIV ret %Y% %X%
echo calc DIV ret %Y% %X% ret = %ret%
call calc CMP ret %Y% %X%
echo calc CMP ret %Y% %X% ret = %ret%
call calc ADD X %X% 1
if not "%X%"=="10" goto Xloop
call calc ADD Y %Y% 1
if not "%Y%"=="10" goto Yloop
----------------------------------------------------
以上、連張りスマソ
0162デフォルトの名無しさん
NGNGcmd.exeってすごいな
むむ、対抗して、dos3でも動くようにできないものか・・
0163jyanken.bat (1/2)
NGNGまだdos3で実験はしていないけど
--------------------
echo off >nul
if NOT "%1"=="" goto %1
echo じゃんけんゲーム
set win=
set lose=
>player.bat
:STA
echo goo か choki か pa と打ち込んで ctrl+z の後 enter を押してください。
copy con jyanken.POI >nul
dir jyanken.POI|find "JYANKEN" >tmp.bat
tmp.bat
:POI
set player=ERR
if %2==3 set player=グー
if %2==5 set player=チョキ
if %2==2 set player=パー
if %player%==ERR echo 入力エラー
if %player%==ERR goto STA
echo %4_ | find "0_ ">jyanken.GOO
echo %4_ | find "1_ ">>jyanken.GOO
echo %4_ | find "2_ ">>jyanken.GOO
echo %4_ | find "3_ ">jyanken.CHO
echo %4_ | find "4_" >>jyanken.CHO
echo %4_ | find "5_" >>jyanken.CHO
dir jyanken.GOO|find "JYANKEN">tmp.bat
tmp.bat
0164jyanken.bat (2/2)
NGNGset com=パー
if NOT %2==0 set com=グー
dir jyanken.CHO|find "JYANKEN">tmp.bat
tmp.bat
:CHO
if NOT %2==0 set com=チョキ
:JUDGE
echo あなた=%player% com=%com%
if %player%==%com% echo あいこでしょ!
if %player%==%com% goto STA
set jud=負け
if %player%==グー if %com%==チョキ set jud=勝ち
if %player%==チョキ if %com%==パー set jud=勝ち
if %jud%==負け set lose=★%lose%
if %jud%==勝ち set win=☆%win%
echo あなたの%jud%です!(勝ち数=%win% 負け数=%lose%)
goto STA
0165jyanken.bat (1/2 差し替え)
NGNGでも今のままだと分単位でしかcomの手が変わらないんよね。
もっとまともな乱数がほすぃ(泣)
-------------------
echo off >nul
if NOT "%1"=="" goto %1
echo じゃんけんゲーム
set win=
set lose=
>player.bat
:STA
echo goo か choki か pa と打ち込んで ctrl+z の後 enter を押してください。
copy con jyanken.POI >nul
dir jyanken.POI|find "JYANKEN" >tmp.bat
tmp.bat
:POI
set player=ERR
if %2==3 set player=グー
if %2==5 set player=チョキ
if %2==2 set player=パー
if %player%==ERR echo 入力エラー
if %player%==ERR goto STA
echo %4_ | find "0_ ">jyanken.GOO
echo %4_ | find "3_ ">>jyanken.GOO
echo %4_ | find "8_ ">>jyanken.GOO
echo %4_ | find "1_ ">jyanken.CHO
echo %4_ | find "5_" >>jyanken.CHO
echo %4_ | find "7_" >>jyanken.CHO
dir jyanken.GOO|find "JYANKEN">tmp.bat
tmp.bat
0166sample.bat (2度目の訂正)
NGNGまだ乱数生成にバグがありました。comがグーを出してこない。
以下のように4行修正してください。( " の位置が間違っている)
----------------------------------
echo %4_ | find "0_" >jyanken.GOO
echo %4_ | find "3_" >>jyanken.GOO
echo %4_ | find "8_" >>jyanken.GOO
echo %4_ | find "1_" >jyanken.CHO
あと、動作には関係ないけど以下の1行は不要
----------------------------------
>player.bat
0167デフォルトの名無しさん
NGNGw2k入れたから試してみるか
0168デフォルトの名無しさん
NGNG0169デフォルトの名無しさん
NGNG0170デフォルトの名無しさん
NGNG0171デフォルトの名無しさん
NGNG0172デフォルトの名無しさん
NGNG0173デフォルトの名無しさん
NGNGhttp://www.vector.co.jp/soft/dos/util/se023753.html
0174デフォルトの名無しさん
NGNG0175デフォルトの名無しさん
NGNG0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNG0178bated.bat (1/?)
NGNGif NOT EXIST BATED.RDY goto 1ST
if NOT "%1"=="" goto %1
set LST=0
del *.LIN
cls
echo --ラインエディタ(新規ファイル専用)--
:STA
echo [現在の行数は%LST%です]
echo コマンドと ctrl+z の後 enterを押してください (h ・・・ヘルプ)
copy BATED.RDY+con tmp.bat>nul
tmp.bat CMD
:CMD
set ST=%3
set ED=%4
if %2==h goto HELP
if %2==l goto LIST
if %2==d goto DEL
if %2==e goto EDIT
if %2==s goto SAVE
if %2==q goto END
goto STA
:LIST
if "%ST%"=="" set ST=0
if "%ED%"=="" set ED=%LST%
set Q=%ST%
set A=Q
set RET=LIST2
0179bated.bat (2/?)
NGNGif NOT EXIST %Q%.LIN goto STA
echo [%Q%行目]
type %Q%.LIN
if %Q%==%ED% goto STA
if %Q%==10 goto STA
goto ADD
:EDIT
if %LST%==10 echo これ以上行を増やせません
if %LST%==10 goto STA
if "%ST%"=="" set ST=%LST%
if %ST%==%LST% goto EDIT4
:EDIT2
set I=%LST%
set Q=%LST%
set A=Q
set RET=EDIT3
goto DEC
:EDIT3
if EXIST %Q%.LIN type %Q%.LIN>%I%.LIN
if "%Q%"=="%ST%" goto EDIT4
set I=%Q%
goto DEC
0180bated.bat (3/?)
NGNGecho ---行内容と ctrl+z の後 enterを押してください
type CON|find/v "">%ST%.LIN
if NOT EXIST %ST%.LIN goto STA
set Q=%LST%
set A=LST
set RET=STA
goto ADD
:DEL
set Q=%LST%
set A=LST
set RET=DEL1
goto DEC
if "%ST%"=="" ST=%LST%
if EXIST %ST%.LIN del %ST%.LIN>nul
set I=%ST%
set Q=%ST%
set A=Q
set RET=DEL2
goto ADD
:DEL2
if %I%==%LST% goto STA
if EXIST %Q%.LIN ren %Q%.LIN %I%.LIN
set I=%Q%
goto ADD
0181bated.bat (4/?)
NGNGif "%3"=="" echo ファイル名が指定されていません
if "%3"=="" goto STA
set Q=0
set A=Q
set RET=SAVE1
if EXIST %3 del %3
:SAVE1
if EXIST %Q%.LIN type %Q%.LIN>>%3
if %Q%==9 goto SAVE2
goto ADD
:SAVE2
echo ファイル[%3]に保存しました
goto STA
:ADD
if "%Q%"=="10" set %A%=0
if "%Q%"=="9" set %A%=10
if "%Q%"=="8" set %A%=9
if "%Q%"=="7" set %A%=8
if "%Q%"=="6" set %A%=7
if "%Q%"=="5" set %A%=6
if "%Q%"=="4" set %A%=5
if "%Q%"=="3" set %A%=4
if "%Q%"=="2" set %A%=3
if "%Q%"=="1" set %A%=2
if "%Q%"=="0" set %A%=1
if "%Q%"=="" set %A%=1
goto %RET%
0182bated.bat (5/?)
NGNGif "%Q%"=="" set %A%=0
if "%Q%"=="1" set %A%=0
if "%Q%"=="2" set %A%=1
if "%Q%"=="3" set %A%=2
if "%Q%"=="4" set %A%=3
if "%Q%"=="5" set %A%=4
if "%Q%"=="6" set %A%=5
if "%Q%"=="7" set %A%=6
if "%Q%"=="8" set %A%=7
if "%Q%"=="9" set %A%=8
if "%Q%"=="10" set %A%=9
goto %RET%
:1ST
cls
echo 初回起動なので、必要な準備を行います。
echo "BATED %%1 " と入力して ctrl+z の後 enter を押してください。
echo ("は入力しません。%%1の後のスペース1つを忘れないで下さい。)
copy con BATED.RDY>nul
dir BATED.RDY|find "RDY"|find/v "\">tmp.bat
tmp.bat
:RDY
if %2==9 BATED
echo もう一度正確にお願いします。
goto 1ST
0183bated.bat (6/6 最終)
NGNGecho ---コマンド一覧表(#は行番号 0〜9)---
echo l # # ・・・行表示
echo d # ・・・行削除
echo e # ・・・行入力・挿入(#省略時は最終行として追加)
echo s ファイル名・・・ファイル保存
echo q ・・・終了
goto STA
:END
del *.LIN>nul
del *.tmp>nul
set ST=
set ED=
set LST=
set I=
set Q=
set A=
0184bated.bat
NGNG基本的なコマンドしか使っていないので、dos3にも対応。
新規ファイルの編集と保存だけができます
既存ファイルの読み込みは不可
0185デフォルトの名無しさん
NGNGこのスレ。
0186bated.bat (訂正1度目)
NGNG以下の部分を差し替えてくださいn(_ _)n
-----------------------
:DEL
set Q=%LST%
set A=LST
set RET=DEL1
goto DEC
:DEL1
if "%ST%"=="" set ST=%LST%
if EXIST %ST%.LIN del %ST%.LIN>nul
set I=%ST%
set Q=%ST%
set A=Q
set RET=DEL2
goto ADD
:DEL2
if %I%==%LST% goto STA
if EXIST %Q%.LIN ren %Q%.LIN %I%.LIN
set I=%Q%
goto ADD
:SAVE
0187デフォルトの名無しさん
NGNG>pifファイルを使わずに全画面表示で実行させる方法ありますか?
\windows\command にある start.exe で可能。
オプションなしで実行すればヘルプが出ます。
0189デフォルトの名無しさん
NGNG:: 9x/meでdos/vしか無理
echo [=18h
echo IEでコピペ
pause >nul
exit
0190デフォルトの名無しさん
NGNGでけたーヽ(゚∀゚)メ(゚∀゚)メ(゚∀゚)ノ
ありが�d!
0191デフォルトの名無しさん
NGNG何か他にもないの? Win専用
0192デフォルトの名無しさん
NGNGこんなの作った。DOS窓をAlt+Enterで全画面にしてからお願い
@echo off
rem 全画面表示がうまくいかないのでコメントアウト
rem ↓どなたかうまく行くようにしてくんなまし
rem echo [=18h
echo [f[;37;44m[K
echo [K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K
echo [K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K[1B[K
echo [10;37f[;34;47m Windows [1;37;44m
echo [1B[6C例外 06 が 0000:00000017 で発生しました。
echo [6C現在のアプリケーションを終了します。
echo [1B[6C* どれかキーを押すと、現在のアプリケーションは強制終了されます。
echo [6C* Ctrl+Alt+Del キーをもう一度押すと、コンピュータが再起動します。
echo [9Cアプリケーションで保存していないデータは全て失われます。
echo [1B[28Cどれかキーを押すと, 続行します.
echo [4B
pause >nul
0193デフォルトの名無しさん
NGNGそれとWindowsフォルダ内のMsdosdrv.txtにいろいろ載ってるから読んでみ
0194デフォルトの名無しさん
NGNG0195デフォルトの名無しさん
NGNG0196デフォルトの名無しさん
NGNG""で括れば一応表示されるようだが""も表示される
0197デフォルトの名無しさん
NGNGcmd.exeならecho ^>。command.comではできないような気がする。
0198デフォルトの名無しさん
NGNG確かdos3は>>>で出来たよ
dos5以降ではできない
dos4は不明
0199デフォルトの名無しさん
NGNG0200デフォルトの名無しさん
NGNGプログラム書けんがな。
0201デフォルトの名無しさん
NGNG0202デフォルトの名無しさん
NGNGまぁ IF, FOR, GOTO があればフローだけなら根性で書けるかもしれんが。
外部コマンド類は追加しないと標準搭載分だけじゃきつくね?
0203デフォルトの名無しさん
NGNGCALLを忘れてもらっては困る。
> 外部コマンド類は追加しないと標準搭載分だけじゃきつくね?
それはUnixのシェルでも同じだ。
0204reboot.bat
NGNG外部コマンド追加!(NEC-PC98xx専用)
@echo エLヘ!>reboot.com
@reboot.com
でもこういうのって無粋な気がするのよねぇ・・
0205204
NGNG203・・×
202・・○
0206デフォルトの名無しさん
NGNGそれより、間接参照もどきが使える点で、かなり救われているよね。
%の変数類は一旦展開されて、それから1行として実行されるので、
VBのByRefとか、C++のバーチャル関数みたいな事も何気に可能。
universal.bat
--------------
%1 %2
%4 %5
main.bat
--------------
if NOT "%1"=="" goto LABEL
echo テスト1
universal.bat echo テスト2 main.bat LABEL
:LABEL
echo テスト3
0207デフォルトの名無しさん
NGNGuniversal.bat
--------------
%1 %2
%4 %5× → %3 %4○
0208デフォルトの名無しさん
NGNGこの超DQN仕様はなんなんだよ。
0209block.bat
NGNGCLS
ECHO [1C[1C[1B[1B[s
CLS
SET BAK=|SET BX=|SET BY=|SET XF=|SET YF=[1B|TYPE X.TXT
:FOR
SET BX=%BX%%XF%|SET BY=%BY%%YF%|ECHO [u%BAK% [u%BX%%XF%%BY%%YF%o
SET BAK=%BX%%BY%|IF NOT "%BX%" == "" GOTO NXR
SET XF=|ECHO
:NXR
IF NOT "%BX%" == "" GOTO NXL
SET XF=|SET BX=|ECHO
:NXL
IF "%BY%" == "[1B[1B[1B[1B[1B[1B[1B[1B[1B[1B" GOTO OUT
IF "%BX%" == "" GOTO NYD
IF "%BX%" == "" GOTO NYD
IF NOT "%BY%" == "[1B[1B[1B[1B[1B" GOTO NYD
SET YF=[1A|ECHO
:NYD
IF NOT "%BY%" == "[1B[1B[1B[1B[1B[1A[1A[1A[1A[1A" GOTO FOR
SET YF=[1B|SET BY=|ECHO
GOTO FOR
:OUT
GOTO FOR|SET BY=|ECHO [u%BAK%o[u%BAK% [u%BAK%o[u%BAK% [u%BAK%o[u%BAK%
0210block.bat (コピペ失敗やり直し)
NGNGCLS
ECHO [1C[1C[1B[1B[s
CLS
SET BAK=|SET BX=|SET BY=|SET XF=|SET YF=[1B|TYPE BLOCK.TXT
:FOR
SET BX=%BX%%XF%|SET BY=%BY%%YF%|ECHO [u%BAK% [u%BX%%XF%%BY%%YF%o
SET BAK=%BX%%BY%|IF NOT "%BX%" == "" GOTO NXR
SET XF=|ECHO
:NXR
IF NOT "%BX%" == "" GOTO NXL
SET XF=|SET BX=|ECHO
:NXL
IF "%BY%" == "[1B[1B[1B[1B[1B[1B[1B[1B[1B[1B" GOTO OUT
IF "%BX%" == "" GOTO NYD
IF "%BX%" == "" GOTO NYD
IF NOT "%BY%" == "[1B[1B[1B[1B[1B" GOTO NYD
SET YF=[1A|ECHO
:NYD
IF NOT "%BY%" == "[1B[1B[1B[1B[1B[1A[1A[1A[1A[1A" GOTO FOR
SET YF=[1B|SET BY=|ECHO
GOTO FOR
:OUT
GOTO FOR|SET BY=|ECHO [u%BAK%o[u%BAK% [u%BAK%o[u%BAK% [u%BAK%o[u%BAK%
0211コピペ失敗(|||;´Д`)
NGNG0212デフォルトの名無しさん
NGNGとか汁
0214デフォルトの名無しさん
NGNG9x/Me PC-AT/PC-98
esc=
esc[0J:カーソル位置から下の部分クリア。0は省略可
esc[1J:カーソル位置から上の部分クリア
esc[2J:全体をクリア。カーソルは左上の位置に移動
esc[0K:カーソルの位置から行の右端までクリア。0省略可
esc[1K:カーソルの位置から行の左端までクリア
esc[2K:行クリア
esc[nM:カーソル位置からn行削除して下の行をつめる。1行だけの場合省略可
esc[nL:カーソル位置からn行削除して下の行をつめる。1行だけの場合省略可
esc D:カーソルが1行下に移動。カーソルが一番下にある場合スクロールアップ
esc E:カーソルが1行下の左に移動。カーソルが一番下にある場合スクロールアップ
esc M:カーソルが1行上に移動。カーソルが一番下にある場合スクロールダウン
esc[6n:カーソル位置のconによる呼び出し
esc[;8mesc"[>5hesc"esc[2Desc[m:カーソル消去(カーソルが左端の場合のみ)
esc[;8mesc"[>5lesc"esc[2Desc[m:カーソル復帰(カーソルが左端の場合のみ)
0215デフォルトの名無しさん
NGNG98の場合、背景色と前景色の同時出力ができない
ATの場合、アンダーラインが使用できない。コートページが932(日本語)だと点滅できない
最大化のesc[=nhは、98では使用できない
最大化するとATの場合、背景色と前景色の同時出力ができない。
98とATの互換性を保つため、[の後に;をつける事をしたほうがいい。esc[;nm;
0216デフォルトの名無しさん
NGNG○ esc[nL:カーソル位置からn行空白行を挿入。1行だけの場合省略可
0217デフォルトの名無しさん
NGNG=↓、=四角の中に×
=黒点、=太陽みたいなマーク
=┼、=上下に伸びた矢印(↕)
=濃いアミカケ(▓?)
〜、=┴┬┤├
=薄いアミカケ(░?)
〜=↲↑|→←
0218デフォルトの名無しさん
NGNG×░ ○░
0219デフォルトの名無しさん
NGNG0220デフォルトの名無しさん
NGNGBAT/CMDは無理っぽいが。誰か詳しく希望
0221デフォルトの名無しさん
NGNG0222デフォルトの名無しさん
NGNGecho ついか>>text.txt
0223デフォルトの名無しさん
NGNGtype con>ファイル名
最後はCtrl+ZのあとにEnter
0224デフォルトの名無しさん
NGNG0225デフォルトの名無しさん
NGNG> Cコンパイラだったら
意味不明
0226221
NGNG>>223
すげ!簡単そうですね。
次のような事をプログラムを組んでやってたのを、バッチファイルでできるならしたいです。
D&Dされたファイル1のファイル名をファイル2の内容に書いて、
そのファイル2の名前を「ファイル1のファイル名」+「.avs」として出力。
こんなことをしたいのですが、バッチファイルでできそうですか?
0227デフォルトの名無しさん
NGNGecho %2 > %1.avs
0228デフォルトの名無しさん
NGNG> D&Dされたファイル1のファイル名をファイル2の内容に書いて、
> そのファイル2の名前を「ファイル1のファイル名」+「.avs」として出力。
意味がわからん。
0229221
NGNGすげー!みじけー!っと思ったけどうまくできなかったです。
>>228
すいません。
バッチファイル A.bat
ファイル名 内容
ファイル1 aaa.txt
ファイル2 aaa.txt.avs(aaa.avsでもいい) F:\aaa.txt(フルパス)
ファイル1をA.batにD&Dすると、ファイル2ができる、そんなA.batが作りたいです。
0230221
NGNGこれでできました。
0231デフォルトの名無しさん
NGNGとりあえずバッチファイルでできる。
NTならファイル2のファイル名はaaa.avsにできるが
9xはaaa.txt.avsじゃないといけないかもしれない。
D&Dに複数のファイルを指定できるならforやshiftを使わなきゃいけない。
とりあえず単一のファイルでaaa.txt.avsとして出力するバッチファイルは
echo %1 > %1.avs
あとは少し自分で考えてみれ。Windowsのヘルプやコマンド名 /?でヘルプが見れるから。
と書いている間に>>230というレスをされた。シクシク
0233デフォルトの名無しさん
NGNGとりあえずもちっと日本語を勉強汁
0234デフォルトの名無しさん
NGNG%~t1 は 03/03/10 17:47 というふうになりますが、
これを 03.03.10 とするにはどうすればよいでしょうか?
0235221
NGNG書き直します。
%~t1の内容をバッチファイル内で編集して
03/03/10 17:47
を
03.03.10
にしたいです。
それをファイル名につけるのですが、
ファイル名のつけ方や新しい変数の設定や代入はわかるのですが、
%~t1の中の前から8文字を取り出し、/を削除する方法はどうすればいいでしょうか?
0236221
NGNG0237221
NGNG%~t1の中の前から8文字を取り出し、/を . に置換する方法はどうすればいいでしょうか?
0238for221.bat (文字列変換)
NGNG『for221.bat 03/03/10』で、『03.03.10』を出力しまつ。
---------
echo off
if "%1"=="CMD" goto %2
for221 CMD STA %1 %2
:STA
set work=%3|set cnt=|set stk=|set ans=|set sep=/|set chg=.
:LOOP1
set a=0|set RET=LOOP2
:LOOP2
echo for221 CMD MATCH _%work% |find "_%stk%%a%" >tmp.bat
echo for221 CMD NEXT >>tmp.bat
tmp.bat
:NEXT
set q=%a%|for221 CMD SFT 0 1 2 3 4 5 6 7 8 9 10
:MATCH
set stk=%stk%%a%|set ans=%ans%%a%|set cnt=%cnt%o
if "%cnt%"=="oo" goto SS|if "%cnt%"=="oooo" goto SS|if "%cnt%"=="oooooo" goto END
goto LOOP2
:SS
set stk=%stk%%sep%|set ans=%ans%%chg%
goto LOOP1
:SFT
shift|if NOT %2==%q% goto SFT|set a=%3|if %2==%q% goto %RET%
:END
echo %ans%
0240デフォルトの名無しさん
NGNGの中身をdeleteするバッチが欲しいんですが。
ソースコードを下さい、お願いします。
0241デフォルトの名無しさん
NGNGスレ違い。
ここは「バッチファイル * プ ロ グ ラ ミ ン グ * 質問スレ」です。
0242デフォルトの名無しさん
NGNGNT系だろ? だったら%ENV:~0,8%で前から8文字を取り出せる。
ちなみに %ENV:~1,8% だと1文字目から8文字
%ENV:~-8% だと後ろから8文字
さらに %ENV:/=.% で/を.に変換できる
0243デフォルトの名無しさん
NGNG中味だけ全部消したいんだったら
copy nul kakikomi.txt
copy nul cookies.txt
0244デフォルトの名無しさん
NGNG>243
copy nul パス名\kakikomi.txt
としましたが構文が不正です。となってしまいました。
どこがマズいのでしょうか?
0245デフォルトの名無しさん
NGNG0246240
NGNGwinXP HomeEditionです。
パスが長すぎとかフォルダ名に空白がある(my document)とかが問題
なのでしょうか?
0247デフォルトの名無しさん
NGNGです。"でくくれ。あと悩んだらcopy /?を実行しろ。
0248240
NGNG0251デフォルトの名無しさん
NGNG//is-it-true.org/nt/utips/utips181.shtml
command.comのショートカットをどこでもいいから作成する
CONFIG.NTの複製ANSI.NT(ここではANSI.NTとする)を作成する
そのANSI.NTにこう付け加える
dosonly
device=%SystemRoot%\system32\ansi.sys
command.comショートカットのプロパティを開きプログラムタブの詳細設定を開く
CONFIGのファイル名にansi.ntファイルを指定する
実行時のディレクトリと動かしたいコマンドライン(バッチファイル)を指定する
ショートカットを実行すればansi.sysが利用できる
0252デフォルトの名無しさん
NGNGバッチファイル名を与えるとそのショートカットを作るバッチきぼん
0253デフォルトの名無しさん
NGNGバッチでやる仕事か?WSHで出来そうだが
0254デフォルトの名無しさん
NGNG0255デフォルトの名無しさん
NGNG0256デフォルトの名無しさん
NGNG0257デフォルトの名無しさん
NGNG0258デフォルトの名無しさん
NGNGこっちのが
echo|find "a">file名
0259envsize.bat
NGNGげ、じゃあ、これが使えない・・(command /e:#### の値を決めるのに便利なツール)
----------------------
echo off
if NOT "%1"=="" goto 2
set >envsize.tmp
dir envsize.tmp|find "TMP"|find/v "\">tmp.bat
tmp.bat
:2
echo 現在環境変数を、約%2バイト使用しています.
del envsize.tmp>nul
del tmp.bat>nul
0260デフォルトの名無しさん
NGNGcommand /cでコマンドを実行させると大丈夫みたいです
0261113
NGNG0262デフォルトの名無しさん
NGNG0263デフォルトの名無しさん
NGNG0264保守age
NGNG(って、ここ質問スレなんだよな・・)
0265デフォルトの名無しさん
NGNG0267デフォルトの名無しさん
NGNGもう公開はしてないようだ。
http://www.google.co.jp/search?hl=ja&q=%82%D0%82%C6%82%E8%82%B5%82%E8%82%C6%82%E8
というわけでしりとり期待してます>264
0268デフォルトの名無しさん
NGNGキーを押すだけで、連続的にフォルダ作成&コピーできるようにしたいのですが。
BASICとBATのチャンポン書式で書くとこんな感じです。
for i=1001 to 2000
MD str(i) ' フォルダ作成
CD str(i) ' フォルダ移動
xcopy /s f:\*.* h:
CD ..
pause
next
BATオンリーでやるにはどうしたらいいのでしょうか?
BUとか使ってもいいです。
0269デフォルトの名無しさん
NGNG0270for268.bat
NGNG------------------------------
@echo off
if NOT "%1"=="" goto %1
if NOT EXIST FOR268.1BT goto 1ST
set RET=INIT|for268 MSG INIT 1001まで、激しく準備中...(ひたすら待ってね)>FOR268.CNT
:INIT
if NOT "%i%"=="1001" goto COUNTUP
find "-%i%-"<FOR268.DAT>tmp.bat
tmp.bat for268 JOB2
:JOB2
MD %2
CD %2
xcopy/s f:\*.* h:
CD ..
pause
goto END|set RET=JOB|if NOT "%i%"=="2000" goto COUNTUP
:COUNTUP
type FOR268.1BT>>FOR268.CNT
dir FOR268.CNT|find "CNT"|find /v "\">tmp.bat
tmp.bat
:CNT
goto %RET%|set i=%2|if %2==1 set i=1%3|if %2==2 set i=2%3
:1ST
echo 初回なので半角で"@"を一文字入力し、 ctrl+z の後 enter を押してください。
copy con FOR268.1BT|dir FOR268.1BT|find "1BT"|find /v "\">tmp.bat
tmp.bat
:1BT
if %2==1 for268|if NOT %2==1 for268 MSG 1ST 入力エラーです。もう一度。
:MSG
goto %2|echo %3 %4 %5 %6 %7 %8 %9
:END
0271for268.DAT
NGNGデータ配列は、こういう風にファイルに書けばOK。
プログラムをギリギリ1レスに詰め込んだので、エラー処理なし。
ちゃんと2000まで登録しないと無くなった時点でエラーが出るよ。
------------------------------
%1 %2 c:\フォルダ名1 -1001-
%1 %2 c:\フォルダ名2 -1002-
%1 %2 c:\フォルダ名3 -1003-
%1 %2 c:\フォルダ名4 -1004-
%1 %2 c:\フォルダ名5 -1005-
%1 %2 c:\フォルダ名6 -1006-
0273270-272
NGNG1レスに詰め込もうとして、うっかり消しちゃった。
下の位置に :JOB の行を追加してください。n(_ _)n
if NOT "%i%"=="1001" goto COUNTUP
:JOB
find "-%i%-"<FOR268.DAT>tmp.bat
0274for268.bat (全修正)
NGNG>>270-273は全部捨ててください。
-----------------------------------------------
@echo off
if NOT "%1"=="" goto %1
if NOT EXIST FOR268.1BT goto 1ST
set RET=INIT|for268 MSG INIT 1001まで、激しく準備中...(ひたすら待ってね)>FOR268.CNT
:INIT
if NOT "%i%"=="1001" goto COUNTUP
:JOB
MD %i%
CD %i%
xcopy/s f:\*.* h:
CD ..
pause
goto END|set RET=JOB|if NOT "%i%"=="2000" goto COUNTUP
:COUNTUP
type FOR268.1BT>>FOR268.CNT
dir FOR268.CNT|find "CNT"|find /v "\">tmp.bat
tmp.bat
:CNT
goto %RET%|set i=%2|if %2==1 set i=1%3|if %2==2 set i=2%3
:1ST
echo 初回なので半角で"@"を一文字入力し、 ctrl+z の後 enter を押してください。
copy con FOR268.1BT|dir FOR268.1BT|find "1BT"|find /v "\">tmp.bat
tmp.bat
:1BT
if %2==1 for268|if NOT %2==1 for268 MSG 1ST 入力エラーです。もう一度。
:MSG
goto %2|echo %3 %4 %5 %6 %7 %8 %9
:END
0275268
NGNGありがとうございます。うるうる
ずいぶん長いソースになるんですね。
あとでやってみます。
フォルダ名はいちおう連番にしておいて、あとで改名するつもりでした。
なので、配列を使うほうのソースも参考になります。
どうしようかと思ってましたが、質問してよかったです。
DOS時代の大量のFDを塩漬けしたい人には役に立つと思います。
0276270
NGNGなんと、実用でしたか。
そういう目的で使うんでしたら、2度目以降の実行では下のように1行を追加すると
再起動でもフォルダ名の連番がリセットされず、しかも高速で始動できます。
if NOT EXIST FOR268.1BT goto 1ST
set RET=INIT|for268 MSG INIT 1001まで、激しく準備中...(ひたすら待ってね)>FOR268.CNT
↓↓↓
if NOT EXIST FOR268.1BT goto 1ST
set RET=JOB|goto COUNTUP
set RET=INIT|for268 MSG INIT 1001まで、激しく準備中...(ひたすら待ってね)>FOR268.CNT
0277デフォルトの名無しさん
NGNG0278デフォルトの名無しさん
NGNGをバッチファイルでできますか?
0279デフォルトの名無しさん
NGNGperl? 意味がわからないのでなんとも。
0280デフォルトの名無しさん
NGNG@SET HOGE=hogehoge
@ECHO 0-%HOGE%
@SET HOGE=
@ECHO 1-%HOGE%
PAUSE
0281デフォルトの名無しさん
NGNG$HOGE = `hogehoge`;
0282デフォルトの名無しさん
NGNG0283デフォルトの名無しさん
NGNGその分野はバッチではなくWSHの方かも
0284デフォルトの名無しさん
NGNGforでできます。
0285デフォルトの名無しさん
NGNGnotepad /p [textfile]
write /p [textfile]
copy textfile.txt \\machine\printer
0286デフォルトの名無しさん
NGNGMS-DOS時代のプリンタなら、こういう事も出来ましたね・・・
でも今のWindows用プリンタではだめかも。(試したことない)
copy textfile.txt prn
type textfile.txt prn
#prnというのは、nul, con, aux等と同じく特殊デバイス名
0287デフォルトの名無しさん
NGNG○ type textfile.txt > prn
0288デフォルトの名無しさん
NGNG会社で時々重宝してる。もしかしたらcmd.exe(NTのcommand.com?)だけかも。
route 2>&1 | more
route >hoge.txt 2>&1
0289285
NGNGHKEY_CURRENT_USER\software\Microsoft\Notepad
の
fSaveSettings
をDWord型でOn(1にしる!)にしとくとNotepadの印刷時マージンやらヘッダフッタ設定を記憶させておけるってやつ。
簡単にテキストファイルを印刷するには十分かな。
0290デフォルトの名無しさん
NGNG0291デフォルトの名無しさん
NGNG> for /f %I in ('cd') do @echo %I
D:\wrk
> rem カレントドライブを分離
> for /f %I in ("D:\wrk") do @echo %~dI
D:
%~I - すべての引用句 (") を削除して、I を展開します。
%~fI - %I を完全修飾パス名に展開します。
%~dI - %I をドライブ文字だけに展開します。
%~pI - %I をパス名だけに展開します。
%~nI - %I をファイル名だけに展開します。
%~xI - %I をファイル拡張子だけに展開します。
%~sI - 展開されたパスは短い名前だけを含みます。
%~aI - %I をファイルの属性に展開します。
%~tI - %I ファイルの日付/時刻に展開します。
%~zI - %I ファイルのサイズに展開します。
%~$PATH:I - PATH 環境変数に指定されているディレクトリを
検索し、最初に見つかった完全修飾名に %I を
展開します。
環境変数名が定義されていない場合、または検索
してもファイルが見つからなかった場合は、この
修飾子を指定すると空の文字列に展開されます。
修飾子を組み合わせて、複合結果を得ることもできます:
%~dpI - %I をドライブ文字とパスだけに展開します。
%~nxI - %I をファイル名と拡張子だけに展開します。
%~fsI - %I を完全なパスと短い名前だけに展開します。
%~dp$PATH:i - PATH 環境変数に指定されているディレクトリを
検索して %I を探し、最初に見つかったファイル
のドライブ文字とパスだけに展開します。
%~ftzaI - %I を DIR コマンドの出力行のように展開します
0292デフォルトの名無しさん
NGNGcmd.exeだけのはず。
0293デフォルトの名無しさん
NGNG0294デフォルトの名無しさん
NGNGBatchScript.net
0295デフォルトの名無しさん
NGNGマジかよ!?
>>290
>for /f %i in ('hogehoge') do @set HOGE=%i
/fというのがcommand.comではできんかった。cmd.exe専用でしょうか?
/f無しでやったら、%HOGE%には'hogehoge'が入りました。
0296デフォルトの名無しさん
NGNGそのへんの拡張はすべてcmd.exeのみ。
0297山崎渉
NGNG0298デフォルトの名無しさん
NGNGネタ?
0299デフォルトの名無しさん
NGNG(;´Д`)ハァハァ
0300デフォルトの名無しさん
NGNG0301山崎渉
NGNG( ^^ )< ぬるぽ(^^)
0302山崎渉
NGNG( ^^ )< ぬるぽ(^^)
0303デフォルトの名無しさん
NGNG0304デフォルトの名無しさん
NGNGさんざん既出だと思うが
ttp://www.command.com/
こんなサイトがあったとは・・・
0305デフォルトの名無しさん
NGNG0306デフォルトの名無しさん
NGNGあるかな。
0307デフォルトの名無しさん
NGNGbu.exeがあるじゃないか。
0308デフォルトの名無しさん
NGNG自動的に作るバッチを作りたいと思います。
例えばこんな風です。 => \20030501-2300
ご存知の方、その方法を教えてください。
尚、当方のOSはWindows2000です。
0309デフォルトの名無しさん
NGNGGUID?
0310デフォルトの名無しさん
NGNGその後、色々調べた結果、次の様にしたのですが、時間が一桁の場合(例;午前1時など)、時間の頭が
ブランクになってしまいます。
ゼロで埋める方法は無いでしょうか?
例) 午前1時のとき: 2003-0501_ 10005
★こうしたい => 2003-0501_010005
ソース
set yyyymmdd=%date:/=%
set hhmmss=%time::=%
set dirname=%yyyymmdd:~0,4%-%yyyymmdd:~4,8%_%hhmmss:~0,6%
0311デフォルトの名無しさん
NGNGset hhmmss=%hhmmss: =0%
0312デフォルトの名無しさん
NGNG0313デフォルトの名無しさん
NGNG0314デフォルトの名無しさん
NGNG*省略
/A 属性により削除するファイルを選択します。
属性 R 読み取り専用 S システム ファイル
H 隠しファイル A アーカイブ
- その属性以外
の/A パラメータの書式はどのように書くのでしょうか?
DEL /P /Q /A : -S *.*
か
DEL /P /Q /A : S- *.*
でうまくいかないみたいなので。Windows2000利用しています。
このようなかんじでCache削除をおこないたいのですが。Cookiesファイルとかを。
\Cookiesのindex.datファイルがSystem関係らしくてひとつのぞいて削除したいのですけれども。
rem Delete.bat
cd c:\
cd "C:\Documents and Settings\Administrator\Local Settings\Temporary Internet Files"
del /F /Q *.*
cd "C:\Documents and Settings\Administrator\Cookies"
del /F /Q /A : S- *.*
EXIT
0315デフォルトの名無しさん
NGNG自己レス
http://pc2.2ch.net/test/read.cgi/pcqa/1051866821/l50
の90-92あたりで別に回答をいただいたのでこちらは終わりにします。ありがとうございました。
0316デフォルトの名無しさん
NGNG0317デフォルトの名無しさん
NGNGバッチファイルに上の文を書いて、
renameうっちぃ_.bat
というファイルネームでsendToフォルダに置いて、リネームしてます。
複数のファイルを同時にリネームできるようにするには
どうすればいいでしょうか?
0318デフォルトの名無しさん
NGNG0319デフォルトの名無しさん
NGNG0320デフォルトの名無しさん
NGNGWSHを使うほうがいいんじゃないの?
0321デフォルトの名無しさん
NGNG0322デフォルトの名無しさん
NGNGこのコマンドラインでcvsroot.rarが出来るのですが、
このcvsrootの部分を
cvsroot[yyyymmdd]という今日の日付にしたいのです。
どのようにすれば出来ますか?
0323デフォルトの名無しさん
NGNGhttp://homepage3.nifty.com/coco-nut/
0324322
NGNG20%date:~4%で
2003/05/08という文字列が取れました。
ここから/を消したいのですがどうすればいいですか?
0325322
NGNG0327デフォルトの名無しさん
NGNGif "%1" == "" goto :end
rename ...
shift
goto :loop
:end
0329317
NGNG@set ENV=1
:loop
if "%1" == "" goto :end
rename %1 %ENV%%~x1
@set ENV=%ENV%+1
shift
goto :loop
:end
だめなところをおしえてください。
0330デフォルトの名無しさん
NGNGちゃんと書かないところかな。
0331317
NGNGいくつかのファイルをD&Dする。
拡張子はそのままに上から順番にファイル名を、
1.txt
2.txt
3.txt
としたい。
329のバッチでやると、
1.txt
1+1.txt
1+1+1.txt
となります。
お助けを〜。
0332デフォルトの名無しさん
NGNGちゃんと読んだ? すぐ見つかると思うんだが。
0334デフォルトの名無しさん
NGNG0336デフォルトの名無しさん
NGNGNT系じゃないヒト?かな?
for で回したらイカンのかな?
0337336
NGNG0339317
NGNGshift
rename %1 2%~x1
shift
rename %1 3%~x1
shift
rename %1 4%~x1
shift
rename %1 5%~x1
shift
rename %1 6%~x1
shift
rename %1 7%~x1
shift
rename %1 8%~x1
shift
rename %1 9%~x1
shift
こうしたらうまくいきました。
ありがとうございました。
0340デフォルトの名無しさん
NGNGset /a
cmd.exeだよな?
0342330,332,334,340
NGNG0343デフォルトの名無しさん
NGNG0344デフォルトの名無しさん
NGNGと
d:\program files\BBB\BBB.exe
を同時に起動するにはどうすればよろしいの?
0345デフォルトの名無しさん
NGNGCUIプログラムを同一ウィンドウで、はダメだが。
0346デフォルトの名無しさん
NGNGいくつかのバッチファイルを連続して呼び出している
バッチファイルがあります。呼び出される側でログとして
echoで色々と出力しているのですが、ログをパッと
見た時に処理の分け目がわかりにくくて・・・・
NT4.0で使ってます。
0347デフォルトの名無しさん
NGNGecho.
などで空行が出ます。
0348デフォルトの名無しさん
NGNG0349デフォルトの名無しさん
NGNGUNIX-like tools
http://www.vector.co.jp/soft/win95/util/se010511.html
の tee.exe を使えばできます。
0350346
NGNGThanks!
ただ、echo=だと
ECHO は <ON> です。
とかいわれてしまいました。
echo.
なら、無問題です。
0352デフォルトの名無しさん
NGNGcmd.exeではecho=も使えるとは知らなかった。
そもそも質問するときに環境を書かない>>346が悪い。
0353デフォルトの名無しさん
NGNG0354デフォルトの名無しさん
NGNG同じくecho\でもいけた。
cmd.exeでしか試してないが。
0355デフォルトの名無しさん
NGNG区切りとみなすっぽい。
0356デフォルトの名無しさん
NGNG> NT4.0で使ってます。
思いっきり書いてあるが、、、、
0357デフォルトの名無しさん
NGNG正直、スマンかった。
0358デフォルトの名無しさん
NGNGできんかのぅ?
0359デフォルトの名無しさん
NGNG0360デフォルトの名無しさん
NGNGどういうことをしたいの?
0361山崎渉
NGNGピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。
=〔~∪ ̄ ̄〕
= ◎――◎ 山崎渉
0362デフォルトの名無しさん
NGNGもう6月じゃん
0363デフォルトの名無しさん
NGNGJavaScriptからShellでよびだしたらどう?
0364デフォルトの名無しさん
NGNGfunction a(){
hoge=new ActiveXObject("WScript.Shell");
hoge.run("command.com /K echo HOGE");
}onLoad=document.write("<input type=button value=COMMAND起動 onclick=a()>");
//--></script>
こういうことをお望み?
当然だがJScriptだからネスケでは使えない
0365デフォルトの名無しさん
NGNG0366デフォルトの名無しさん
NGNGecho start /low cscript.exe WMCmd.vbs -input %1 -output %~d1%~p1%~n1.wmv -v_mode 2 -v_quality 75 -pixelratio 10 11 -v_preproc 16 -v_performance 100 -a_mode 2 -a_setting Q90_48_2 >f:\wmv9.bat
上の段の
「cd C:\Program Files\Windows Media Components\Encoder」
の部分がwmv9.batに書き込まれないのですが、なぜですか?
0367デフォルトの名無しさん
NGNG>を>>にしたらいいだけでした。
0368デフォルトの名無しさん
NGNG0369t-akiyama
NGNGこのPSPは、新規格UMD(ユニバーサルメディアディスク)というディスクを利用しており、そのサイズは直径6cmととても小さい(CDの半分程度)。 容量は1.8GBとなっている。
画面は4.5インチのTFT液晶で、480px x 272px(16:9)。MPEG4の再生やポリゴンも表示可能。外部端子として、USB2.0とメモリースティックコネクタが用意されているという。
この際、スク・エニもGBAからPSPに乗り換えたらどうでしょう。スク・エニの場合、PSPの方が実力を出しやすいような気がするんですが。
任天堂が携帯ゲーム機で圧倒的なシェアをもってるなら、スク・エニがそれを崩してみるのもおもしろいですし。かつて、PS人気の引き金となったFF7のように。
0370デフォルトの名無しさん
NGNG0371デフォルトの名無しさん
NGNG0372デフォルトの名無しさん
NGNGイメージで例えると
バッチ起動
IPを入力して下さい
>*.*.*.*
ホスト名を入力して下さい
>hosuto
hostsファイルへ書き出し
みたいな感じで
やっぱ別途ソフト使わないと無理ですか?
0373デフォルトの名無しさん
NGNG> テキストのある部分に
ある部分によって難易度がかなり変わると思うが出来そうな気がする。
0374デフォルトの名無しさん
NGNGまぁ極単純にいうと
ファイルの中身:
IP = ipadoresu
HOST = hosuto
で、ipadoresuとhosutoにバッチから入力するみたいな
あとwin2kって書いたけどWIN98素DOSの間違いです
0375デフォルトの名無しさん
NGNG例えば、
------------------------------------
type 123.txt > abc.txt
type 456.txt >> abc.txt
type 789.txt >> abc.txt
------------------------------------
みたいなバッチをかいたとき、実行画面を見たら、
C:\>type 123.txt 1> abc.txt
C:\>type 456.txt 1>> abc.txt
C:\>type 789.txt 1>> abc.txt
^^^^
みたいな感じになるんだよ。
0376デフォルトの名無しさん
NGNG1> = 標準出力
2> = 標準エラー出力
ttp://homepage2.nifty.com/winfaq/c/hints.html#548
0377デフォルトの名無しさん
NGNGcmd.exeならset /pでできるが、command.comじゃどうだろなぁ。
0378名無しさん@お腹いっぱい。
NGNG環境が許すならWSH(VBS等)とかでやった方が早いかも
お前ら、wsh使ってますか? Part2
http://pc2.2ch.net/test/read.cgi/win/1022248379/l50
0379デフォルトの名無しさん
NGNGfind /v で該当行を削除してから >> で最終行として足す事は可能です。
但し、行位置を変えずに編集するのは非常に難しいです。
1 IP =
2 HOST =
というふうに固定の行番号が入っているなら後からsortコマンドで誤魔化せるけど。
0380375
NGNGそうだったのか。産休。でも、見た目に気になるから、表示しないようにできないのかな。
0381デフォルトの名無しさん
NGNGだからシェルスクリプトと違ってCGIスクリプトを書くのに使えないって聞いたんだけど。
0382デフォルトの名無しさん
NGNGならできんじゃないか?
0383デフォルトの名無しさん
NGNG> 標準入出力が扱えないって本当?
うそ。
> だからシェルスクリプトと違ってCGIスクリプトを書くのに使えないって聞いたんだけど。
使える。
0384デフォルトの名無しさん
NGNGサンクス
だまされたのか(´Д`;)
0385デフォルトの名無しさん
NGNG誰か windows の batch に翻訳して。
------------------------------------------
if [ $# = 2 ]; then
ARGS="hoge"
elif [ $# = 3 ]; then
ARGS="tako"
else
echo "FAILURE"
exit 1
fi
RESULT=`XXX $ARGS`
if [ x"$RESULT" != "x" ]; then
echo "FAILURE"
exit 1
fi
exit 0
------------------------------------------
0386デフォルトの名無しさん
NGNGShell Scriptを知らないから、
まずやりたいことを日本語に翻訳して。
0387デフォルトの名無しさん
NGNG翻訳してくれるのであれば、ありがとう。
---------------------------------------------
引数の数が 2 つなら ARGS 変数に hoge を代入
引数の数が 3 つなら ARGS 変数の tako を代入
それ以外なら "FAILURE" と出力して異常終了
XXX コマンドに ARGS 変数の内容を引数として渡して実行し、その結果を RESULT 変数に代入。
実行した結果が "" なら正常終了、"" 以外なら "FAILURE" と出力して異常終了
---------------------------------------------
こんな感じ
0388デフォルトの名無しさん
NGNG--------------------
@if (0==1) rem
@echo off
if exist %0.bat cscript.exe //nologo //e:jscript %0.bat %1 %2 %3 %4 %5 %6 %7 %8 %9
if exist %0 cscript.exe //nologo //e:jscript %0 %1 %2 %3 %4 %5 %6 %7 %8 %9
goto end
@else
var WshShell = new ActiveXObject("WScript.Shell");
var oArgs = WScript.Arguments;
var ARGS;
if (oArgs.length == 2)
ARGS = "hoge";
else if (oArgs.length == 3)
ARGS = "tako";
else
WScript.StdOut.WriteLine("FAILURE");
var oExec = WshShell.Exec("XXX.exe " + ARGS);
var RESULT = oExec.StdOut.ReadAll();
if (RESULT == "") {
WScript.StdOut.WriteLine("FAILURE");
WScript.Quit(1);
}
WScript.Quit(0);
@end/*
:end
:*/
--------------------
0389388
NGNGelse
WScript.StdOut.WriteLine("FAILURE");
↓
else {
WScript.StdOut.WriteLine("FAILURE");
WScript.Quit(1);
}
0390デフォルトの名無しさん
NGNGさんくす。
試してみます。
0391388
NGNGif (RESULT == "") {
↓
if (RESULT != "") {
0392デフォルトの名無しさん
NGNGcygwin入れたほうが速くねえ?
0393デフォルトの名無しさん
NGNG>>388
exit status返せる?
0394388
NGNG@else の次の行から @end/* の前の行まの内容を
.js ファイルとして cscript //nologo ***.js のように
起動すべきかな。
0395デフォルトの名無しさん
NGNG自動的に起動→終了したいのですが、
方法はありますでしょうか?
起動後にEnterを押さないと処理が始まらなくて、
終了にも任意のキーを押す必要があるのですが
0396デフォルトの名無しさん
NGNG0397デフォルトの名無しさん
NGNG入力すべきキー内容をファイル(例えばbar)に保存しておいて
foo.exe<bar
のようにしてみては?
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNGあ。答えてくれてらっしゃる。
超出来ました。最高です!バッチリです!ヒャホーイ!
0400デフォルトの名無しさん
NGNG0401山崎 渉
NGNG__∧_∧_
|( ^^ )| <寝るぽ(^^)
|\⌒⌒⌒\
\ |⌒⌒⌒~| 山崎渉
~ ̄ ̄ ̄ ̄
0402絢安允安安維
NGNG0403デフォルトの名無しさん
NGNG追記くらいしか検索にヒットしないのでマジ困ってます。
例を教えていただけませんでしょうか?おながいします。
0404デフォルトの名無しさん
NGNG起動したアプリを終了しないと次のアプリが起動せず無意味
なんとかならんでしょうか
中身はこんな感じ
"C:\Program Files\hoge\hoge.exe"
"C:\Program Files\hage\hage.exe"
"C:\Program Files\mage\mage.exe"
0405デフォルトの名無しさん
NGNGstart "C:\Program Files\hoge\hoge.exe"
0406デフォルトの名無しさん
NGNG2kでcmd.exe使用の場合
プログラムを""で囲う時は
start "" "C:\Program Files\hoge\hoge.exe"
とするひと
""で囲まない時やcommand.com使用時は例外
0408山崎 渉
NGNG0409山崎 渉
NGNG│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
0410デフォルトの名無しさん
NGNG変数に代入する方法ってありますか?
ちなみにテキストファイルには一行しか書かないものとして。
OSはW2Kです。
0411デフォルトの名無しさん
NGNG0412デフォルトの名無しさん
NGNGありがとうございます。
0413デフォルトの名無しさん
NGNG・あるフォルダに入っているすべてのバッチファイルの
すべての行の左側に「echo 」と書き、
すべての行の右側に「 >>wmv9」と書く。
0414訂正
NGNG・あるフォルダに入っているすべてのバッチファイルの
すべての行の左側に「echo 」と書き、
すべての行の右側に「 >>wmv9.bat」と書く。
0415訂正
NGNGよろしくおねがいします。
0416^>
NGNGfor %%a in (*.bat) do for /f "delims=@" %%b in (%%a) do @echo echo %%b ^>^>wmv9.bat>>バッチ.cmd
move バッチ.cmd バッチ.bat
@はbatで使用されていない文字にすること
0418デフォルトの名無しさん
NGNG%0の中身の、バッチファイルの名前を取れれば良いんだけど・・・。
0419デフォルトの名無しさん
NGNGhelp set
0420デフォルトの名無しさん
NGNG%0って起動時のコマンドラインから引数を
除いた部分が入っているだけじゃなかったっけ?
c:\>c:\bat\test
→ %0 = c:\bat\test
c:\>test
→ %0 = test
c:\>test.bat
→ %0 = test.bat
0421デフォルトの名無しさん
NGNG0422デフォルトの名無しさん
NGNG%~dp0
call/? や for/? に説明がある
0423デフォルトの名無しさん
NGNGフルパスで起動しない限りディレクトリ自体が含まれてないから無理なのでは・・
それともNTだと必ずフルパスが入ってくる?
0424デフォルトの名無しさん
NGNG>>422で解決だと思ーよ。
0425デフォルトの名無しさん
NGNGecho 1
echo 2
だと1と2の間と、2の次に改行が入るけど、改行を出力せずに
echoする方法ってありますか?
0426デフォルトの名無しさん
NGNG0427デフォルトの名無しさん
NGNG入らないよ。
0428デフォルトの名無しさん
NGNG0429
NGNG指定のディレクトリに
あいうえお__20030917
みたいに
指定の名前+本日の日付のフォルダ
を作成するにはどうすればいいのでしょうか?
0430デフォルトの名無しさん
NGNGmkdir %指定のディレクトリ%\あいうえお_%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
0431ヘルスズキ
NGNGできませんでした。locale設定に依存しますね。
c:\>echo %DATE:~0,4%%DATE:~5,2%%DATE:~8,2%
水 203/9/
0432デフォルトの名無しさん
NGNGOSのバージョンかも。
C:\>ver
Microsoft Windows XP [Version 5.1.2600]
C:\>echo %DATE%
2003/09/17
0433432
NGNGC:\>ver
Microsoft Windows 2000 [Version 5.00.2195]
C:\>echo %DATE%
水 2003/09/17
C:\>echo %DATE:~2,4%%DATE:~7,2%%DATE:~10,2%
20030917
0434デフォルトの名無しさん
NGNG0435デフォルトの名無しさん
NGNG[コントロールパネル]−[地域のオプション]−[日付](Win2kの場合ね)
で短い形式の書式を変えると%DATE%の出力フォーマットが変わります。
(コマンドプロンプトは再起動が必要)
0437WindowsMe
NGNGECHO は ON
C:\WINDOWS>
0438デフォルトの名無しさん
NGNG阪神優勝_20030915-222906++.avi
阪神優勝_20030915-224138+_tpr_vfapi.wmv
阪神優勝_20030915-225535+_tpr_vfapi.wmv
阪神優勝_20030916-003659_tpr_vfapi+.wmv
阪神優勝_20030916-072316+++.avi
上のようなファイルがたくさんあって、これらをすべて選択してD&Dすると、
下のようなファイル名にすることはバッチファイルでできますでしょうか?
OSはWIN2kPROです。
阪神優勝_20030915-222545.wmv
阪神優勝_20030915-222906.avi
阪神優勝_20030915-224138.wmv
阪神優勝_20030915-225535.wmv
阪神優勝_20030916-003659.wmv
阪神優勝_20030916-072316.avi
0439デフォルトの名無しさん
NGNGの部分は文字や文字の長さが変わります。
0440デフォルトの名無しさん
NGNG>>439
阪神優勝_ ではなく 阪神優勝 の部分が変化するときのバッチ
%^1と%~f1って何が違うんだろう
:優勝
echo %~f1>阪神.lst
FOR /F "usebackq delims=_+. tokens=1,2" %%i IN (阪神.lst) DO move "%~f1" "%%i%%j%~x1"
if not "%~2"=="" shift & goto 優勝
del 阪神.lst
goto :eof
0441デフォルトの名無しさん
NGNGありがとうございます。
0442デフォルトの名無しさん
NGNG素人質問スマンです
0443デフォルトの名無しさん
NGNG>>442
ウェイトって、start /wait コマンドのことじゃないよね
linuxでのsleepみたいなものを期待してるのかな
だったら標準では入っていないと思う
:開始
@if "%1"=="" @echo 終了までに%%1に指定した秒数かかるバッチ&goto :eof
@echo off
set 待小=%TIME:~9,2%
set 待秒=%TIME:~6,2%
set 待分=%TIME:~3,2%
set 待時=%TIME:~0,2%
if %待小:~0,1%==0 set 待小=%待小:~1,1%
if %待秒:~0,1%==0 set 待秒=%待秒:~1,1%
if %待分:~0,1%==0 set 待分=%待分:~1,1%
if %待時:~0,1%==0 set 待時=%待時:~1,1%
set /a 待機=((%待時%*60)+%待分%)*60+%待秒%+%1
goto 待機
0444デフォルトの名無しさん
NGNGset 動小=%TIME:~9,2%
set 動秒=%TIME:~6,2%
set 動分=%TIME:~3,2%
set 動時=%TIME:~0,2%
if %動小:~0,1%==0 set 動小=%動小:~1,1%
if %動秒:~0,1%==0 set 動秒=%動秒:~1,1%
if %動分:~0,1%==0 set 動分=%動分:~1,1%
if %動時:~0,1%==0 set 動時=%動時:~1,1%
set /a 動作=((%動時%*60)+%動分%)*60+%動秒%
if %待機% GTR %動作% goto 待機
@echo 開始時刻 %待時%:%待分%:%待秒%
@echo 終了時刻 %動時%:%動分%:%動秒%
@goto :eof
@echo %待機%
@echo %動作%
0445デフォルトの名無しさん
NGNG俺ならcygwinのsleep呼んでしまう
0446デフォルトの名無しさん
NGNG外部exe使わないならこうなるだろうなと思って書いただけ
俺ならUnxUtilsのsleep.exe使うけどな
0447デフォルトの名無しさん
NGNG0448デフォルトの名無しさん
NGNG1.txtで中の文字が1
のファイルを
2.txtで中の文字が2
3.txtで中の文字が3
みたいにコピーする方法とかありますでしょうか?
0449デフォルトの名無しさん
NGNGファイルの中身はforで読めるからやり方あるかもね。
0450デフォルトの名無しさん
NGNGたったこれだけでここまで意味不明なのもすごいな。
0451デフォルトの名無しさん
NGNG「本日の日付.txt」で実行できる
と言うバッチファイルを作りたいのですが
可能でしょうか?
0452デフォルトの名無しさん
NGNGif exist 99.txt echo 100 > 100.txt
goto exit
if exist 98.txt echo 99 > 99.txt
goto exit
・・・
:exit
何をやりたいか少々不明&テストしてないけど
0453デフォルトの名無しさん
NGNG日付を環境変数に取り出す方法は、このスレでも何度か出ている。
0454デフォルトの名無しさん
NGNGファイル名が
00000001.から00099999.
までのファイルを消したいのですが、特殊な名前のファイルのため下記のようにDelコマンドを打たなくてはなりません。
*やdeltreeでは消せないようです。
で、ループさせて消そうとおもったのですが、下記のバッチファイルではうまくいきません。
バッチでの変数の扱いがちょっとわたしには?なので、これ以上先へすすめなくなってしまいました・・・
どなたかお知恵をお貸しください。
@ECHO OFF
SET A=1
:LOOP
del "\\?\C:\RECYCLER\NPROTECT\0000000%A%."
SET A=%A%+1
GOTO LOOP
0455デフォルトの名無しさん
NGNGかけるのかなぁとおもってるんですが、なんか書くのがめんどくさそう・・・
0456デフォルトの名無しさん
NGNGsetで計算する時は
set /a 式
変数にA使うから最初見た時間違いに気付かなかったよ
入れ子じゃないけど作ってみた
@echo off
SET A=1
:1
del "\\?\C:\RECYCLER\NPROTECT\0000000%A%."
SET /A A = %A% + 1
if %A% lss 10 goto 1
:10
del "\\?\C:\RECYCLER\NPROTECT\000000%A%."
SET /A A = %A% + 1
if %A% lss 100 goto :10
:100
del "\\?\C:\RECYCLER\NPROTECT\00000%A%."
SET /A A = %A% + 1
if %A% lss 1000 goto 100
:1000
del "\\?\C:\RECYCLER\NPROTECT\0000%A%."
SET /A A = %A% + 1
if %A% lss 10000 goto 1000
:10000
del "\\?\C:\RECYCLER\NPROTECT\000%A%."
SET /A A = %A% + 1
if %A% lss 100000 goto 10000
0457454
NGNG計算式を評価して代入するにはAオプションがいるんですね。きづいてなかったっす。
昨日はあきらめてVBでやることにして、動かしたんですが、あやまってDOS窓開きまくりでファイル消し始めて、
ある程度は消えたんですが、OSあぼーん、ソースも保存してなくてあぼーんしたので放置してました。
いただいたソースで今無事全ファイル削除できました。ありがとうございました。
桁が繰り上がるたびに0の数減らすんですね。これも思いつかなかったっですw
0458デフォルトの名無しさん
NGNGdel \\?\C:\RECYCLER\NPROTECT\0000000*.
で消せない?
0459454
NGNGちょっとそれはわからないです。もうファイル消しちゃったんで。
もしかしたら\\?\がポイントかもしれないから消せるかもしれませんね・・。
0460454
NGNG0461デフォルトの名無しさん
NGNGfor %a in (000?????.) do del "\\?\C:\RECYCLER\NPROTECT\%a"
でよかったかも
0462454
NGNGDOSバッチのFORの説明をあるサイトで見たんですが、VBのForとはかなりちがうみたいで理解できなかったっすw。
なるほど、そうかくと?????のなかに数字が00001からひとつずつ増えていくんですね?
0463デフォルトの名無しさん
NGNG?は任意の1文字
FOR /L あるの忘れてた。使えば5行ですんだかも
0464デフォルトの名無しさん
NGNG(PureDOSでSJIS扱えるまともなMultithreaderがあればなぁ…)
セッション切り替えを実装していないのでペア間通信しかできない。
これ自体、環境変数ではなくファイル受け渡しという手もあるので
別にバッチやDOSではなくても可能。応用すれば、C/S型のアプリや
Windows + DOSといったhybrid programが作成可能。
使用方法はDOSプロンプトを2つ同じフォルダで起動。
一方で、このバッチを起動して、もう一方でenvdata.batを生成。
終了方法は、ソース読め(w
--- cut here ---
@echo off
:: 環境変数を応用したスレッド間通信。
:: envdata.batの内容は set 環境変数名=変数内容とする。
:: by.Chysanthemum Kernel Project(謎)
:: this code is public domain. you use is as you like.
:: but don't use commercial this condition.
set thread.env=running
:loop
if exist envdata.bat call envdata.bat
if "%thread.env%"=="halt" goto halt
goto loop
:halt
set thread.env=
del envdata.bat
0465
NGNGDELTREEを使うのはわかるのですが、
バッチファイルとして認識されていませんと表示されて削除できません
教えてください
0466デフォルトの名無しさん
NGNGrd/s/q C:
0467デフォルトの名無しさん
NGNG0468
NGNGしてるわけないじゃん
Cドライブの中身全部消えるじゃん
本当の答えを教えてください
0469デフォルトの名無しさん
NGNGそんなにDELTREE使いたいなら
Win98のCOMMANDフォルダから取ってこいよ
0470デフォルトの名無しさん
NGNG0471デフォルトの名無しさん
NGNG「A%20B.txt」という名前のファイルを「A B.txt」にリネームするバッチを組みたいの
ですが、現状だと%2をコマンドライン引数と認識しているようで上手くリネーム出来ま
せん。%を%そのものの文字として扱うための表記はどうすればいいのでしょうか?
0472デフォルトの名無しさん
NGNG0474デフォルトの名無しさん
NGNGDeltree "C:\新しいフォルダ"
とやると
操作可能なプログラムまたはバッチ ファイルとして認識されていません
とでます
削除するにはどうすればいいのでしょうか?
0475デフォルトの名無しさん
NGNG0476デフォルトの名無しさん
NGNGxpです
RMDIRでやろうとすればから空のフォルダのみだし
0477デフォルトの名無しさん
NGNGrmdir /?
0478デフォルトの名無しさん
NGNGで出来る
0479デフォルトの名無しさん
NGNG0480デフォルトの名無しさん
NGNGfor %%line in "list.txt" do echo %%line
みたいなことをやりたいのですが。
0481デフォルトの名無しさん
NGNGこのスレ最初から読んでみ。
0482デフォルトの名無しさん
NGNGとするとtest.txtに「文字列」のあとに改行がついてしまいます
改行をなくすまたは最初から出力させない方法、テクニック(コピーしたり連結したりをふくむかも)
があれば教えてください
文字列にCDを入れて、CD >test2.txtで作ったものと
連結してバッチファイルを作って、元のディレクトリに戻るのに使います。
0483デフォルトの名無しさん
NGNGあらかじめ改行を含まない
CD_[EOF]
("_"はスペース)
のような内容のファイル(たとえばtest1.txt)を作っておいて
copy /Y test1.txt test2.txt
CD >> test2.txt
とか。
Win2k/XPなら pushd/popd を使ったり
echo cd %CD% > test2.txt
で簡単にできるんだが…。
0484デフォルトの名無しさん
NGNG9X系の場合
echo prompt CD $P >tmp.bat
command /c tmp.bat | find /v "prompt" >>test2.bat
0485デフォルトの名無しさん
NGNGそのショートカットが開くと同時に、カレントディレクトリが、
そのショートカットがあるディレクトリにするには、プロパティの作業フォルダを
何にすればいいのでしょうか。教えてください
%~d0%~p0でうまくいっていたのですが、急に
C:\Program Files\Common Files\System\Mapi\1041>
で始まるようになってしまいました
0486デフォルトの名無しさん
NGNG@echo off
cd "C:\My Music"
dir /s /b * > 全て再生.m3u
for /D /R %%i in (*) do (
pushd %%i
dir /s /b * > 全て再生.m3u
popd
)
rem pause
0487デフォルトの名無しさん
NGNGjavac %1
java %1
PAUSE
0488487
NGNGどうやって取ったらいいんですか?
0489デフォルトの名無しさん
NGNGw2k以降なら %~n1 やら %~dpn1 とか使えるよ。
0490487
NGNGHellow_Java.classが出来たら実行する物を作ってみました
Hellow_Java.classが作成されているのにEXISTで
%~n1%.classを認識してくれませんでした。
EXISTによる確認なしだと、実行までしてくれるのですが。
後は、コンパイル実行して、エラーで前にコンパイルした同名の
〜.classがあるときは実行しないようにする方法が思いつきません
IF EXIST %1% GOTO FA
GOTO FF
:FA
javac %1%
IF EXIST %~n1%.class GOTO FB
GOTO END
:FB
java %~n1%
GOTO END
:FF
ECHO JAVA のソースファイルファイルをアイコン上にドラッグしてください。
:END
PAUSE
0491デフォルトの名無しさん
NGNG>>489でっす。あれからも頑張ってたのか。
そこまでやるんなら make を使う
0492デフォルトの名無しさん
NGNG?
javac の戻り値で調べるのはだめ?
以下は引数無しだとエラーになるので適当に工夫してくれ。
@echo off
setlocal enableextensions
set srcf=%1
set binf=%~dpn1.class
if exist %srcf% (
echo javac "%srcf%"
if %ERRORLEVEL% equ 0 (
echo java "%binf%"
)
) else (
echo java のソースファイルファイルをアイコン上にドラッグしてください。
)
pause
endlocal
というか、make 使うほうが良(ry
0493バッチ初心者
NGNG方法がわからないので教えていただけませんでしょか?
OSはWIN2000です。条件は下記の通りです。
・1行が5つのタブで区切られている。
・ファイルによって行数が異なるので最終行まで見ないといけない。
・目的の区切られたタブの場所にデータが存在しない行とする行がある。
この場合、例えば全行の2個目のタブの場所に先頭行から順に最終行まで連番を振りたい場合
どのように処理すればよろしいのでしょうか?
0494デフォルトの名無しさん
NGNGバッチファイルでそれをやるのは辛いような。
フィルタ系の処理はPerlやWSHでやったほうがいいと思うよ。
0495デフォルトの名無しさん
NGNGSHIFT押しながら起動するとデバッグ情報出すとかやりたいんだけど。
0496デフォルトの名無しさん
NGNG作れば?
それともバッチファイル以外は作れないの?
0497495
NGNG標準でそういった機能があるかどうか聞いているだけ。
0498デフォルトの名無しさん
NGNGこの程度ならawkだろ。
0499デフォルトの名無しさん
NGNG○nix ならそれでいいけど、Windows ならわざわざ awk をインストールするのがめんどい。
vbs でいいと思うが。
Option Explicit
Const ForReading = 1
Const ForWriting = 2
Dim FileSystem = CreateObject("Scripting.FileSystemObject")
Dim InFile
Set InFile = FileSystem.OpenTextFile("aaa.txt", ForReading, false)
Dim OutFile
Set OutFile = FileSystem.OpenTextFile("bbb.txt", ForWriting, True)
Dim Number
Number = 1
While Not InFile.AtEndOfStream
Dim Fields
Fields = Split(InFile.ReadLine, vbTab, 5)
Fields(1) = CStr(Number)
Number = Number + 1
OutFile.WriteLine(Join(Fields, vbTab))
WEnd
OutFile.Close
InFile.Close
動かしてないから、バグってたら直してくれ。
0500デフォルトの名無しさん
NGNG↓のような aaa.bat を作ってコマンドプロンプトから
aaa aaa.txt bbb.txt
と打ってやってもできます。バッチファイルにJScriptを埋め込む技を使ってます。
@if (0==1) rem [aaa.bat]
@echo off
if (%2)==() goto usage
if exist %0.bat %0.bat %1 %2
cscript.exe /nologo /e:jscript %0 %1 > %2
goto end
:usage
echo %0 infile outfile
goto end
@else
var args = WScript.Arguments;
var line = 0;
var f = (new ActiveXObject("Scripting.FileSystemObject")).OpenTextFile(args(0));
while (! f.AtEndOfStream)
WScript.StdOut.WriteLine(f.ReadLine().replace(/^([^\t]*\t)[^\t]*\t/, "$1" + ++line + "\t"));
f.Close();
@end/*
:end
:*/
0501500
NGNGWScript.StdOut.WriteLine(f.ReadLine().replace(/^(.*?\t).*?\t/, "$1" + ++line + "\t"));
0502495
NGNG0503デフォルトの名無しさん
NGNG既定でwscriptで起動される環境でもcscriptで起動させるため。
0504教えてマソ
NGNG作ろうかと思ってる。
クッキーは無事消せたんだが、テンポラリーファイルと履歴が消
えてくれないの・・・
フォルダ移動まではうまく逝ってて、削除しようとすると失敗。
コマンドプロンプトからやってみると、ファイルが何も見えない
感じになっている。
ちなみに当方の環境は、XPで、そして共用パソコンだ。
これはxpのセキュリティが強すぎるせいなのか??
そして解決策はあるのか??
教えてお願いエロい人!
ちなみにかなーりさがってたのでageます。許して下さい。
0505デフォルトの名無しさん
NGNGでは普通にAccessでhoge.mdbが起動するのに、
start hoge.mdb
ではDOS窓で起動(?)しちゃうのはなんででつか?
ヘルプだとstartでもいいような書き方なのに。
callだとAccess起動後もDOS窓が残るんで困るんす。
ちなみに、Win2000す。
0506デフォルトの名無しさん
NGNGexplorer.exeが起動していると、index.datが共有違反になり消せなくなる。
回避するには、explorer.exeを殺しておく必要がある
0507デフォルトの名無しさん
NGNG0508デフォルトの名無しさん
NGNGD:\software\aaaa\xxxxx.exe
D:\software\bbbb\xxxxx.exe
じゃだめなんでしょうか ̄/ ̄)。。
うまくうごきません
0509デフォルトの名無しさん
NGNGstart D:\以下略
0510デフォルトの名無しさん
NGNGそれだと一番目のが終らないと二番目のは起動しない。
0511デフォルトの名無しさん
NGNGformat c: /q <go
goファイル
y
0512デフォルトの名無しさん
NGNG0513デフォルトの名無しさん
NGNG起動した瞬間にフォーマットでつか?
0514デフォルトの名無しさん
NGNGIF "abc"=="*bc"で真にしたいのです。。
0515デフォルトの名無しさん
NGNG(ESC):エスケープシーケンス
上記のように書いて、文字を赤で表示するようなことが出来た気がするのですが、
2000/XPでは出来ないのでしょうか?
もし、この方法で出来ないとしても、他の方法でできるとしたら、その方法を教えてください。
0516デフォルトの名無しさん
NGNGあとcygwinでも出来る。
0517デフォルトの名無しさん
NGNG残念。
「バッチファイルで出来るならやろうかな」程度の事だったので、諦めます。
ありがとう。
0518デフォルトの名無しさん
NGNG9x系をシャットダウンできるコマンドはありませんか?
NT系なら、
shutdown -s -t 0
一発なんですが……。
0519デフォルトの名無しさん
NGNGconfig.ntにansi.sysを組み込んで、command.comを起動すれば出来る
0520518
NGNGそれどうやるの?
Config.ntに
device = c\:windows\system32\ansi.sys
ってやったけどうまくいかない。
環境はWinXP。
0521デフォルトの名無しさん
NGNGNT系じゃansi.sysは無効なんじゃなかったか。
0522デフォルトの名無しさん
NGNGさらにconfig.ntの最後の行に
DOSONLY
を追加しれ。
これでansi.sysが有効になるはず。(ただし16bit DOSプログラムにのみ有効)
0523デフォルトの名無しさん
NGNG0524デフォルトの名無しさん
NGNG0526デフォルトの名無しさん
NGNGcmd.exeからではなくcommand.comから起動してみてください。
それでだめならばxtrやらC/C++/perlで同等のコマンドを作るしかないです。
>>525
cmd.exe上ではエスケープシーケンスが使えなかったはずでは?
諦めてWinbatchEhやら他の言語を使いましょう。
0527デフォルトの名無しさん
NGNGttp://arena.nikkeibp.co.jp/tec/win/gaz/362/
0529529
NGNG起動されたフォルダ内で処理をするabcというプログラムがあるとして、
バッチファイルを起動するとそのフォルダとそのフォルダ以下のサブフォルダを含めて
abcプログラムの処理をしたいと考えています。
つまり、あるフォルダでバッチファイルを起動するとそのフォルダ以下のサブフォルダを検出し
サブフォルダに移動してabcというコマンドをうつということを全サブフォルダで
行いたいわけです。
なにかよいアイデアはあるでしょうか?
0530デフォルトの名無しさん
NGNGってーいうのはこのスレでは反則ですか?
0531デフォルトの名無しさん
NGNG>>486
0532デフォルトの名無しさん
NGNGfor /R . /D %d in (*) do (cd "%~fd" & abc)
0533529
NGNGありがとうございます。
/D と /R でいけるみたいですね。
それを使ってやってみます。
0534デフォルトの名無しさん
NGNG取得する右方方を教えてください。
おねがいします
0535デフォルトの名無しさん
NGNG0537ひさまつ
NGNGテキストファイルやテキストデータを昇順/降順に並べ替えたいのです。
でも、書籍の通りにやっても下記エラーになってしまいます。
OSは98SEです。
Microsft(R) Windows 98
(C)Copytight Corp 1981-1999
C:\WINDOWS>\temp1>dir /b
コマンドまたはファイル名が違います。
SAMPLEをなぞってるだけなんですが・・・。
ちなみにtempフォルダだとややこしいと思って、temp1のフォルダにしてるだけ
なんですけど。
c:\temp>dir /b -------------DIRコマンドでファイル名のみを表示した
a-file.txt
b-file.txt
c-file.txt
c:\temp>dir /b | sort /r -----------パイプ処理で逆順に並び替えて表示
c-file.txt
b-file.txt
a-file.txt
0538デフォルトの名無しさん
NGNG↑は入力する必要は無い。
"dir /b | sort /r"
だけを入力すればいい。
0539デフォルトの名無しさん
NGNG0540ひさまつ
NGNGC:\WINDOWS>dir /b C:\TEMP1
c-file.txt
a-file.txt
b-file.txt
0541ひさまつ
NGNG出来ました〜〜〜〜〜。
C:\WINDOWS>dir /b "C:\TEMP1" | sort /r
c-file.txt
b-file.txt
a-file.txt
この人の著書はだめぽ
ttp://www.iijima.nu/
0542デフォルトの名無しさん
NGNGatで起動したのを殺したいんですが・・・
0543デフォルトの名無しさん
NGNGXPならtaskkill.exe
0544デフォルトの名無しさん
NGNG0545デフォルトの名無しさん
NGNG0546デフォルトの名無しさん
NGNG0547デフォルトの名無しさん
NGNGということでしょうか。ありがとうございました。
0548デフォルトの名無しさん
NGNGエラーが出ます。
D:\Temp>type 文書*.txt
ファイルが見つかりません. - 文書*.txt
0549デフォルトの名無しさん
NGNGtypeはワイルドカード指定不可。
for %i in (文書*.txt) do type %i
0550デフォルトの名無しさん
NGNGD:\Temp>copy 文書*.txt con
0551デフォルトの名無しさん
NGNGA.txtの中に入っている文字列と、
B.txtの中に入っている文字列を重複チェックを掛けて、
重複している文字列だけ消去して、C.txtに出力というバッチはどう書いたらよいのでしょうか?
どなたかおわかりになられる方いらっしゃいましたら、
ご教授お願いします。
0552デフォルトの名無しさん
NGNGuniq探して使っとけ
0553デフォルトの名無しさん
NGNG0554デフォルトの名無しさん
NGNGあー、出来ました。
有難う御座います。
>>550
まだ、勉強不足なので処理がわかりません。
D:\Temp>copy 文書*.txt con
文書1.txt
昨日は雨でした。
今日は一日曇ってます文書2.txt
来週は雨が多く、晴れの日が少ないでしょう。 1 個のファイルをコピーしまし
た.
0555デフォルトの名無しさん
NGNG理解できたと思います。
これでいいのでしょうか?
結果です。
AドライブのFDにちゃんとファイルがコピーされてました。
D:\Temp>copy 文書*.txt a:
文書1.txt
文書2.txt
2 個のファイルをコピーしました.
0556デフォルトの名無しさん
NGNG勉強しておきます。
解らなかったら、質問しても良いですか?
0557デフォルトの名無しさん
NGNGconsole
0558デフォルトの名無しさん
NGNG引数があるかどうかをチェックするのに
IF "%1" = ""
で判断して、それはうまくいっているのですが、
デスクトップとかにあるファイルを渡すと、
「andの使い方が間違っています」と表示されて、強制終了します。
どうもパスにスペースを含んでいるのがまずいらしいというのは見当がついたんですが、
""で囲んでもダメとなると、どうやって回避したものかわかりません。
なにかうまい方法はないでしょうか。
0559デフォルトの名無しさん
NGNG0560デフォルトの名無しさん
NGNGIF "%~f1" == ""
0562556
NGNGconsole ←これは、どうやって探すのですか?
Windowsの検索では、TXTの拡張子が出てきません。
DOSでやらないと探せないのでしょうか?
0563デフォルトの名無しさん
NGNGcon という、コンソールデバイスだよ
0564556
NGNGちょっと調べておきます。
解らなかったら、又、質問させてください。
0565あぼーん
NGNG0566あぼーん
NGNG0567あぼーん
NGNG0568あぼーん
NGNG0569デフォルトの名無しさん
NGNG/::::::::::::::::::::::::::::::::::::\
|:::::::::::::::::|_|_|_|_|
|;;;;;;;;;;ノ \,, ,,/ ヽ ちょっと聞いてくれよ。
|::( 6 ー─◎─◎ )
|ノ (∵∴ ( o o)∴)
/| < ∵ 3 ∵>
::::::\ ヽ ノ\
:::::::::::::\_____ノ:::::::::::\
昨日、クライアントに会った帰りに松屋逝ったんだけど
すげーデブの客からチケット渡された店員が奥に向かって「ブタ一丁」と叫んだ時
店内客全員が笑いをグッとこらえる重苦しい雰囲気に包まれたのを感じて
口の中の牛めしを吹き出しそうになっちまったよ。
0570デフォルトの名無しさん
NGNGbatファイルでftpコマンドがかかれているファイルを読み込みFTPでサーバからファイルを
ダウンロードを行います。もしダウンロードに成功した場合は.okファイルを作り,ダウンロード
に失敗した場合には.ngファイルを作りたいのですがどうもうまくいきません。
0571デフォルトの名無しさん
NGNGなにをですか?
>どうもうまくいきません。
なにがですか?
0572デフォルトの名無しさん
NGNGカレントディレクトリ内に3個のサブディレクトリを作りたいのですが
上手く出来ません。結果がこうです。
D:\>md test
D:\>cd test
D:\test>md test001
D:\test>dir /w
ドライブ D: のボリュームラベルはありません.
ボリュームシリアル番号は 11D3-2521
ディレクトリは D:\test
[.] [..] [TEST001]
0 個 0 バイトのファイルがあります.
3 ディレクトリ 186,802,176 バイトの空きがあります.
D:\test>md test002 test003 test004
パラメータが多すぎます. - test003
0573デフォルトの名無しさん
NGNGすいません。教えて君で申しわけないのですが。
最初にd:\testディレクトリを作り、その後にカレントディレクトリ内に
1個のサブディレクトリ作り、test002 test003 test004という3つのディレクトリを1度に
作り、dada\temp\00という3階層のディレクトリを1度に作りたいのですが
上手く出来ません。結果がこうです。
D:\>md test
D:\>cd test
D:\test>md test001
D:\test>dir /w
ドライブ D: のボリュームラベルはありません.
ボリュームシリアル番号は 11D3-2521
ディレクトリは D:\test
[.] [..] [TEST001]
0 個 0 バイトのファイルがあります.
3 ディレクトリ 186,802,176 バイトの空きがあります.
D:\test>md test002 test003 test004
パラメータが多すぎます. - test003
0574573
NGNGD:\test
|_dada
| |___temp
| |__00
|
|_______test001
|
|
|_______test002
|
|
|_______test003
|
|
|
|_______test004
0575573
NGNG何度もすみません。
0576デフォルトの名無しさん
NGNGmd test
cd test
md test001
md test002
md test003
md test004
0577デフォルトの名無しさん
NGNG0578デフォルトの名無しさん
NGNG:md
md %1
@shift
@if not "%1"=="" goto md
0579573
NGNGごめんなさい。
ちょっと記述して貰いたいのですが・・・
ちょっとその記述だけでやってこうなるから・・。
どこに何を記述するか、教えてください。
バカですから、やってしまいました。
結果です。
D:\Temp>:md
D:\Temp>md %1
D:\Temp>@shift
コマンドまたはファイル名が違います
D:\Temp>@if not "%1"=="" goto md
コマンドまたはファイル名が違います
0580デフォルトの名無しさん
NGNGそれとも@を付けたのがいけないのか
0581デフォルトの名無しさん
NGNG0582デフォルトの名無しさん
NGNGFTPソフトに何を使ってるのか分からんが、ダウンロード後に
IF EXIST "filename" GOTO hogehoge
で分岐させりゃ、いいんじゃね?
うまくいかないなら、ダウンロードそのものがうまくいってるのかどうか。
へたすっと、バッチファイル関係ないかも知れないしな。
そもそも製作依頼スレじゃないよな、ここ。
うまくいなかなかったバッチファイルなりを載せないと何をしたいのかも分からん。
質問ヘタならソースで語ってくださいな。
0583デフォルトの名無しさん
NGNG>>579はコマンドラインから打ったんだろ。
>>578の:mdから後をバッチファイルに汁>>573
0584デフォルトの名無しさん
NGNGファイルが途中で切れてもわからない。errorlevelでは拾えない。
FTPサーバのステータスコードを見るしかない。
0585573
NGNGすいません。バッチの作り方がまだ、解ってないのです。
申し訳ありません。結局、下記のようにするしかないのかな?
D:\test>md \test\test001
D:\test>md \test\test002
D:\test>md \test\test003
D:\test>md \test\test004
D:\test>md \test\dada
D:\test>md \test\dada
D:\test>md \test\dada\00
0586デフォルトの名無しさん
NGNG0587デフォルトの名無しさん
NGNG0588573
NGNGそうですね。
「優しく解る!図解MS-DOS]見てます。
後、「MS-DOSVer.6.2ハンドブックPC-9800シリーズ」
とかWindows XP/2000/ME/98SE DOS/コマンドプロント辞典があります。
>>587
ちょっと挑戦してみます。
0589デフォルトの名無しさん
NGNG0590589
NGNG0591デフォルトの名無しさん
NGNG1秒毎にファイル保存していきたいのですが、
そのバッチファイルを作って下さい。
お願いします。
0592デフォルトの名無しさん
NGNGバッチファイルを作るのは貴方です。
ここは貴方が作っている最中に
分からなくなった所を聞くスレです。
なにが分からないのですか?
0593デフォルトの名無しさん
NGNG指定したファイルを保存するところかな〜
0594デフォルトの名無しさん
NGNGhhじゃなくてhでいいなら
copy %1 "%~n1%date:~4,2%%date:~7,2%%date:~10,2%%time:~0,2%%time:~3,2%%time:~6,2%%~x1"
0595デフォルトの名無しさん
NGNGXP付きのブータブルISOを自動でつくるバッチなんですが
自分の環境では1ファイルを大文字にしないとエラーが出てしまうので、イメージにするまえにsp1当てた段階で一度止めたいんです
0596デフォルトの名無しさん
NGNG0597デフォルトの名無しさん
NGNG0598デフォルトの名無しさん
NGNG素直にバッチファイルを2つに分けてはどうか
0599デフォルトの名無しさん
NGNGどうやって受け取ったらよいでしょうか?
rsh hostname -l user -n command >hoge.txt
上記のコマンドだと、
hoge.txtにはリモートで実行したコマンド(command)の結果が書き込まれてしまうようです。
よろしくお願いします。
0600599
NGNG> リモートシェルコマンドで戻り値が返ってくるのですが、
> どうやって受け取ったらよいでしょうか?
> rsh hostname -l user -n command >hoge.txt
>
> 上記のコマンドだと、
> hoge.txtにはリモートで実行したコマンド(command)の結果が書き込まれてしまうようです。
>
> よろしくお願いします。
>
ERRORLEVELで取得出来ました。
0601デフォルトの名無しさん
NGNGWin2000Proでは問題ないのですが、WinNT4.0Serverでは引数が取得できません。
引数の修飾子「~」はNTではサポートされていないのでしょうか?
ご存じの方いましたら、教えてください。
もうひとつ、
下記ソースはWinNT4.0Serverではエラーになってしまいます。
for /F "tokens=1,2,3 USEBACKQ" %%A in (`find /V /C "" log1.txt`) do set FL=%%C
if %FL% == 0 goto NG
set /A TAIL=%FL%-1
more +%TAIL% log1.txt >log2.txt
log1.txtの最後の1行の内容をlog2.txtに出力します。
Win2000Proだと問題ないのですが、WinNT4.0Serverだと
「USEBACKQの使い方が誤っています」と表示されます。
こちらもご存じの方いましたら教えてください。
よろしくお願いします。
0602デフォルトの名無しさん
NGNGQ2 キーを押す(例えばF1を押したようにしたい)にはどう書けばいいですか?
0603デフォルトの名無しさん
NGNGバッチファイル同士でパイプを使うことはできるんでしょうか?
0604デフォルトの名無しさん
NGNGNTのヘルプに載ってなければ無理なんじゃないの
>>602
A1. たとえばC:\Windows\Calc.exeと書けば電卓が実行される。
A2. たぶん無理。キーを押すというのはメッセージを送れば実現できるけどそれはC言語とかでプログラムを作るしかない。
WSHではできるのかな?
>>603
普通にできるはずだけど。
0605デフォルトの名無しさん
NGNG> バッチファイル同士でパイプを使うことはできるんでしょうか?
command /c batch1 | command /c batch2
0606デフォルトの名無しさん
NGNGやっぱりむりですか・・・
では%1で受けた値の両端のダブルクォーテーションを取るにはどうしたら良いのでしょうか?
0607603
NGNGありがとうございます。
バッチ同士の部分は分かりました。
(バッチファイルへの引数は%1で受け取れるようなのですが、)
command /c batch1 | command /c batch2
としたときに
batch2側でbatch1の標準出力を受け取るにはどうしたらいいのでしょうか?
(
%??に相当する物が存在せず、
copy [con] , set , 一時ファイル 等を使う方法しかないのでしょうか?
)
0608デフォルトの名無しさん
NGNGバッチ内でパイプを受け取れるコマンドを使えばいい
0609デフォルトの名無しさん
NGNG0610デフォルトの名無しさん
NGNGここは、そこを敢えてバッチファイルでやって玉砕するスレではないか。
0611デフォルトの名無しさん
NGNGforでいけるんじゃない?
テキストファイル読み込んだりとファイル操作できるし。
0612デフォルトの名無しさん
NGNGパスを作りたいのですが、できません。
これじゃーだめみたい。
A:\>a:bas\C:\WINDOWS\APPLIC~1\MICROS~1\INSTAL~1\{00010~1\WORDICON.EXE
0613デフォルトの名無しさん
NGNG試してないけどこんな感じとか。
"C:\Program Files\Microsoft Office\Offic\winword.exe"
0614612
NGNGコマンドまたはファイル名が違います.
A:\>a:bas\"C:\Program Files\Microsoft Office\Offic\winword.exe
コマンドまたはファイル名が違います.
A:\>"C:\Program Files\Microsoft Office\Offic\winword.exe"
コマンドまたはファイル名が違います.
3パターン試しましたがだめだったよです。(´・ω・`)ショボーン
0615デフォルトの名無しさん
NGNG0616デフォルトの名無しさん
NGNG0618デフォルトの名無しさん
NGNGなるほど。その環境変数は知らなかったよ。
ところで(システム|ユーザ)環境変数やらコマンドの動作の違いをOSのバージョンごとに
まとめているサイトとか知りませんが?
0619612
NGNGすみません。
やってみました。どこがおかしいのでしょう?
A:\>"%ProgramFiles%\Microsoft Office\Office\Winword.exe"
コマンドまたはファイル名が違います.
0620デフォルトの名無しさん
NGNGOSのバージョンによっては環境変数 ProgramFiles が定義されていないかもしれないね。
set
または
set | find "ProgramFiles"
で ProgramFiles= で始まる行が表示されるかどうか確認してみては?
0622612
NGNGちょっと確認してみました。
こんな感じです。
Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1999.
C:\WINDOWS>set | find "ProgramFiles"
C:\WINDOWS>set
TMP=c:\windows\TEMP
TEMP=C:\windows\TEMP
PROMPT=$p$g
winbootdir=C:\WINDOWS
COMSPEC=C:\WINDOWS\COMMAND.COM
PATH=C:\WINDOWS;C:\WINDOWS;C:\WINDOWS\COMMAND;C:\PROGRA~1\COMMON~1\AUTODE~1:\D
;C:\JAVA;C:\PROGRA~1\COMMON~1\AUTODE~1:\DOS;C:\APP\JAVA\BIN;C:\JDK1.3\BIN;C:\P
GRA~1\COMMON~1\AUTODE~1
windir=C:\WINDOWS
BLASTER=A220 I5 D1 T4
CMDLINE=find "ProgramFiles"
C:\WINDOWS>
0623デフォルトの名無しさん
NGNG0625デフォルトの名無しさん
NGNG0626デフォルトの名無しさん
NGNGAUTODE~1 って AutoCadか?
コロンが含まれているから無効なパスに見えるが。
0627デフォルトの名無しさん
NGNGうpしたのでこれでいいのか、分かりません。
HPに説明とパスがあります。でも、Dドライブから実行したいので・・・。
ttp://ptba2.hp.infoseek.co.jp/cgi-bin/up/obj/obj2321_1.jpg
0628デフォルトの名無しさん
NGNG0629デフォルトの名無しさん
NGNG「path %path%」の部分が不要
それと>>626の言う通り、
「C:\PROGRA~1\COMMON~1\AUTODE~1:\DOS;」
の部分がおかしい。(「:\DOS」の前にセミコロン;とドライブ名が抜けてる?)
アセンブラやる前にもう少しDOS(コマンドプロンプト)の勉強もした方が
良いんではないかと・・・
0630627
NGNGども・・・・。
おっしゃるとおり、DOSの勉強を進めていったほうが良いですね。
>「C:\PROGRA~1\COMMON~1\AUTODE~1:\DOS;」
うーん・・・これは、私にも分かりません。
AuotCAdは、普通にCDからのインストールをしたので
私は、そのような記述をしてません。(それ以前にわからないです。)
AuotCAdは、使ってないからアンインソトールしました。
その記述部分を削ってもいいって事でしょうか?
0631デフォルトの名無しさん
NGNG0632m.s
NGNG0633デフォルトの名無しさん
NGNG0634デフォルトの名無しさん
NGNGttp://www.atmarkit.co.jp/fwin2k/win2ktips/267swchos/swchos.html
ttp://www.atmarkit.co.jp/fwin2k/win2ktips/267swchos/table.html
0635デフォルトの名無しさん
NGNG0636デフォルトの名無しさん
NGNG0637デフォルトの名無しさん
NGNGのですが、手元にある書物がNECの「PC-9801シリーズ」を対象にしてるので
記述どおりの事をやっても出来ません。
私のOSでは無理なんでしょうか?
0638デフォルトの名無しさん
NGNGどこがどうできないのかくらい書けや
0639デフォルトの名無しさん
NGNG不要ならその部分を削除しても問題なし。
>>637
スレ違いだ。こっちで聞け↓
機械語なら俺に質問しろ!
http://pc2.2ch.net/test/read.cgi/tech/1035288252/l50
自分の使ってる環境や本の名前をもっと具体的に書かないと
まともに答えてもらえないぞ。
0640デフォルトの名無しさん
NGNGWin9xはC:ドライブ固定ですかそうですか
0641デフォルトの名無しさん
NGNGしかも>>634の一覧表のWin98で%comspec%は
C:\WINDOWS\COMMAND.COM
なのに一番下の実例では
@echo off
if "%comspec%"=="" goto unknown
if "%comspec%"=="c:\command.com" goto Win9x
if "%comspec%"=="%systemroot%\system32\cmd.exe" goto WinNT
((((;゚Д゚)))ガクガクブルブル
%WINDIR%\COMMAND.COMにしろよ
0642デフォルトの名無しさん
NGNGを作ったのですが、編集処理(ラベル :DEBUG,:HISTORY,:SIZE,:SENDMSG)の
あと、:FIN→:EOFとしているのですが、なぜか:EOF→:FINとgotoされてしま
います。
問題はどこでしょうか??
///TREG.ini
###############################################;
# 定義ファイル #;
###############################################;
HISTORY=10;
SIZE=101376;
DEBUG=on;
SENDMSG=*;
0643treg.bat 1/4
NGNGsetlocal
set WORKDIR=%~dp0
:****************************************
if /i "%1"=="/?" (goto :INFO
) else if /i "%1"=="/D" (@set PRM1=DEBUG
) else if /i "%1"=="/H" (@set PRM1=HISTORY
) else if /i "%1"=="/S" (@set PRM1=SIZE
) else if /i "%1"=="/M" (@set PRM1=SENDMSG
) else if /i "%1"=="/V" (goto :VIEW
) else (goto :ERORR)
set PRM2=%2%
goto :%PRM1%
:****************************************
:DEBUG
if /i "%PRM2%"=="ON" (call :GET_INI
)else if /i "%PRM2%"=="OFF" (call :GET_INI
)else (goto :ERORR)
:_DEBUG
goto :FIN
0644treg.bat 2/4
NGNG:HISTORY
set /a PRM2=%PRM2%/1
if errorlevel 9163 goto :ERORR
if /i %PRM2% GTR 100 (goto :ERORR
) else if /i %PRM2% LSS 0 (goto :ERORR)
call :GET_INI
:_HISTORY
goto :FIN
:****************************************
:SIZE
set /a BUFFER=%PRM2%/1
if errorlevel 9163 goto :ERORR
if /i %PRM2% GTR 1000 (goto :ERORR
) else if /i %PRM2% LSS 10 (goto :ERORR)
set /a BUFFER=%PRM2%
set /a PRM2=%PRM2%*1024-1024
call :GET_INI
:_SIZE
set /a PRM2=%BUFFER%
ECHO !!
goto :FIN
0645treg.bat 3/4
NGNG:ERORR
echo オプションが不適当です。
:****************************************
:INFO
echo 形式:TREGini [/d {0〜100}] [/h {10〜1000}] [/d {on^|off}] [/m compute名][/?] [/v]
goto :END
:****************************************
:VIEW
type %WORKDIR%TREG.INI
goto :END
:****************************************
:FIN
del %WORKDIR%TREG.BAK
echo %PRM1%=%PRM2% に変更しました。
:END
goto :EOF
0646treg.bat 4/4
NGNG:GET_INI
rename %WORKDIR%TREG.INI TREG.BAK
for /f "tokens=1 delims=;" %%a in (%WORKDIR%TREG.BAK) do (@set LINE=%%a&& call :GET_SUB)
goto :_%PRM1%
:****************************************
:GET_SUB
for /f "eol=# tokens=1,2* delims= " %%c in ('ECHO %LINE%') do (@set HEAD=%%c&& @set VALUE=%%d)
if /i "%HEAD%"=="%PRM1%" set VALUE=%PRM2%
if /i "%HEAD%"=="%PRM1%" set LINE=%HEAD%^=%VALUE%
echo %LINE%; >> %WORKDIR%TREG.INI
set LINE=
set HEAD=
set VALUE=
0647642
NGNG0648デフォルトの名無しさん
NGNG長いんでよく見てないが、:GET_INI の最後は
goto :_%PRM1% → goto :EOF
では?
0649sage
NGNG:SIZEの処理の場合は、set /a PRM2=%BUFFER%の処理を行うために。
また、:FINで変更が行われたことを表示させることも行うために
goto :_%PRM1%としています。
0650642
NGNG0651デフォルトの名無しさん
NGNGcall の使い方はちゃんと理解してる?
CALL :ラベル 引数
指定された引数で新しいバッチ ファイル コンテキストが作成され、指定
されたラベルの次の文に制御が渡されます。バッチ スクリプト ファイルの
最後に 2 回到達することによって、2 回 "終了" する必要があります。
1 回目に最後に到達したときには、制御は CALL 文の次の行に返されます。
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
2 回目に、バッチ スクリプトが終了します。バッチ スクリプトから "戻る"
ための GOTO :EOF 拡張機能の説明については、GOTO /? と入力してください。
@echo off
call :label_c
call :label_b
call :label_a
goto :EOF
:label_a
echo aaa
goto :EOF
:label_b
echo bbb
goto :EOF
:label_c
echo ccc
goto :EOF
0652642&649
NGNG適切なご指摘ありがとうございます。
肝心なところを理解していませんでした。
以下のように変更し、正常動作を確認しました。
:****************************************
:GET_INI
rename %WORKDIR%TREG.INI TREG.BAK
for /f "tokens=1 delims=;" %%a in (%WORKDIR%TREG.BAK) do (@set LINE=%%a&& call :GET_SUB)
goto :EOF
0653デフォルトの名無しさん
NGNGバッチファイル中でスリープってできないんですか?
10秒(厳密でなくても可)だけ待ちたい。
次のようなことを思いついたが、なんかきれいではないような気がして、、、
WSHでスリープしそれをcall
CでもJavaでもスリープするだけのプログラムを作りそれをcall
0654デフォルトの名無しさん
NGNGchoice /c:x /t:x,10 | echo.
x押されたらどうしょうもないけど ついでにNT系はchoiceなかったっけ
0655デフォルトの名無しさん
NGNG0656653
NGNGありがとうございます。
choiceをそういう目で見れたことはありませんでした。
98SEでは思い通りにいきましたが、やはり2kでは無理でした。
何で同等のコマンドがないんでしょう?
↓ここは確認しましたが、別途ツールでも無理ですね。
ttp://forum.nifty.com/fpcu/dosvcmd/choice.htm
0657デフォルトの名無しさん
NGNG0658デフォルトの名無しさん
NGNG0659653
NGNG>657
ネイティブのバッチ(用語的に正しい?)以外は環境的に厳しいのです。
本当は詳細な環境要件があるんですけれども省略させてください。
あとプログラマとしての探求的なものもあるんですけどね。
>658
なるほど
作ってみました
@ECHO OFF
SET SS=%TIME:~6,2%
SET MYCNT=0
:LOOP
SET NOW=%TIME:~6,2%
IF %SS%==%NOW% GOTO :NOTCNT
SET /A MYCNT=MYCNT+1
SET SS=%NOW%
GOTO :NOTCNT
:NOTCNT
IF %MYCNT%==10 GOTO :END
GOTO :LOOP
:END
最後のif文の数字で秒数変更できます。引数にしたほうが汎用的ではあります。
何行かスリムにもできますが、ロジック的には以上ということで、、、
0660正直、バッチでビット演算子まで使えるとは知らなかったよ。
NGNG> :NOTCNT
とか
> IF %MYCNT%==10 GOTO :END
> GOTO :LOOP
> :END
とかわざわざわかりにくく書かなくてもいいと思うぞ。
@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
ぐらいで充分かと。あとお行儀的には、setlocal/endlocal で括るといいかも。
0661デフォルトの名無しさん
NGNG0662デフォルトの名無しさん
NGNGある特定のフォルダにあるファイル郡のなかから*.txtというファイルのみを
同名で保存する。つまり更新日時のみ最新になるという風なバッチファイルは
どのようにすればよいのでしょうか?同名ファイルにリネームすればよいとは
思うのですが、ファイルを検索するのはどのようにすればよいのでしょうか?
(for文?)ご教授お願いします。
0663デフォルトの名無しさん
NGNGリダイレクトを使ってバッチ処理のログを保存していますが、
普通に command > hoge.txt ってやると画面上には出力されなくなってしまいますよね。
画面上にも出力して、ファイルにも(同時に)保存って出来ます?
ant > build.log & type build.log
ってのもなんだか・・
0664デフォルトの名無しさん
NGNGそれは無理。バッチ、echo、標準コマンドはstdoutなので
リダイレクトされてしまう。
解決策としてはリダイレクトを使わない方法をとる。
たとえばxtr,sed/awk,tcl/ckのようなスクリプト言語を組み合わせる。
あるいは別の言語で組むのが良いかと。一番簡単なのは
コンソールロギングツール。例をいえばXscriptを
使うことなんだけどAT版は無い。
0665デフォルトの名無しさん
NGNGバッチ単体では無理だね。最低でも正規表現ツールやら
Batch Jack,Basic Preprosessor(BPP),BU必携。
そういうのはバッチではなくawk/perlなどのスクリプト言語で
組んだほうが楽だよ。おそらく、どんどん機能追加していきたくなるからね。
かくいうオレはバッチでInput Method組んだことがあるが
500行くらいになるとスパゲッティになってメンテできなくなる。
いくら変数を構造体変数風(e.g. set global.line.editmode)に
してもBATCPのongoto〜return使おうがbppで分割しようが状況は改善しない。
って今、そいつを他の言語で移植すべく分析で苦労している。
ああ。バッチでOO使える方法(海外サイトを検索してみよう)はあるんだが
さすがにソース分割や構造化プログラミングを組み合わせると
もはやバッチとはいえなくなってしまう。長いので以下略。
0666デフォルトの名無しさん
NGNG標準出力をファイルに保存するだけなら tee を使うと簡単
dir | tee -a hoge.log
http://www.vector.co.jp/soft/winnt/util/se014671.html
http://www.vector.co.jp/soft/dl/win95/util/se033318.html
0667デフォルトの名無しさん
NGNG0668663
NGNGdir > con > hoge.txt
con < dir > hoge.txt
とか色々やってしまった。ハズカシイ
>>666
tee イイ!
こーゆー事がしたかったんです!thx!
0669デフォルトの名無しさん
NGNGこの人のHPにはそれらしき事が書いてあるのですが。
ttp://homepage1.nifty.com/NAKAYA/20030623.htm
0670デフォルトの名無しさん
NGNG内容全然読んでないけど、「DISP.DATとういうファイルを作ります」なんて全角で書いてる時点で、俺なら信用しない。
0671699
NGNGえーっと・・
申し訳ありません。「DISP.DAT」ですか?
そこまで気が付きませんでした。
ちょっとそのHPのソースをCでコンパイルしたらエラーになりました。
0672699
NGNGfor (i=1;i<=NF;i++){
if ($i=="全<長さ"){
len=$(i+2);
writeSw=1;
}
if ($i=="[ネット名") net=$(i+1);
sub("]","",net);
if (sub("+","",net)==1) net=net "+";
if (sub("/","",net)==1) net=net "/";
}
if (writeSw==1) print net " , " len > "temp.000";
writeSw=0;
}
END{
system ("ssort < temp.000 > netlen.csv");
}
0673699
NGNGBorland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
dos1.c:
エラー E2040 dos1.c 1: 宣言が正しく終了していない
エラー E2206 dos1.c 3: 不正な文字 '$' (0x24)
エラー E2206 dos1.c 4: 不正な文字 '$' (0x24)
エラー E2206 dos1.c 7: 不正な文字 '$' (0x24)
エラー E2206 dos1.c 7: 不正な文字 '$' (0x24)
*** 5 errors in Compile ***
E:\c\Bin>
0674デフォルトの名無しさん
NGNGHPの中身読んでないだろ…
DISP.DATはDREAMCADっていうソフトで作成するんだろ?
しかも、そのスクリプトってDISP.DATに全然関係なくて、
Cじゃなくてawkのスクリプトなんだが…
もしかして、俺釣られてる?
0676デフォルトの名無しさん
NGNG0677699
NGNGさよなら〜〜〜〜〜〜〜〜
0678デフォルトの名無しさん
NGNGイコール記号を含む文字列を変数に入れようとすると、「構文が違います」と言われてしまいます。
イコールを含むようなものは代入できないのでしょうか。
例 SET HOGE="ABC=DEF"
0679デフォルトの名無しさん
NGNG対策としてBU使ったらどうかな?
上は構文エラーになる。=はどこがトークンか判断できないからね。
ちなみに""で括っても意味はないよ。
バッチでは変数はすべて文字列で評価されるからね。
0680デフォルトの名無しさん
NGNGtouchでも使え。
0681デフォルトの名無しさん
NGNGhttp://www.atmarkit.co.jp/fwin2k/win2ktips/419batchdate/batchdate.html
0682682
NGNGREM カレントディレクトリにある拡張子がTXTのファイルをフロッピーにコピーするバッチファイル
@ECHO OFF COPY *.TXT A:\ >NUL
実行した結果ですが、MS-DOS アプリケーションへのショートカット(me)
が出来てるだけ・・・・。
C:\My Documents>me
C:\My Documents>REM カレントディレクトリにある拡張子がTXTのファイルをフロッピー
にコピーするバッチファイル
C:\My Documents>
0683デフォルトの名無しさん
NGNG0684デフォルトの名無しさん
NGNGついでにremの位置も間違えていますよ。
@echo off(DOS3ではecho off)はバッチファイルの一行目が定石です。
文字列表示したいならechoを使いましょう。
echo.で空白行にもなります。
なお、remはラベルで代用して使うこともできます。
そのさい、既存のラベル(gotoで使用するもの)と
衝突しないように注意してください。
e.g.)
:: これはコメントですよ。
その他、goto〜:labelの空白行をコメント領域として使うことができます。
BatchJack使えばコメントをC++風に置けるんですが
Preprocessor使うのは面倒ですよね。
e.g.)
goto label
コメント・・・いや、その件は
:label
最後にプログラミングのドツボはつまらないコーディングミスが大半です。
詰まったら、しばらく忘れて他のことでもしましょう。
0685デフォルトの名無しさん
NGNGよろしくおながいしまつ。
0686デフォルトの名無しさん
NGNGScanCode? 可能だよ。xtrかBUを使いましょう。
ただし、AT互換機の場合は特殊キーは2バイトキーコードなので
1バイト目がNULL(0)であれば2バイト目を読む必要がある。
例)BUによるGetchの例
(xtrの場合はコード変換が入るが、基本は同じ。
面倒ならTurbo C2.0のgetch関数を使って作成...
変数ふたつと条件分岐だけで作成可能)
@echo off
bu -e -nBYTE1 keycode
if "%BYTE1%"=="0" bu -e -nBYTE2 keycode
bu echo %BYTE1%
if not "%BYTE2%"=="" bu echo %BYTE2%
echo\
set BYTE1=
set BYTE2=
それとScanCode表はWindows9x付属の文字コード表を参考にしましょう。
(まあ、!〜~の範囲をデシマルで出力すればいいんだけどね)
0687682
NGNG有難う御座います。
ちょっと、訂正して実行しました。
@ECHO OFF カレントディレクトリにある拡張子がTXTのファイルをフロッピーにコピーするバッチファイル
REM
COPY *.TXT A:\ >NUL
C:\My Documents>REM
C:\My Documents> COPY *.TXT A:\ >NUL
準備ができていません. 読み取り中 ドライブ A:
中止 (A), 再試行 (R), 失敗 (F)?r
C:\My Documents>
C:\My Documents>
これが参考にしてる結果です。
同じですか?
REM 処理確認してコピーする ECHO このディレクトリの中にあるTXTファイルをフロッピーにコピーします。
ECHO ディスクをドライブにセットしてからどれかキーを押してください。
PAUSE >NUL
COPY *.TXT A:\
0688685
NGNGtan x.
MS-DOS附属の BATKEY.COM しかないんでつが...
0689reboot.asm
NGNGCODE segment
assume cs:CODE, ds:CODE
org 100h
START: mov ah,4ch ; B4 4C ;エL
int 21h ; CD 21 ;ヘ!
CODE ends
end START
errorlevel をリセットするコマンド?
0690デフォルトの名無しさん
NGNG2. shellでtemp.batを起動。(プロセスIDをとって、終了まで待機)
3. 数分おきに繰り返す。
というようなプログラムを作ってます。
ところがまれにcmd.exeが終了せずに処理が止まってしまいます。
そこで、途中で止まっているtemp.batを
強制終了させたいのですが、どうすればよいのでしょう?
calc.exeを起動して、終了させるサンプルプログラムを
使ってもうまくいきません。
(calc.exeのかわりにtemp.batを起動・終了させようとしても
起動するだけで終了しません)
「ftp」とだけ記述されたバッチファイルを
起動・終了させる例を示していただけると助かります。
0691690
NGNGここに書き込むのが適当なのか分かりませんが、
よろしくお願いします。
0692デフォルトの名無しさん
NGNG氏ね
0693690
NGNGすみませんでした。失礼します。
0694686
NGNGすみません。リンク提示をしていませんでした。
その他便利なツール紹介も含めて提示します。
- BU / BATCP (バッチで使えば便利なツール)
ttp://hp.vector.co.jp/authors/VA000007/
- BPP (Basic用のプリプロセッサ。モジュール単位での分割などができます。
バッチでも使えます)
ttp://www.noktosoft.com/
- BJ (バッチで構造化プログラミング。でも生成ソースに難がある)
ttp://www.vector.co.jp/soft/dos/util/se000464.html
- xtr (文章整形ツール。未完成で終ってしまって悲しい)
ttp://www.asahi-net.or.jp/~fe3s-mrkm/blind/xtr.htm
- BAT→C/C++トランスレーター
ttp://www.spacesoft.co.jp/
- Turbo C(参考資料)
ttp://hp.vector.co.jp/authors/VA003720/lpproj/special/borland/
0695684
NGNGECHOの文末を改行(端末設定がおかしいのかな?)していない以外は、
それで大丈夫です。
可能であればエラー処理を入れておいたほうがいいです。
ただ、それをやろうとするとほかのツールを使う必要があります。
今は、まだいいかと存じます。
一応、バッチファイル関連のサイトを提示しておきます。
ttp://www25.cds.ne.jp/~kamiken/bach/bach.html
0696デフォルトの名無しさん
NGNGぉぃぉぃ。この程度でVB使うなんてへっぽこ趣味PGの
オレですら考えられないんだが。
どんなプログラム書いているんだかと小一時間問い冷たく(snip)
ってか、ここで質問するならBSLかWinbatchEh関連で質問したほうがいいかと。
一応バッチ系統の言語なんだからさ。
BSL
ttp://hp.vector.co.jp/authors/VA013722/
0698685,688
NGNG丁重なアドバイス、有難う御座います。。。
もうちょっと、学習してみます。。。
0699デフォルトの名無しさん
NGNGよろしくおながいしまつ。
0700デフォルトの名無しさん
NGNG0701デフォルトの名無しさん
NGNGWin32ではリターンコードも32bitなんだな。知らんかった。
0702デフォルトの名無しさん
NGNGECHO は ON
0703デフォルトの名無しさん
NGNG↓にあるよ。
自分で作ったプログラムを公開するスレ
http://pc5.2ch.net/test/read.cgi/tech/1076238917/41-42
0704682
NGNGそのHPの文字に色をつけるバッチファイルですが、
@echo off
@echo off [30mY [1;30mY [0m
@echo off [31mY [1;31mY [0m
@echo off [32mY [1;32mY [0m
@echo off [33mY [1;33mY [0m
@echo off [34mY [1;34mY [0m
@echo off [35mY [1;35mY [0m
@echo off [36mY [1;36mY [0m
@echo off [37mY [1;37mY [0m
echo.
@echo off [40mY [0m
@echo off [41mY [0m
@echo off [42mY [0m
@echo off [43mY [0m
@echo off [44mY [0m
@echo off [45mY [0m
@echo off [46mY [0m
@echo off [47mY [0m
0705682
NGNGA:\>
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
OFF
A:\>
0706682
NGNGOSは、Win98SEです。
98じゃないからですか?
0707デフォルトの名無しさん
NGNG0708デフォルトの名無しさん
NGNGバイナリエディタで[の前が1Bになっているのを確認したか?
@echo offは文頭に1つでいいだろ
>>705
もしかしてコピペの仕方知らないの
0709デフォルトの名無しさん
NGNG使えると思うが、DOS/Vのファイル参照。
ttp://www.mirai.ne.jp/~nave/lib/echo.htm
0710デフォルトの名無しさん
NGNGをブラウザで開くバッチファイルってどう書けばいいんですか?
後ろの数字は年月日時で変わってきます。
0711デフォルトの名無しさん
NGNG%date%を使う
0712デフォルトの名無しさん
NGNG指定した複数のファイルやフォルダの容量を調べて
まとめた容量を表示するにはどうすればいいのでしょうか?
0713デフォルトの名無しさん
NGNGfor /?
%~zI - %I ファイルのサイズに展開します。
あとは足すだけ。
0714デフォルトの名無しさん
NGNGset /?
SET コマンドには、2 つの新しいスイッチが追加されています:
SET /A 式
SET /P 変数=[プロンプト文字列]
/A スイッチは、等号の右側の文字列が、評価すべき数式であることを
指定します。式の評価はごく単純で、次の操作がサポートされます。
操作は、優先順位の高い順に示されています:
() - グループ化
* / % - 算術演算子
+ - - 算術演算子
<< >> - 論理シフト
& - ビット演算子 AND
^ - ビット演算子排他的 OR
| - ビット演算子 OR
= *= /= %= += -= - 代入
&= ^= |= <<= >>=
, - 式の区切り記号
0715デフォルトの名無しさん
NGNGcmd必死だなw
0716デフォルトの名無しさん
NGNG0717教えてください
NGNG一つ目しか実行しません。
なんとかならないものでしょうか。
0718デフォルトの名無しさん
NGNG0719デフォルトの名無しさん
NGNGSETは「環境変数を設定するコマンド」なんだが・・・。
ただしNT系の場合、SETを使ったコンソールの中でのみ有効。
9x系の場合は忘れた。
>>717
意味がよく分からんがとりあえず CALLを使え。
0721デフォルトの名無しさん
NGNG0722でけた
NGNGrem メガネ男を削除する
setlocal
set nydir=C:\bin\winny2b71
:loop
cd %nydir%\down
for %%f in (*) do (
if "%%~zf"=="9152" (
echo deleting... %%~zf %%f
del "%%f"
)
)
cd %nydir%\cache
for %%f in (*) do (
if "%%~zf"=="9489" (
echo deleting... %%~zf %%f
del "%%f"
)
)
rem もしcygwinが入っているなら
sleep 6 && goto loop
0723デフォルトの名無しさん
NGNGstart http://www.asahi.com/
start http://www.yomiuri.co.jp/
って書くと、当然ですが一つのブラウザが開いて読売のWebが
表示されておしまいです。そうではなくて、ブラウザが2つ
起動し、それぞれ朝日、読売とWebが表示できるようにしたい
のですが、DOSのコマンドじゃ無理でしょうか?なにか上手い
方法ありませんか?
0724デフォルトの名無しさん
NGNGstart explorer http://www.yomiuri.co.jp/
0725デフォルトの名無しさん
NGNGバッチファイル押下時に
ファイルに現在の時刻を出力するにはどうすればいいのでしょうか?
またWindowsのシャットダウン時にその時間を出力させることは可能でしょうか?
0726デフォルトの名無しさん
NGNGブラウザの種類を書き忘れました。デフォルトでNetscape Communicator 4.75以上を
使っている場合の話なんです。この場合はどのようにすればよいのでしょう。
IEは対象外としてます。
0727デフォルトの名無しさん
NGNGdate /T > aho.txt
time /T >> aho.txt
shutdown
って書けばいいんでは?
0728デフォルトの名無しさん
NGNGまた指定されたフォルダの指定の拡張子を削除させるには
それぞれどうすればいいのでしょうか
0729デフォルトの名無しさん
NGNG0730デフォルトの名無しさん
NGNG教えてください
ファイルに書き込む時改行しないで続けて横に書き込みたいときどうすればいいのでしょうか?
たとえば
@echo off
echo あいうえお
echo かきくけこ
こう書けば改行されますが
これを
あいうえお かきくけこ
みたいにしたいのです
教えてください
0731デフォルトの名無しさん
NGNG変数にどんどん足していって一度にechoとかやるしかない
0732デフォルトの名無しさん
NGNG>指定されたフォルダの中の指定の容量以下のものを削除したいとき
>また指定されたフォルダの指定の拡張子を削除させるには
両方いっぺんに指定できるバッチ例 for 2000/XP(未検証スマソ)
REM delfile.bat 指定フォルダ 指定ファイルサイズ [拡張子]
@echo off
set dir=.
set size=0
set ext=*
if not "%1"=="" set dir=%1
if not "%2"=="" set size=%2
if not "%3"=="" set ext=%3
for %%F in ( %dir%\*.%ext% ) do (
if %%~zF LEQ %size% del %%F
)
>指定されたフォルダの指定の拡張子を削除させるには
これだけなら、指定されたフォルダ(=c:\test) 指定の拡張子(txt)として
del c:\test\*.txt
で済む罠。
0733デフォルトの名無しさん
NGNG追記しておくと、callつかわなくてもできるけど面倒だな。
ちなみにDOS3以下ではcommand /c [batch.bat]でできるが
子プロセス側の環境変数は親プロセスに継承されない。
>> 730
C言語であればprintfでできます。
バッチの場合はBU[>>694]を入手してprintfでやりましょう。
>>731さんの方法では、環境変数領域が不足することが考えられますので
お勧めしません。ただし。表示個数が少ない、環境変数領域を多めに
指定している場合は除きます。
0734デフォルトの名無しさん
NGNG0735デフォルトの名無しさん
NGNGディレクトリ/ファイルの選択をしないようにするにはどうすればいいのでしょうか?
たとえば
xcopy "C:\test\test1\testfolda" "D:\test\test1\testfolda /s
とあるとき
それがファイルかディレクトリかをいちいち聞いてくるのですが
これを聞かれずに全部ディレクトリで流したいときどうすればいいのでしょうか?
0736デフォルトの名無しさん
NGNGxcopy /?
0737デフォルトの名無しさん
NGNGxcopy /i
0738デフォルトの名無しさん
NGNG記念age
0739デフォルトの名無しさん
NGNG0740デフォルトの名無しさん
NGNGまさか、Explorerから起動してないよね?
cmd.exe / command.comからではないと無理だよ。
0741デフォルトの名無しさん
NGNGおおまじぼけしてしまった。
えっと、無理なので。どうしてもやりたければstartコマンド
使ってください。CDはどうにかなるでしょう。
pathの変更はコマンドライン終了したら保持されません。
名前を指定して実行でパス入れるとフォルダ開けますね。
0742デフォルトの名無しさん
NGNGMS-DOSの学習部屋
http://forum.nifty.com/from40pc/mit/command000.htm
0743デフォルトの名無しさん
NGNG【名前を指定して実行】でcommand.comを実行してDOS窓開いています。
あるコマンドラインツール(コンパイラです)を使うために、ルートから、
あるディレクトリに移行し、pathも追加したいのです。これをバッチでやり
たいのです。毎回コマンドラインでやるのはあまりに大変ですので。
よってcdもpathも、command.com終わらない限り保持したいのですが無理でしょうか>
0744デフォルトの名無しさん
NGNG742様ありがとうございました。【アクセサリ→コマンドプロンプト】でDOS窓を開いた場合は保持できました。
0745デフォルトの名無しさん
NGNGshとかの
prog `cat text.txt`
のようなことをやりたいです。
0746デフォルトの名無しさん
NGNGcommand /? 嫁
0747デフォルトの名無しさん
NGNGバッタだよ とツッコミをいれてほしかったのか?
0748デフォルトの名無しさん
NGNGpathはテキストファイルに保存することができます。
開始・終了用のバッチファイルを作成してやればいいわけで。
[aexit.bat]
@echo off
path>C:\restpath.bat
exit
[aresume.bat]
if exist C:\restpath.bat call C:\restpath.bat
あとはcommand.comに対して右クリック>プロパティ>プログラム
>バッチファイルにaresume.batを実行するようにすればpathが保存されます。
終了はaexitから行ってください。
問題のほうcdなんですが、御所望のツールは知りません。
ディレクトリ(フォルダ)の移動をファイルに保存して
おくようなツールを作ればないこともないのですが・・・。
欲しいのでしたらパブリックドメインで作ります。
著作権主張するようなものではないですからね。
0749デフォルトの名無しさん
NGNG0750デフォルトの名無しさん
NGNGfor /F "usebackq tokens=*" %i in (`cat text.txt`) do @prog %i
とか。 ただし、出力が複数行にわたる場合は結合されずに
1行ごとにprogが実行されるので注意が必要。
0751デフォルトの名無しさん
NGNG@echo off
rem 自分自身の:mainを呼び出す。
rem リダイレクトしたり最後にpauseしたりいろいろ。
call :main %0 > C:\log.txt
pause
echo done
exit
:main
echo hello
■pauseのメッセージを変更する裏技
echo 終了します && pause>NUL
0752デフォルトの名無しさん
NGNG裏技・・・かぁ。。。PC-98全盛期には普通に使われていたのだが。。。
アプリの起動バッチの最後に特定のバッチファイルの起動を記述して
おいて、アプリの中でそのバッチファイルを生成してから終了すれば
メモリ常駐0のランチャになるとか。
0753デフォルトの名無しさん
NGNG指定したディレクトリ以下のファイルをzipに圧縮するのってどうやるの?
cabarcの.zip版みたいなの。
0754デフォルトの名無しさん
NGNG> とか < を表示するにはどうしたらいいですか?
普通にやるとファイルへリダイレクトしてしまいます。
0755デフォルトの名無しさん
NGNG0756754
NGNG0757デフォルトの名無しさん
NGNG>>195-198
0758デフォルトの名無しさん
NGNGecho"hoge@"
で一旦BATファイルを作った後、バイナリエディタで40(@)を00へ書き換えると
hogeだけが表示されるっていうのをどこかで見た。
0759デフォルトの名無しさん
NGNGいますか?
0760デフォルトの名無しさん
NGNG誰か。。。知ってる方いませんでしょうか?
朝までに何とかしないと。。。(涙)
0761デフォルトの名無しさん
NGNG応急処置でよければ、コントロールパネル>システム>環境変数があるんでそこに突っ込みたい定義いれてなんかのボタンを押せば
環境変数をスキに追加できたような。
BATファイルでやっても、窓閉じたら消えちゃうからね。
動的になんかやりたいなら他の人たのむ。
0762デフォルトの名無しさん
NGNGこのルートでジョブを流すなど設定できる
ジョブ管理ソフトって無いでしょうか?
マイクロソフト製品限定で。
よろしくお願いします。
0763デフォルトの名無しさん
NGNGマイクロソフトに訊け。
0764デフォルトの名無しさん
NGNGたとえば hoge.bat in.txt 5 >out.txt を実行すると
copy in.txt+in.txt+in.txt+in.txt+in.txt >out.txt と同様の結果になる。
0765デフォルトの名無しさん
NGNGfoo.exeをラップしてfoo.batをバッチであることを意識しないで呼び出したいんだけど。
0766デフォルトの名無しさん
NGNG0767デフォルトの名無しさん
NGNG0768デフォルトの名無しさん
NGNG0769デフォルトの名無しさん
NGNGファイルを読み込むということをしたことが無いので。
コピーならあるんですが。。。
0770デフォルトの名無しさん
NGNG0771デフォルトの名無しさん
NGNG「スタート」→「ヘルプ」→「キーワード」→for
「コマンドプロンプト」→for /?
0772名無しさん@そうだ選挙に行こう
NGNGこういう事って可能でしょうか?
教えてください。
0773名無しさん@そうだ選挙に行こう
NGNGset fdate=%date:~0,4%%date:~5,2%%date:~8,2%
set ftime=%time%
if not "%ftime:~0,1%"==" " set ftime=%ftime:~0,2%%ftime:~3,2%%ftime:~6,2%
if "%ftime:~0,1%"==" " set ftime=0%ftime:~1,1%%ftime:~3,2%%ftime:~6,2%
echo %fdate% - %ftime%
0774名無しさん@そうだ選挙に行こう
NGNGありがとうございました。
でもそんなに難しいのですね(T-T)
0775名無しさん@そうだ選挙に行こう
NGNG0776名無しさん@そうだ選挙に行こう
NGNG0777デフォルトの名無しさん
NGNG作成されるファイルは、とりあえずテキストファイルで構いません。
0778デフォルトの名無しさん
NGNG0779デフォルトの名無しさん
NGNG.cmdはMSとIBMが仲がよかった時代OS/2 Ver1.xのシェルであるcmd.exe
のために生まれそのままWinNTに引き継がれたもの。
0780デフォルトの名無しさん
NGNG0781デフォルトの名無しさん
NGNG0782デフォルトの名無しさん
NGNG0783デフォルトの名無しさん
NGNGcmd.exe上で標準出力を環境変数に代入する方法って何かありますでしょうか?
あるいは、cmd.exe上でbu.comが動かないのですが、cmd上で動くバージョンとかあるのでしょうか?
0784デフォルトの名無しさん
NGNG0785デフォルトの名無しさん
NGNGコマンドプロンプトから実行するとちゃんと設定されるのに、
ファイルをダブルクリックだとなぜか設定できません。
(echo,pause等は動いてるので、中身の実行自体は
されているようです)
何か特別な事しないとダメですか?
0786デフォルトの名無しさん
NGNGたぶんその設定は一時的なものでダブルクリックしたときのコンソールウィンドウが閉じた時点で設定が破棄されているんじゃないのか?
0787デフォルトの名無しさん
NGNGうーん確かにそんな気もします。
バッチファイルで恒久的にパス設定する方法ってあるのでしょうか?
PCが苦手な多数の人たちの使うPCで、パスを設定しないとまずいので、
できるだけ操作する人に簡単な方法で設定できるようにしたいのです。
0789デフォルトの名無しさん
NGNG自分は以下の.regファイルを作成し、実行してレジストリを直接書き換えてる。
バッチファイルでの解決方法でなくてスマン。
【ユーザ環境変数設定.reg】
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Environment]
"環境変数名"="値"
【システム環境変数設定.reg】
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
"環境変数名"="値"
0790デフォルトの名無しさん
NGNG一度設定すりゃズっと覚えてるから>789の方法でいいと思うんだが
どうしてもバッチファイルでやりたきゃリソースキットのsetxとか試してみ。
ttp://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/setx-o.asp
DOSの時代にもあったねぇ。こんなの。
0791秀博
NGNG/-ニニヘヾヾヾヾヾヾヾヾヾヾ`ー-、
./ー二�e `゙ `゙ ゙`ヾヾヾヾヾヾヾヾ、シナヘ
仁一彡 ゙、ヾ、ヾヾ ゙ヘイ〃メ入
f‐ニ=ツ ,.' - 、 __ チ彡ニ┤
!彡ニヽ ` ー -- 二 _ー_-- 三ニ-}
V;〃ラ /〃ニー  ̄ メ二ーヲ
ハテj ,. ニ、 、 、tヘヾi、 ヾミニソ
.l. レ < (・) > .; .;:' ,.= 、 lミ,‐ヲ
! l 、  ̄ ,! .i < (・) > レ' ノ
l ト 、 ` '"´ ,! l 、  ̄ , : ,j
`1゙ヽ ,! l ` ´ ,.イ ,/
l '; ,.:' (´,、 ,. ヽヾ ,.:' /`
.| ; ,:' ` ´ ′ヽ ,.' /
! ; ,.' _,,,_ __ ; ;' /
', ゙、"ー-ニニニ=ヽ ,.' /
ヽヾ `ー--'''ー-一''′ /
`ヽ、 、 _ノ/
` ー--一''''"´
94年に仙台の緑ヶ丘に住んでいる
わしの妹のところに無言電話をかけてきたやつは許さん
電話会社に通信傍受させるぞ
0792783
NGNGWindows2000にautoexec.bat作って
path=
でpathを追加してます。
もちろん、cmd.exeを開けば、pathをいつでも覚えていますよ。
レジストリでパス設定できるんですね、全然わからんけど・・・・・
0793デフォルトの名無しさん
NGNGそれぞれ抽出可能でしょうか?
0794デフォルトの名無しさん
NGNGfor /f "delims=" %%a in (A.log) do @echo %%a >aaa
for /f "delims=" %%z in (B.log) do @echo %%z>zzz & goto fc
:fc
fc aaa zzz
0795793
NGNGただこの処理では得たい結果が得られませんでした。
したい処理は、
log1.csv の最終行の第一トークンの取得
set old_no=結果
log2.csv の最初の行の第一トークンの取得
set newno=結果
set /a new_no=%newno%-1
if %old_no%==%new_no% goto end_step
goto chk_err
こんな感じでログがきちんと連番で取れているかの確認が行いたいです。
よろしくお願いします。
0796デフォルトの名無しさん
NGNG@echo off
for /f "delims=," %%a in (log1.csv) do set old_no=%%a
for /f "delims=," %%a in (log2.csv) do set new_no=%%a&goto fc
:fc
set /a new_no = new_no - 1
echo %old_no%==%new_no%
0797793
NGNG納得です、for文のdo コマンド部分で&を用いて1回目の処理で抜けるわけですね。
最終行のデータはやはりこのかたちになりますか。
データが多いとき処理時間が気になりますがバッチの限界ですかね。
ともあれ助かりました。
0798デフォルトの名無しさん
NGNGecho 処理選択メニュー
echo 1.在庫データ取得
echo 2.出庫データ取得
echo 3.入庫データ取得
と、表示して処理を選択したいのですが、どうすれば良いでしょうか
教えてください、Win2000です。
0799デフォルトの名無しさん
NGNGchoice /?
0800デフォルトの名無しさん
NGNGset/pとifを使う
0801デフォルトの名無しさん
NGNGDELコマンドで削除するのですが、エラーレベルが取れないようです。
共有違反など、削除に失敗したときのステータスを返したいのですが、
なにか良い方法はありますでしょうか?
よろしくお願いします。
0802デフォルトの名無しさん
NGNG今どうやってやって取れないのかちゃんと書けよ。
0803デフォルトの名無しさん
NGNGまだ未解決か?ってか、一月半も前なら出来てると思うが。
[使い方]
hoge.bat in.txt 5 out.txt
[hoge.bat]
FOR /L %%i IN (1,1,%2) DO type %1 >NUL >> %3
これでできると思うぞ。「>」は無いけどな。
type使うのが味噌かな(笑)
0804デフォルトの名無しさん
NGNGdel foo.txt || goto :error
0805デフォルトの名無しさん
NGNGout.txt が初めから存在したときの結果が >>764 と異なるから、
バッチファイルの初めに del %3 を入れといた方がいいと思う。
0806デフォルトの名無しさん
NGNG確かに。
'>>'は追加書き込みのことだから。
その方がいいですね。
0807デフォルトの名無しさん
NGNG# とあるレジストリのONとOFF
どうやってやればいいの?
0808デフォルトの名無しさん
NGNGEXIST と RENAME 使え
ex.ON.txt
0809デフォルトの名無しさん
NGNGIF EXIST out.txt 〜
で、処理を打ち切るかどうかもその人の考えるところかな。
0810810
NGNG「全選択」→「コピー」→「メーラー自動起動」→「新規メールにペースト」
って感じの流れをbatとかで書けないものでしょうか?
テキストオープン
Ctrl+A
Ctrl+C
メーラー自動起動(ちなみにOutlookExpress)
Alt+F
Alt+N
Alt+M
Tab*3
Ctrl+V
みなたいな感じなんですが。
宛先も自動選択とかできたらなお嬉しいかも。
何とか可能にできないものでしょうか?
0811デフォルトの名無しさん
NGNGwshでSendKey使っとけ
バッチファイルじゃ無理
0812デフォルトの名無しさん
NGNGスレ違いだけどvbsならこんな感じ
set ws = WScript.CreateObject("WScript.Shell")
ws.Run "C:\WINDOWS\hh.exe C:\Program Files\Microsoft Visual Studio\MSDN98\98VS\1041\msdnvs98.col", 1, False
WScript.Sleep 1000 ' 起動待ち
ws.SendKeys "%n"
'WScript.Sleep 100
ws.SendKeys "GetTickCount"
ws.SendKeys "{ENTER}"
0813デフォルトの名無しさん
NGNG> バッチファイルじゃ無理
わからんぞ。
>>810
start mailto:abc@def?subject=タイトル^&body=本文%0A%0D二行目
テキストの内容を読むにはforを使う。
0814810
NGNG思っていた事が全部できちゃって驚きでした( ; ゚Д゚)
なんか色々できそうなので勉強してみます。
みなさんありがとうございました<(_)>
0815デフォルトの名無しさん
NGNG0816デフォルトの名無しさん
NGNG?
0817デフォルトの名無しさん
NGNGantとか使う方が便利らしいが
より気軽と思う。
0818デフォルトの名無しさん
NGNGよろしくお願いします。
0819デフォルトの名無しさん
NGNG0820デフォルトの名無しさん
NGNG別のファイルのタイムスタンプを取得し変数にセット
2つの変数を比較し、違っていたら、何らかの処理を行うということを
やりたいのですが、どのようにしたら実現出来ますでしょうか?
0821デフォルトの名無しさん
NGNG0822デフォルトの名無しさん
NGNG0823デフォルトの名無しさん
NGNGkill *
これ、実際にやったら落ちたw
嫌な事があったら会社のpcに仕込んでみるか
0824デフォルトの名無しさん
NGNGif not %9=="" set receipt=%2,%3,%4,%5,%6,%7,%8,%9
if not %8=="" set receipt=%2,%3,%4,%5,%6,%7,%8
if not %7=="" set receipt=%2,%3,%4,%5,%6,%7
if not %6=="" set receipt=%2,%3,%4,%5,%6
if not %5=="" set receipt=%2,%3,%4,%5
if not %4=="" set receipt=%2,%3,%4
if not %3=="" set receipt=%2,%3
if not %2=="" set receipt=%2
echo パラメーターを設定してください。
1行目で
set の使い方が誤っています。
と怒られます。
パラメーターが入ってない場合に、「,」が2個以上続くからと思われますが、
うまくこのエラーを回避する方法は無いでしょうか。
1晩考えてここまでたどり着きましたが、うまい方法が思いつきません・・・。
0825デフォルトの名無しさん
NGNGこれはどうだ。%10以降もあればそれもreceiptに入れちゃうけど。
それより%1はreceiptに入れなくていいのか?
set receipt = %2
:Loop
if "%3" == "" goto End
set receipt = %receipt%,%3
shift
goto Loop
rem --------------
:End
0827デフォルトの名無しさん
NGNG一括コンパイルしたいのですが、このようなバッチプログラムは作成可能でしょうか?
Dir *.vbp /B /S
で一覧は作成できるのですが、この結果を
VB6 /m プロジェクト.vbp
といった感じでVB6.exeに渡す方法がわかりません。
0828デフォルトの名無しさん
NGNGsleep 180 && c:\windows\media\tada.wav
0829デフォルトの名無しさん
NGNGWindows2000で、指定秒だけ待機させたいのですが、
choiceが使えなかったので悩んでます。
どのように書けば待機して次の行にいけるようになりますか?
0830デフォルトの名無しさん
NGNG重いけど
0831デフォルトの名無しさん
NGNG0832デフォルトの名無しさん
NGNG0833デフォルトの名無しさん
NGNGって、ハングアップしちゃったじゃんかよ。(’Д’;)
0834デフォルトの名無しさん
NGNGありがとうございます!助かりました!
0835デフォルトの名無しさん
NGNG同じドライブのなかに下記のようにユーザーごとにアクセスできるようにフォルダを作成しました。
d:\server\data\username
d:\server\data2\username_data
それをx:ドライブとy:ドライブにしてユーザーごとに表示させたくて、
net use x:server\%username% /yes
net use y:server\%username_data% /yes
とやってみたのですが、Xはうまくいったのですが、Yはうまくいきませんでした。
初心者な質問ですみません。よろしくお願いいたします。
0836デフォルトの名無しさん
NGNGファイルを同じ名前のフォルダに移動
各フォルダに移動しながら中のファイルを操作
って流れのものを作りたいんですけど可能なんでしょうか?
同名のフォルダを作ったり作成後のフォルダ名で移動する方法がわかりません。
なんとかなりますか?
0837デフォルトの名無しさん
NGNGファイルと同名のフォルダ作れないから名前変えて、移動じゃなくてコピーだけど
こんな感じでできる
0838デフォルトの名無しさん
NGNGうまくいかなかったときのエラーメッセージは?
0839837
NGNG0840デフォルトの名無しさん
NGNGnet use y:server\%username%_data /yes
0841デフォルトの名無しさん
NGNGfor %%f in (*.*) do mkdir "tmp%%f" && copy "%%f" "tmp%%f" || goto :error
:error
echo failed
0843デフォルトの名無しさん
NGNG終了はタスクマネージャで終了するかログオフで行えればいいんですが。
0844デフォルトの名無しさん
NGNG例えば
あるフォルダとLhacaなどの圧縮ファイルがあって
そのフォルダをまるごとLhacaなどを使用して自動的に圧縮させて
違うフォルダに日付をつけて格納させたいのですが
こういうのって可能でしょうか?
0845デフォルトの名無しさん
NGNG0846デフォルトの名無しさん
NGNG0848デフォルトの名無しさん
NGNG標準じゃ無理。
Cygwin入れてzipコマンド使えばコマンドラインで処理できる。
どうしてもLhacaでやりたいならWSHとSendkeys使えばいい。
0849デフォルトの名無しさん
NGNGEXEに渡す処理はどう書けばいいですか?
C:\conv.exe AAA.bmp AAA.jpg
C:\conv.exe B.bmp B.jpg
C:\conv.exe CC.bmp CC.jpg
WinXPです。
0850デフォルトの名無しさん
NGNGbmpを探してconv.exeでjpgを出力だったら
for %%f in (*.bmp) do C:\conv.exe "%%f.jpg"
みたいなかんじ
これだファイル名がAAA.bmp.jpg みたいになるけど
0851デフォルトの名無しさん
NGNGini c:\myapp.ini set SECTION IDENT=VALUE
見たいな感じで使えるもの
0852デフォルトの名無しさん
NGNGnircmdc.exe inisetval "c:\windows\test.ini" "section1" "TestValue" "1"
0853デフォルトの名無しさん
NGNGよこからですが、これは便利っすね〜、いろいろ出来て。
0854デフォルトの名無しさん
NGNG@echo off
set ret=label1
set arg=aaa
goto sub
:label1
echo %arg%
set ret=label2
set arg=hello
goto sub
:label2
echo %arg%
goto exit
rem 環境変数%arg%に%arg%%arg%をセットする
rem 入力 %arg%
rem 出力 %arg%
:sub
set arg=%arg%%arg%
goto %ret%
:exit
0855デフォルトの名無しさん
NGNG0857デフォルトの名無しさん
NGNG0858デフォルトの名無しさん
NGNG0859デフォルトの名無しさん
NGNGcall で呼ぶと、帰ってくるまでexitできなくて。
0860デフォルトの名無しさん
NGNGobjWS = CreateObject(WscriptShell)
objWS.Run = 呼び出すプログラムへのパス)
という別のをCALLするとかしか思いつかん。
ERORRLEVELで
0861デフォルトの名無しさん
NGNG0862デフォルトの名無しさん
NGNGバッハ?
0863デフォルトの名無しさん
NGNG一週間前に同じことをしようとしたんだが、結局vbsにした。
で、>>860に落ち着いた。しかし、なんか統一感がないので、処理を全部vbsで書いた。
0864デフォルトの名無しさん
NGNG0865デフォルトの名無しさん
NGNGwindows3.1がモーツァルトだとしたらそうだ。
0866デフォルトの名無しさん
NGNGstart
0867デフォルトの名無しさん
NGNG一回startで試したんですけど、パスを""で囲むとだめだったんですね。
0868863
NGNG横からありがとう。
START "タイトル" プログラムへのパス
でできた。
(雑誌の裏にでも書いておくべきメモとして。)
START ["タイトル"] [/Dパス] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NOMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/WAIT] [/B] [コマンド/プログラム] [パラメータ]
**コマンドにつけた"引用符"が、タイトルと混同されるみたいだ。
0869デフォルトの名無しさん
NGNGできるなら、ツール等を使わず、Windows環境内で実行できたらいいのですが。
環境は2000とXPです。
0870デフォルトの名無しさん
NGNGgpedit.msc
0872デフォルトの名無しさん
NGNGを可変にする方法を教えて下さい。
ftp -s:UPLOAD.txt
がバッチファイルの中身で、UPLOAD.txt 内には
OPEN 〜
USERID
PASSWORD
PUT C:\ファイル名
QUIT
と書いてます。
ここのファイル名を可変にしたいです。
実際にはその日の日付が入るのですが
UPLOAD.txt 自体がバッチファイルでは無いため
%date:~2,4%%date:~7,2%%date:~10,2%などとしても
dateが使えなくて困ってます。
0873デフォルトの名無しさん
NGNGechoを使ってUPLOAD.txtを生成すれば済む
0875デフォルトの名無しさん
NGNG何か良い方法はありませんか。
net timeだと分数までしかでないので、使えないんですよね。
osはw2kです。
0876デフォルトの名無しさん
NGNG何がしたいかも書くと吉
0877875
NGNG自分の使用しているサーバとタイムサーバの時間が合っていることを
見た目でわかるようにしたいのです。
net time のsetを使えば合うことは知っているけど、それを知らない人にも
合ってるよねってことを確認させたいのです。
0878デフォルトの名無しさん
NGNG俺だったらこうする。↓
ECHO "時間あってます"
0879デフォルトの名無しさん
NGNG0880デフォルトの名無しさん
NGNGdir q:\* /s /b > %LABELNAME%
0882デフォルトの名無しさん
NGNG駄目な理由が分からない。
説明汁
0883デフォルトの名無しさん
NGNG0884デフォルトの名無しさん
NGNG0885デフォルトの名無しさん
NGNGバッチ内部の環境変数はそのバッチが終われば消えると思っていたので、今まで記述したこと内のですが。
0886デフォルトの名無しさん
NGNG他のプロセスが親だった場合は知らないけど。
0887デフォルトの名無しさん
NGNG親から子をCALLしている場合ですね。逆に見れば、自己完結のバッチには不要ということですかね。
0888869
NGNGgpedit.mscでシャットダウン時にスクリプトを実行する方法を教えていただいたのですが、
どうもうまく実行できないようです。
シャットダウン時にネットワークドライブの切断をするバッチ、
起動時にネットワークドライブに接続をするバッチを指定しているのですが、
スクリプトを実行中の文字は確認できるのですが実行できていないようです。
バッチ自体は手動で起動してみると正常に実行できるので不備はないと思うのですが、
何が原因でしょうか?アドバイスよろしくお願いいたします。
0889デフォルトの名無しさん
NGNGエラーコードをファイルに出力して原因を調べたらいいのではないかと。
0890872
NGNG今度はFTPサーバーに置いたバッチをクライアントから実行したいです。
net use \\サーバー名\バッチを置いたフォルダ /user:ユーザ名 パスワード
でFTPサーバーに接続してから
call \\サーバー名\バッチを置いたフォルダ\バッチファイル名
と書いたバッチファイルをクライアントで実行したところ
open 〜
の時点でinvalid commandというエラーがでてしまいます。
クライアントからサーバーのバッチファイルを実行することはできないのでしょうか?
0891デフォルトの名無しさん
NGNGtelnet
0892872
NGNGもう少し詳しく教えてもらえませんでしょうか。
telnetでLAN接続されているFTPサーバーに接続することはできるのですが、
そこから>>872のように、さらに別の(LAN接続されていない)FTPサーバーに
ログインしなければなりません。その方法がわかりません。
0893869
NGNGどうして…orz
0894デフォルトの名無しさん
NGNGは俺も知りたい。
0895デフォルトの名無しさん
NGNG>>880
0896デフォルトの名無しさん
NGNGで可変長で取れないよ。スペース検索してとか面倒だし。
一発で取れるのないの?
0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNGありがとう。
パイプにforをつなげられるのか。
MSのスクリプトは気味の悪い構文が多いなぁ・・・
0899デフォルトの名無しさん
NGNG無計画な増改築を繰り返しているからなー。
0900デフォルトの名無しさん
NGNGテキストファイルに出力する方法ってありますか?
たとえば、
dir > a.txt
↓
ここでバッチを一時停止させる(A処理)
↓
文字列を打ち込むと自動でa.txtに追記させるような方法(B処理)
↓
エンターキーか何かで続きのバッチ処理を再開させる(C処理)
↓
続きのバッチが流れる
(A・B・C)処理の方法ってありますか?
0901デフォルトの名無しさん
NGNG@echo off
pause
copy con %1
使い方はhoge a.txt、入力の終了はCTRL+Z。
0902900
NGNGThanks.
画面の文字列は”%1”もしくは”%%1”で記憶できるんですね。
願わくば入力の終了をCtrl+Zではなくエンターキー一回で
できれば言うことないんですが・・・。
0903デフォルトの名無しさん
NGNG君、一から勉強しなおした方がたぶん早いよ。
0904900
NGNG0905デフォルトの名無しさん
NGNGバッチファイルをダブルクリックで実行するとそのexeは正常に動くんですが
windows→ファイル名を指定して実行でバッチファイルをフルパスで
起動すると、そのexeがうまく動いてくれません。
何が原因かがわからず困っています。
どうかご教授を・・・。
0906デフォルトの名無しさん
NGNG%~d0 && cd %~p0
0907905
NGNG私に対しての答えでしょうか?
対策としては、これを追加すれば出来るかもしれないということでしょうか?
バッチは詳しくわかってないので、%~d0 && cd %~p0が何を
表しているか、わからないのですが・・・。
0908デフォルトの名無しさん
NGNGWindowsのヘルプくらい見れるだろ。
0909デフォルトの名無しさん
NGNGSTART testprogram.exe
だと思いますが、プログラムを終了するコマンドはありますか?
0911デフォルトの名無しさん
NGNGKILL testprogram.exe で終了できるんですね。ありがとうございます。
もうひとつお願いします。
バッチ実行中に、「終了するには10秒以内にFのキーを押してください」と表示させて
10秒以内にFのキーを押したときだけEXITに進んでバッチファイルを終了し、
10秒以内になんのキーも押さないときにはただ次の行に進ませるにはどうすればいいですか?
0913デフォルトの名無しさん
NGNG0914デフォルトの名無しさん
NGNGBAT の検索結果 約 16,600,000 件中 1 - 10 件目 (0.09 秒)
WSH の検索結果 約 678,000 件中 1 - 10 件目 (0.16 秒)
BATの圧勝。
0915デフォルトの名無しさん
NGNG用途次第
0916911
NGNGCHOICE /C:FN /T:2,10 終了するには10秒以内にFのキーを押してください
IF ERRORLEVEL 1 GOTO END
:END
EXIT
0917911
NGNGCHOICE /C:FN /T:2,10 終了するには10秒以内にFのキーを押してください
IF ERRORLEVEL 1 GOTO END
REM ここに入れるプロセスは現在作成中
:END
EXIT
0918デフォルトの名無しさん
NGNG0919911
NGNGプロンプト画面が一瞬だけ表示されてなんかエラーメッセージみたいなのが
表示されるんだけどすぐ消えるので読み取れない。
プロンプト画面が消えないようにしてエラーメッセージを読むにはどうすればいいですか?
0920デフォルトの名無しさん
NGNGコマンドプロンプトを先に起動させておいて、その中でバッチを実行するとメッセージが読める。
俺んとこではこう表示される。
CHOICE: タイムアウト時の既定値が指定された(または既定値の)選択肢にありません.
なのでこうしろ。
CHOICE /N /C:NF /T:N,10 終了するには10秒以内にFのキーを押してください
IF ERRORLEVEL 2 GOTO END
ところでEXEとかの実行可能ファイルはstartぬきでも呼べるよ。
0921デフォルトの名無しさん
NGNGバッチファイル側でコプロセスの終了を待たずに次に進む->startあり
0923デフォルトの名無しさん
NGNG0924デフォルトの名無しさん
NGNGつまりお前には実行できなかったということだな
0925デフォルトの名無しさん
NGNGわざわざこんな地味なスレ荒さんでも
0926デフォルトの名無しさん
NGNGそうです。
>>925
フォローありがとうございます。って荒らしてんの、漏れじゃないですよね(;´Д`)
0927デフォルトの名無しさん
NGNG実行したいショートカットをDOS窓へドラッグドロップ
リターン
DOS窓でできればバッチも同じ
0929デフォルトの名無しさん
NGNGライブラリがあるけど、汎用性の問題から使えないなぁ。
0930デフォルトの名無しさん
NGNGstart でも問題なく開けるぞ。 >>406 みれ。
0931デフォルトの名無しさん
NGNGタスクで決まった時間にこの.batファイルを実行しようとするとピクリとも動かない。
Dドライブにしまった.batファイルをタスクで実行するにはそのままじゃだめなの?
もしかして.batファイルはタスクでは動かせないのだろうか。
0933デフォルトの名無しさん
NGNGバッチ内容を手動で行うと正常動作確認できたのですが、
バッチにて処理を行うと、putやgetの所で
FTPexe アプリケーションエラー、メモリがwrittenになることが・・・
とエラーが出るのですが原因が分かりません。
鯖再起動はサービスが24h稼動の為止める事が出来ません。
原因を教えてください。
0934デフォルトの名無しさん
NGNGちなみに、タスクってWindowsのタスクスケジューラですか?
Win2000とかならば、タスクスケジューラのログとか見れば
場合によっては分かると思います。
あとは、アプリケーションのコマンドとか呼び出してるならば
パスとかの環境変数とかが足りない等々、私はだいたい
その辺で嵌るんで確認してみてはどうでしょうか。
0935デフォルトの名無しさん
NGNG原因はわかんないけど wput に乗り換えてみたらどうですか?
ソースもあるから、変なこと起きても対処しやすいし。
0936デフォルトの名無しさん
NGNG漏れは>>934に加えてNT系OSでは .bat じゃなくて .cmd にしてるけど・・・
.bat って command.com が動きそうで嫌だから。
0937デフォルトの名無しさん
NGNGatコマンドで登録したらうまくいくかもね。
0938デフォルトの名無しさん
NGNGバッチでFTPexeは起動できるけど
バッチでFTPexeを直接操作できないよね
ftp -s: のことだろうか?
具体的に何やってるか書かないと意味不明
0939931
NGNG>>934
はい、Windowsのタスクスケジューラです。OSはWin2000です。
ログが見れることをはじめて知ったので見てみます。
環境変数はまだ使わないで、del D:\フォルダ名\ファイル名.dbのように
絶対指定にしています。
>>936
.cmd を調べてみます。
>>937
atコマンドをググりましたがよくわかりません。帰ってきたらもういちど
じっくり検索してみます。
0940デフォルトの名無しさん
NGNG>環境変数はまだ使わないで、del D:\フォルダ名\ファイル名.dbのように
>絶対指定にしています。
おまえ >>934 の言った環境変数の意味分かってるか?
0941939
NGNGタスクスケジューラの設定がいけなかったようです。直したつもりです。
プログラムもだめなところがあるかもしれませんが、タスクの
時間がきたら動くか確認します。ありがとうございました。またよろしくお願いします。
>>940 用語も覚えるようにします。
0942933
NGNG新たに何かを入れる時は申請通さないといけないので
見送りました
>938
バッチでFTPコマンド使う場合は-s:コマンドテキストが
当然だと思い説明を省きました。
FTP.exeをw2ksp4のバージョンの新しいのを
コピーして動かしてみた所正常に動きました。
レスありがとうございました。
0943デフォルトの名無しさん
NGNGプログラミングとなんも関係ないな
アプリの使い方ならWin板か初心者板にでも逝けよ
0944デフォルトの名無しさん
NGNG0945デフォルトの名無しさん
NGNG可能。
やり方は、こいつが書いてくれるだろう
↓
0946デフォルトの名無しさん
NGNG0947デフォルトの名無しさん
NGNGそれをバッチファイルプログラミングと呼んでいいものか
0948デフォルトの名無しさん
NGNG0949デフォルトの名無しさん
NGNG0950デフォルトの名無しさん
NGNG中か外かは関係ない。
0951デフォルトの名無しさん
NGNG0952デフォルトの名無しさん
NGNG0953デフォルトの名無しさん
NGNGecho main() {puts("hello, world");} > hello.c
bcc32 hello.c
hello
0954デフォルトの名無しさん
NGNG0955デフォルトの名無しさん
NGNG素直にリネームソフト使った方がよさそうだね。
年月日時分秒.拡張子 とかバッチじゃ無理っぽい
0956デフォルトの名無しさん
NGNGset d=%date%
set d=%d:~0,4%%d:~5,2%%d:~8,2%
set t=%time%
if not "%t:~0,1%"==" " set tt=%t:~0,2%%t:~3,2%%t:~6,2%
if "%t:~0,1%"==" " set tt=0%t:~1,1%%t:~3,2%%t:~6,2%
echo %d%%tt%
Wikiかなんかのまとめサイトが欲しい今日この頃
0957デフォルトの名無しさん
NGNG新規フォルダ作成時の
名前に使いたいと思ってます。
それで下のように考えたのですが、
(コマンド) > kakuno.txt
md (kakuno.txtに書かれている文字列)
この2行目はどのように書くべきでしょうか?
0958デフォルトの名無しさん
NGNGmd %%i
)
0959デフォルトの名無しさん
NGNGありがとうございます。
もうひとつ聞かせてください。
do の部分で、md の後 新規作成ディレクトリへの
xcopy を実行するには、どのように書いたらいいのでしょうか?
0960デフォルトの名無しさん
NGNGmd %%i && xcopy c:\src\* %%i\
)
0961デフォルトの名無しさん
NGNGありがとうございました。
0963デフォルトの名無しさん
NGNGstart \\192.168.*.*
と書いてバッチファイルとして保存したもので
相手先の共有フォルダの一覧を開こうとしたら、
フォルダが開かれないまま延々とループして終わりません。
/w オプションを付加したり、頭に @echo off を入れたり、
2行目に cls だの pause だのを入れても同じです。
また、「ファイル名を指定して実行」から当該コマンドを実行しても同様の動きです。
ただ、DOSプロンプトからバッチファイルを実行ないし同様のコマンドを実行すると
思った通りの動作をします。
事前にWin98のFirstEditionで試したところ
正常動作して「完了」ウインドウになっていたんですが…
あと、ping \\192.168.*.* だと正常に動いて完了になるんですよね…
0964デフォルトの名無しさん
NGNGnet use x: \\hostname\share
じゃないのか?
0965デフォルトの名無しさん
NGNGバッチのファイル名を start.bat にしていると思われ。
自分自身を呼び出すから他の名前にすれ
0966デフォルトの名無しさん
NGNG@echo off
dir c: | for /f "usebackq tokens=5" %%i in (`find "ボリューム ラベル"`) do set LABELNAME=%%i
echo LABELNAME=%testfile%
を実行したところ
C:\>set LABELNAME=WindowsXP
LABELNAME=
C:\>
となってうまくいきません。echo offしてるのになぜかコマンドが表示されてしまい
結果としてset LABELNAME=でうまく代入されていません。何がいけないのでしょうか?
環境はWinXP Pro SP2のcmd.exeです。
0967デフォルトの名無しさん
NGNGは
echo LABELNAME=%LABELNAME%
の間違いでした。このコードで>>966の現象が発生します。
0968デフォルトの名無しさん
NGNGfindからfindstrに
0969デフォルトの名無しさん
NGNGfindstrでも変わらずです・・・
0970デフォルトの名無しさん
NGNGうちでも同様でした。(xphome)
dir c: | for 〜 は
dir c: | cmd /c for 〜 と解釈されるのかな?
子プロセスで環境変数セットしても親には影響しないってことみたい・・・
パイプをやめれば正常に動きますね〜
dir c: > temp.txt
for /f "usebackq tokens=5" %%i in (`find "ボリューム ラベル" temp.txt`) do set LABELNAME=%%i
0971デフォルトの名無しさん
NGNGcmd.exe 5.0.2195.6824(2KSP3+KB835732)
for /f "usebackq delims=" %%a in (`type %1 `) do @echo %%a
%1がASCIIのみだと正常に処理されるが、
%1に日本語を入れると、「指定されたファイルが見つかりません。」となる時がある
例:"C:\WINNT\グリーン ストーン.bmp"
0972デフォルトの名無しさん
NGNG0973デフォルトの名無しさん
NGNGC:\>for /F "usebackq delims=" %a in (`type "C:\新規.txt"`) do @echo %a
指定されたファイルが見つかりません。
C:\>for /F "usebackq delims=" %a in (`type "C:\新規.txt" `) do @echo %a
新規.txtの中身
とエラーが出ないことがあるので、後ろに半角スペースを付けた
ここらへんも何故そうなるかが分らないんだよな
0974デフォルトの名無しさん
NGNG0975デフォルトの名無しさん
NGNG両方をそこそこ使えるようにするのが効率いい。
0976デフォルトの名無しさん
NGNG0977デフォルトの名無しさん
NGNG0978デフォルトの名無しさん
NGNGクライアント(Win2000)のIPアドレス・デフォルトG/W・DNSなんかを
変えたいんだが、クライアントの操作ユーザーがUser権限なんスよ。
そこで、バッチプログラムでダブルクリック一発で変更させたいんだが、
そのファイルを実行させるときだけ、Runasコマンド等で
一時的にAdministrator権限で動かせることはできるの?
漏れの考え方では、
administratorのパスワードが書いたファイルを読み込み、
変数やら何チャラに保存し、それを使用してRunasを実行させ、cmdを実行
↓
callやら何やらでnetsh等のコマンドでTCP/IPを変更する
↓
最後にadministratorのパスが書かれたファイルを削除する
ってな事を考えてるんだけど、そもそも出来るの?
0979デフォルトの名無しさん
NGNGできそう。
0980デフォルトの名無しさん
NGNG0981デフォルトの名無しさん
NGNGハッカーに聞きたい。
http://pc5.2ch.net/test/read.cgi/tech/1104317350/
レス数が950を超えています。1000を超えると書き込みができなくなります。