【.cmd】 バッチファイルスクリプト %9 【.bat】
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2012/04/21(土) 22:37:58.49質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
前スレ
【.cmd】 バッチファイルスクリプト %8 【.bat】
http://toro.2ch.net/test/read.cgi/tech/1315844420/
【.cmd】 バッチファイルスクリプト %7 【.bat】
http://hibari.2ch.net/test/read.cgi/tech/1298873550/
【.cmd】 バッチファイルスクリプト %6 【.bat】
http://hibari.2ch.net/test/read.cgi/tech/1277465356/
【.cmd】 バッチファイルスクリプト %5 【.bat】
http://pc12.2ch.net/test/read.cgi/tech/1242268171/
【.cmd】 バッチファイルスクリプト %4 【.bat】
http://pc12.2ch.net/test/read.cgi/tech/1229955189/
【.cmd】 バッチファイルスクリプト %3 【.bat】
http://pc11.2ch.net/test/read.cgi/tech/1217860043/
【.cmd】 バッチファイルスクリプト %2 【.bat】
http://pc12.2ch.net/test/read.cgi/tech/1197881068/
【.cmd】 バッチファイルスクリプト %1 【.bat】
http://pc11.2ch.net/test/read.cgi/tech/1178281991/
0002デフォルトの名無しさん
2012/04/21(土) 22:42:13.450003デフォルトの名無しさん
2012/04/21(土) 22:45:04.45ほらみろ
0004デフォルトの名無しさん
2012/04/21(土) 22:46:15.83ライブラリを作ろう。
0005デフォルトの名無しさん
2012/04/21(土) 23:35:46.520006デフォルトの名無しさん
2012/04/22(日) 12:01:47.420007デフォルトの名無しさん
2012/04/22(日) 13:22:07.65初心者乙
@echo ^>^>1乙
0008デフォルトの名無しさん
2012/04/22(日) 13:52:39.882012/04/22 12:01:47 21 1乙
0009デフォルトの名無しさん
2012/04/26(木) 20:25:04.13でXXXの条件が%%iがsで終わっていたらというのにしたいんですがどうすればいいですか?
c:\windows, c:\usersなどはexec1
それ以外ならexec2に分岐したいのです
0010デフォルトの名無しさん
2012/04/26(木) 22:01:31.720011デフォルトの名無しさん
2012/04/26(木) 22:22:55.380012デフォルトの名無しさん
2012/04/26(木) 23:30:31.05set s="%%~i"
call :sub "%%~i"
)
exit
:sub
if "%s:~-2%=="s" (exec1 "%~1") else (exec2 "%~1")
exit /b
0013デフォルトの名無しさん
2012/04/27(金) 13:48:36.220014デフォルトの名無しさん
2012/04/27(金) 22:03:54.88pushd X:\エロ画像 || goto :eof
rem カレントディレクトリのファイルをMD5ハッシュ値にリネーム 要md5sum
for %%i in (*) do for /f "usebackq delims= " %%j in (`md5sum "%%~i"`) do ren "%%~i" "@%%j%%~xi"
rem 16個のサブフォルダに振り分け
for %%i in (0 1 2 3 4 5 6 7 8 9 A B C D E F) do (mkdir @%%i&move @%%i*.* @%%i\)
mkdir 重複&move *.* 重複\
rem 画像をランダムに開く 要ruby
ruby -x "%~f0"
popd
goto :eof
#!ruby
`dir /s /b /a:-d`.split("\n").shuffle.each{|i| `start "" "#{i}"`; gets}
0015デフォルトの名無しさん
2012/04/28(土) 02:33:34.780016デフォルトの名無しさん
2012/04/29(日) 06:35:51.060017デフォルトの名無しさん
2012/04/29(日) 11:05:59.710018デフォルトの名無しさん
2012/04/30(月) 23:11:04.33これを変数に格納する事ってできますか?
C:\>a.bat ^^"&time /t
『a.bat』
================================
@echo on
set AAA=%1
set AAA=%~1
set "AAA=%1"
set "AAA=%~1"
================================
結果
================================
C:\>set AAA=" & time /t
23:08
C:\>set AAA=" & time /t
23:08
C:\>set "AAA=^" & time /t"
23:08
C:\>set "AAA=^" & time /t"
23:08
================================
0019デフォルトの名無しさん
2012/05/01(火) 13:51:05.530020デフォルトの名無しさん
2012/05/03(木) 15:46:04.57とやると途中からecho %i.%iとやったのと同じになるんですが
誰か理由わかりますか?
0021デフォルトの名無しさん
2012/05/03(木) 15:50:14.86じゃなくて
echo %i.[表示がおかしくなる直前のファイル名]
みたいな感じになってました
0022デフォルトの名無しさん
2012/05/03(木) 16:30:17.03ファイルにリダイレクトしても?
0023デフォルトの名無しさん
2012/05/03(木) 17:14:44.71十数行までは普通に出るんですが、途中からおかしくなる。
0024デフォルトの名無しさん
2012/05/03(木) 17:25:11.77%~fi
はどう?
0025デフォルトの名無しさん
2012/05/03(木) 17:54:55.42わからないのは
echo %i では問題ないのに
echo.%i 他スペース以外だと二重になってしまうことです。
この辺の理屈が知りたい。
0026デフォルトの名無しさん
2012/05/03(木) 18:49:34.220027デフォルトの名無しさん
2012/05/03(木) 18:52:31.26osのよるんじゃね?
0028デフォルトの名無しさん
2012/05/03(木) 19:07:47.32%iが空白だったときに echo は ONです っての見たくないから
ピリオド打つの癖になってるもんで。
0029デフォルトの名無しさん
2012/05/03(木) 19:18:08.15とかでもおかしい表示になってたのにデバッガ開いたら正常になった
原因はfor臭い
0030デフォルトの名無しさん
2012/05/03(木) 19:23:35.98XPでよくコマンドプロンプト表示がバグることがあるけど、
あれのMS公式見解ってないのかね?
エンドユーザにPCの情報採取してもらうのに
dir/a|findstr ほにゃらら
とかやらせて、DOS窓のスクショを送ってもらうんだけど
前にコンソール表示のバグらしき事象に騙されたことがあったんだけど、
リダイレクトで万が一既存ファイルを上書いてしまうリスクを考えると、
エンドユーザにリダイレクトはさせたくないんですよね
0031デフォルトの名無しさん
2012/05/03(木) 19:26:59.27ならよかんべ
0032デフォルトの名無しさん
2012/05/03(木) 19:31:38.85ピリオドはやめとけ
echo > echo.txt
for %i in (txt) do @echo.%i
0033デフォルトの名無しさん
2012/05/03(木) 19:34:57.69\もやめとけ
md echo
echo >echo\aaa.txt
for %i in (aaa.txt) do @echo\%i
0034デフォルトの名無しさん
2012/05/03(木) 20:08:24.030035デフォルトの名無しさん
2012/05/03(木) 20:14:10.010036デフォルトの名無しさん
2012/05/05(土) 00:00:21.170037デフォルトの名無しさん
2012/05/05(土) 01:15:10.650038デフォルトの名無しさん
2012/05/05(土) 01:50:32.710039デフォルトの名無しさん
2012/05/05(土) 22:12:33.580040デフォルトの名無しさん
2012/05/26(土) 11:26:56.87それらをbatファイルから入力させることは可能でしょうか?
0041デフォルトの名無しさん
2012/05/26(土) 12:42:34.47SET /? をよく読むんだ
0042デフォルトの名無しさん
2012/05/26(土) 14:51:14.05コマンドプロンプトで動作するプログラム(mysqlとかsqlite3)を実行中に標準入力を受け付けてるところに指定した文字列を入力したいだけなんですが
set pass=1234
mysql -u root -p
REM パスワード入力
REM ここでパスワード入力待ちになる
REM ここで変数passを入力したい
0043デフォルトの名無しさん
2012/05/26(土) 15:05:15.12標準入力のリダイレクトでダメなら、バッチファイルだけでは辛いかも
0044デフォルトの名無しさん
2012/05/26(土) 18:16:39.010045デフォルトの名無しさん
2012/05/27(日) 07:50:43.58set pass=1234
echo pass|mysql -u root -p
ではどうですか?
0046デフォルトの名無しさん
2012/05/27(日) 10:48:16.26試してみたのですが入力されませんでした
0047デフォルトの名無しさん
2012/05/27(日) 11:32:20.43バッチファイルにパスワードを晒すぐらいなら、普通に
mysql -u root --password=1234
でやれよw
0048デフォルトの名無しさん
2012/05/27(日) 12:18:47.200049デフォルトの名無しさん
2012/05/27(日) 12:34:45.05mysql -u root -pパスワード データベース名 < hoge.sql
0050デフォルトの名無しさん
2012/05/27(日) 13:45:14.710051デフォルトの名無しさん
2012/05/27(日) 15:15:53.180052デフォルトの名無しさん
2012/05/27(日) 15:44:07.22別の所で聞いてきます
0053デフォルトの名無しさん
2012/05/27(日) 15:48:56.09005445
2012/05/27(日) 16:10:13.24ごめん環境変数は参照時は%で括るんだったorz
set pass=1234
echo %pass%|mysql -u root -p
0055デフォルトの名無しさん
2012/05/28(月) 15:47:33.84セキュリティgdgdになるけど
0056デフォルトの名無しさん
2012/05/28(月) 18:24:18.67>>41が答えだろ
set /p pass=enter password
mysql -u root --password=%pass%
0057デフォルトの名無しさん
2012/05/29(火) 00:38:44.56まあ>>40が不明瞭だしその後のレスも結局何がしたいのか説明できていないが
0058デフォルトの名無しさん
2012/05/29(火) 01:50:20.43set /?
を,見ればすぐ分かることを仕込んでどんな相手なのか判断してたのかと
思って読んでたよw
0059デフォルトの名無しさん
2012/05/29(火) 02:18:43.400060デフォルトの名無しさん
2012/06/13(水) 18:47:03.350061デフォルトの名無しさん
2012/06/13(水) 21:07:40.690062デフォルトの名無しさん
2012/06/13(水) 22:10:33.280063デフォルトの名無しさん
2012/06/21(木) 02:28:07.82大量にデータがあるファイル内の[開始文字列]と[終了文字列範囲内]の文字を抽出するにはどうしたらいいのでしょうか。
分かりやすく例えますと、htmlファイル内の
検索範囲開始文字列:http
から
検索範囲終了文字列:.html
までをファイルに追記書き出しすると言うほうが分かりやすいでしょうか。
通常のhtmlファイル内には複数のURLがあるので、
私が指定している方法ですと、htmlファイル内のURLが
指定ファイルに列挙される形になります。
結果のファイルサンプルです。
----------result.txt----------
http://hogehoge.com/index.html
http://hogehoge.com/hello_world.html
http://hogehoge.com/hogehoge.html
http://hogehoge.co.jp/index.html
http://hogehoge.co.jp/programming.html
http://hogehoge.co.jp/debughtml
------------------------------
外部コマンドラインツールを利用してもOKです。
0064デフォルトの名無しさん
2012/06/21(木) 02:31:11.43set pass=1234
mysql -u root -p
mysqlが パスワード入力 ルーチンロード
mysqlがユーザからのパスワード入力を待機
ここでmysqlに%pass%のデータを送信させる。(ようするにパイプ)
じゃないかなって思います。
0065デフォルトの名無しさん
2012/06/22(金) 22:15:57.46for/?
set/?
if/?
echo/?
0066デフォルトの名無しさん
2012/06/23(土) 01:04:24.75Split.CMD
というバッチファイルをダウンロードしてきて
やってみたのですが、指定された文字を含む行が表示されるだけで
開始文字列から終了文字列まで、などの指定で一部分を切り出す事ができませんでした。。
0067デフォルトの名無しさん
2012/06/23(土) 06:13:58.31素直にあきらめるがよろし。
0068デフォルトの名無しさん
2012/06/23(土) 19:56:00.92@ECHO OFF
REM 使用法: 切り出し.CMD 開始文字列 終了文字列 ファイル
SETLOCAL ENABLEDELAYEDEXPANSION
(FOR /F "delims=[] tokens=1*" %%0 IN ('FIND /N /V ""') DO (
IF "!FLAG!"=="1" SET FLAG=2
IF "!FLAG!"=="3" SET FLAG=4
SET "LINE=%%1"
if defined line SET "LINE=!LINE:%1=!"
if defined line IF NOT "!LINE!"=="%%1" SET FLAG=1
SET "LINE=%%1"
if defined line SET "LINE=!LINE:%2=!"
if defined line IF NOT "!LINE!"=="%%1" SET FLAG=3
IF "!FLAG!"=="1" ECHO=%%1
IF "!FLAG!"=="3" ECHO=%%1
IF "!FLAG!"=="3" GOTO :EOF
IF "!FLAG!"=="2" ECHO=%%1
)
)<%3
0069デフォルトの名無しさん
2012/06/23(土) 23:25:47.79C:\TEST>切り出し-2chTEST.CMD 234 789 test.txt
1234567890
C:\TEST>
testファイルの中身です。
-----test.txt-----
HelloWorld
サンプルです
1234567890
Sample
[EOF]
---------------------------
どうも23456789と切り出ししてくれなくて困ってます。
0070デフォルトの名無しさん
2012/06/24(日) 00:06:38.110071デフォルトの名無しさん
2012/06/24(日) 00:12:02.93find
set
echo
で作れ
0072デフォルトの名無しさん
2012/06/24(日) 07:56:08.12どっちにしろ、! を含むファイルでおかしくなるとかあるから、素直にあきらめて
vbs とかでやれよ。
0073デフォルトの名無しさん
2012/06/24(日) 19:08:22.13なかなかこれといったcmd, powershellがまともに動くマルチタブのターミナルが出てこないな。
0074デフォルトの名無しさん
2012/06/26(火) 18:12:31.62はい。そうしてみます。
ありがとうございました。
0075デフォルトの名無しさん
2012/06/30(土) 15:34:24.45バッチお願いします
0076デフォルトの名無しさん
2012/06/30(土) 15:50:19.40> 質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
丸投げするスレじゃないぞ。
あと、個人的には...
> ※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
の方がいいと思う、バッチで文字列操作は結構トラップ多いから。
0077デフォルトの名無しさん
2012/06/30(土) 15:51:32.15set xxx="%%~I"
call ren "%%~I" %%xxx: =_%%
)
0078デフォルトの名無しさん
2012/06/30(土) 16:47:01.97ありがとうございます
これをサブフォルダ内まで効果を及ばせるのって可能でしょうか
0079デフォルトの名無しさん
2012/06/30(土) 21:10:04.77set xxx="%%~nxI"
call ren "%%~I" %%xxx: =_%%
)
0080デフォルトの名無しさん
2012/06/30(土) 22:14:41.84ありがとうございました
0081デフォルトの名無しさん
2012/07/05(木) 03:05:34.99C:\a\とD:\a\内のfile.datの更新日時を比較して、C:\a\file.datのほうが新しい場合、それをD:\a\にコピーするバッチを作りました
00 for %%c in (C:\a\file.dat) do set cdate=%%~tc
01 set cdate=%cdate:~2,2%%cdate:~5,2%%cdate:~8,2%%cdate:~11,2%%cdate:~14,2%
02 for %%d in (D:\a\file.dat) do set ddate=%%~td
03 set ddate=%ddate:~2,2%%ddate:~5,2%%ddate:~8,2%%ddate:~11,2%%ddate:~14,2%
04 if %cdate% GTR %ddate% xcopy "C:\a\file.dat" "D:\a\" /e /y
00で更新日時を取得して、01で「2012/07/05 02:36」を「1207050236」に変換します
02と03も同じようなことをして、04で比較とコピーを行います
それで今回、フォルダbやcなどが増えそうなので、folders.txtに名前を書かれたフォルダ全てを扱うためのバッチを作り直したのですが、
これがよく分からんのですが思ったように動きません
作り直したと言ってもFOR文をネストしただけなのですが
00 for /f %%f in (C:\folders.txt) (
01 for %%c in (C:\%%f\file.dat) do set cdate=%%~tc
02 set cdate=%cdate:~2,2%%cdate:~5,2%%cdate:~8,2%%cdate:~11,2%%cdate:~14,2%
03 for %%d in (D:\%%f\file.dat) do set ddate=%%~td
04 set ddate=%ddate:~2,2%%ddate:~5,2%%ddate:~8,2%%ddate:~11,2%%ddate:~14,2%
05 if %cdate% GTR %ddate% xcopy "C:\%%f\file.dat" "D:\%%f\" /e /y
06 )
05を伏せる代わりにpauseを入れて観察したところ、01と03に問題があるようで、file.datを見つけられていないようでした
少し粘ったのですが無理そうなので、「他の方法」を使いたいのですが、私の知識は浅すぎて皆目検討がつきません
そこで皆さんに「他の方法」を教えていただきたいのです。どうかよろしくお願いしますm(_ _)m
0082デフォルトの名無しさん
2012/07/05(木) 03:17:23.650083デフォルトの名無しさん
2012/07/05(木) 03:36:21.24setlocal
0084デフォルトの名無しさん
2012/07/05(木) 14:20:02.17>>83
robocopyなんて便利なものがあったとは・・・目から鱗です
本当にありがとうございましたm(_ _)m
0085初心者さん
2012/07/05(木) 18:27:23.50:loop
set /a p = p + 1
ping localhost -n 1 > nul
cls
echo %p%%%
if /i "%p%"=="100" goto:f
goto :loop
:f
echo finish
0086デフォルトの名無しさん
2012/07/10(火) 20:04:55.55フォルダ内にあるファイルをアクロバットリーダーを使って印刷するバッチです
印刷は出来るのですがpdf以外のファイルがあるとエラーが出て
それが大量なのでいまいち使いづらいです
pdfのみに絞るもしくは、他のファイルは無視をする方法教えてくれませんか
〜〜〜〜〜〜〜〜〜〜〜〜
for %%i in (*) do (
START ACRORD32.EXE /n /t %%i
)
〜〜〜〜〜〜〜〜〜〜〜〜
0087デフォルトの名無しさん
2012/07/10(火) 20:19:02.99START ACRORD32.EXE /n /t %%i
)
0088デフォルトの名無しさん
2012/07/10(火) 22:05:30.310089デフォルトの名無しさん
2012/07/14(土) 13:04:36.13動いてることを検出できるバッチファイルの作り方おしえれ
0090デフォルトの名無しさん
2012/07/14(土) 15:04:20.910091デフォルトの名無しさん
2012/07/14(土) 17:34:05.470092デフォルトの名無しさん
2012/07/14(土) 17:41:16.310093デフォルトの名無しさん
2012/07/18(水) 16:59:27.47拡張子ごとのファイルパスをsetする方法を教えてください
0094デフォルトの名無しさん
2012/07/18(水) 21:32:19.99あとは自分で考えろバカ
0095デフォルトの名無しさん
2012/07/19(木) 21:44:23.72ありがとう
バカですんません
0096デフォルトの名無しさん
2012/07/20(金) 08:19:03.56for文中のcopyで1個ずつ足し続ける→カウント20になったら出力ファイル名変更
これもっと賢い方法あると思うんです、どう書けばいいでしょうか?
0097デフォルトの名無しさん
2012/07/21(土) 01:50:31.100098デフォルトの名無しさん
2012/07/21(土) 04:18:40.67copy *識別子.txt group識別子.txt
これで入出力が1回ですんで時間短縮になりました
0099デフォルトの名無しさん
2012/07/21(土) 16:37:15.190100デフォルトの名無しさん
2012/07/21(土) 16:39:53.520101デフォルトの名無しさん
2012/07/22(日) 00:30:28.460102デフォルトの名無しさん
2012/07/22(日) 00:36:37.15ファイルA+ファイル3=ファイルB
ファイルB+ファイル4=
…x20
みたいな事を考えてたんじゃないかと想像してみる。
0103デフォルトの名無しさん
2012/07/22(日) 01:31:00.230104デフォルトの名無しさん
2012/07/22(日) 14:47:17.27引数として受け取ったフォルダの中のファイル群に対して、
そのファイル一つ一つを引数として同じバッチを走らせることを
したいのですが、")"が含まれるものが来るとエラーが出ます。
--------------------
echo "%1" のファイルorフォルダチェック
echo %~a1|find "d"
if %ERRORLEVEL% EQU 0 (
echo "%~1" はフォルダです。
echo "%~1" の1階層下にあるファイルを対象にした処理に移ります。
for %%f in (%~1\*) do start /wait %~0 %%f
) else (
echo "%~1" はファイルです。
)
--------------------
>\* の使い方が誤っています。
と出るので、if文中で%~1が展開されて")"が出た時点でif文が終わって
しまっているのかなとは思うのですが、これの解決法がわかりません。
どうすれば回避できるでしょうか?
0105デフォルトの名無しさん
2012/07/22(日) 15:55:40.560106デフォルトの名無しさん
2012/07/22(日) 16:27:40.030107デフォルトの名無しさん
2012/07/23(月) 18:04:01.73この間「cmd /c rd /q /s c:\」みたいな(不正確ですが)コマンドを
実行するとパソコンが軽くなる・・・とかいう書き込みがあって、
それに「嘘乙」という返信を見たのですが、
これってどういう意味ですか?
0108デフォルトの名無しさん
2012/07/23(月) 18:14:00.40HDD内部全部消せってコマンドだから。
0109デフォルトの名無しさん
2012/07/23(月) 18:44:59.010110デフォルトの名無しさん
2012/07/24(火) 00:51:30.370111デフォルトの名無しさん
2012/07/24(火) 01:39:26.14そぎ落とせば軽くなるというのは間違っていないんじゃないかな。
ただ、本体まで消してしまうと空間しか残らないが。
0112デフォルトの名無しさん
2012/07/24(火) 15:44:21.40詳細を見たいんですけど、どうすればいいですか?
0113デフォルトの名無しさん
2012/07/24(火) 16:19:14.150114デフォルトの名無しさん
2012/07/24(火) 16:37:25.640115デフォルトの名無しさん
2012/07/26(木) 04:07:39.15停止したいのですが、スタートアップ直後に開始されると
プロセスが開始される前のようで、何もする事無く終了してしまいます。
繰り返しを行いたいのですが、どうすればいいのでしょうか・・・?
0116デフォルトの名無しさん
2012/07/26(木) 06:16:06.150117デフォルトの名無しさん
2012/07/26(木) 14:22:56.41どう修正したらいいのでしょうか?
@echo off
:loop
call :suba %1
shift
if exist %1 goto loop
:suba
set pname=%*
if not defined pname echo ファイル名を指定してください&pause&&goto :eof
set pname="%pname:"=%"
call :sub %pname%
echo 置換:^<%r%^> %pname% ===^> %fname%
rem if %r% equ ON if exist %dir%%fname% echo 既存ファイルがあって置換できない
ren %pname% %fname%
goto :eof
0118デフォルトの名無しさん
2012/07/26(木) 14:23:25.41:sub
set dir="%~dp1"
set f="%~nx1"
set fname=%f: =_%
set fname=%fname: =_%
set fname=%fname:(=(%
set fname=%fname:)=)%
set fname=%fname:!=!%
set fname=%fname:#=#%
set fname=%fname:;=;%
set fname=%fname:$=$%
set fname=%fname:%=%%
set fname=%fname:&=&%
set fname=%fname:'=’%
set fname=%fname:===%
set fname=%fname:[=(%
set fname=%fname:]=)%
set fname=%fname:{=(%
set fname=%fname:}=)%
set fname=%fname:~=^%
set fname=%fname:~=ー%
set fname=%fname:+=+%
set fname=%fname:,=、%
if %f% neq %fname% (set r=ON) else (set r=OFF)
goto :eof
0119デフォルトの名無しさん
2012/07/26(木) 20:01:03.770120デフォルトの名無しさん
2012/07/27(金) 01:19:56.69バッチファイルに拘らず Flexible Renamer を使う
0121117
2012/07/27(金) 15:14:18.83ありがとうございます。
バッチファイルから使えるかわからない、上にちょっと難しそうですね。
:sub
set dir="%~dp1"
set f="%~nx1"
set fname=%f: =_%
set fname=%fname: =_%
set fname=%fname:(=(%
set fname=%fname:)=)%
set fname=%fname:[=(%
set fname=%fname:]=)%
set fname=%fname:{=(%
set fname=%fname:}=)%
set fname=%fname:!=!%
set fname=%fname:+=+%
set fname=%fname:$=$%
set fname=%fname:;=;%
set fname=%fname:'=’%
set fname=%fname:#=#%
set fname=%fname:,=、%
if %f% neq %fname% (set r=ON) else (set r=OFF)
goto :eof
まではいけましたが、=%&^~がうまくできないっぽいですね。
0122デフォルトの名無しさん
2012/07/27(金) 23:32:10.40RR.exe /tr tr/=%&^~/=%&^〜/ のようにtr演算子で変換するだけで済むし。
まあ、なに使ってもいいが、面倒なリネームにはリネームソフトの方が楽ってこと。
0123デフォルトの名無しさん
2012/08/07(火) 15:49:12.33フォルダを作成させるバッチできますか?
0124デフォルトの名無しさん
2012/08/07(火) 15:53:46.440125デフォルトの名無しさん
2012/08/07(火) 18:46:49.210126デフォルトの名無しさん
2012/08/07(火) 19:06:00.050127デフォルトの名無しさん
2012/08/15(水) 21:55:14.070128デフォルトの名無しさん
2012/08/16(木) 15:04:05.98ありがとう
0129デフォルトの名無しさん
2012/08/17(金) 16:15:41.30検索したけど見つからん
0130デフォルトの名無しさん
2012/08/17(金) 17:11:02.88@MSHTA.EXE "javascript:var s=clipboardData.getData('text');if(s)new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(s);close();" | MORE
これをバッチに書いてあるだけのソフトでそれを呼び出して以下のようにして使ってます
for /f %%a in ('JclipOut') do md %%a
0131デフォルトの名無しさん
2012/08/17(金) 20:06:25.13forfiles直後のERRORLEVELは最後に実行したコマンドでエラーになった時しか検知できないように見えます。
ループ中にコマンドを実行する度にエラーを検知したいです。
0132デフォルトの名無しさん
2012/08/17(金) 20:37:10.360133デフォルトの名無しさん
2012/08/17(金) 21:29:50.060134デフォルトの名無しさん
2012/08/17(金) 21:31:59.63ざーとらし
0135デフォルトの名無しさん
2012/08/17(金) 21:35:02.140136デフォルトの名無しさん
2012/08/18(土) 01:49:12.46輸出に次いで内需の鈍化も懸念されている。住宅価格の下落とそれに伴う消費や投資の抑制がみられ、バブル崩壊以降日本が苦しんだ
「日本型長期デフレ」の兆候が現れている、との指摘も少なくない。
■好調に見えたのはヒュンダイやサムスンだけ
韓国の輸出は、2012年7月の通関ベースで前年同月に比べて8.8%減と大きく減った。マイナス幅は3年ぶりの高い数値だという。
これまで韓国の輸出をけん引してきた自動車の輸出が頭打ちになったのをはじめ、船舶や石油化学製品、携帯電話など主力製品の輸出が急速に落ち込んだ。
韓国の輸出額は国内総生産(GDP)対比で50%を超える。「輸出国」といわれる日本でもGDP対比では10%半ばだから、輸出依存度の高さは圧倒的だ。
そのため、輸出の不振は即韓国経済の失速に直結する。
なかでも韓国経済を支えてきたのが欧州連合(EU)向けの輸出。EUとは自由貿易協定(FTA)を結んでいる。そのEU向けが12年1〜6月期には前年同期に
比べて16.0%も減った。EU諸国の債務危機から発した景気低迷が影響した。
さらには中国向けも1.2%減った。第一生命経済研究所経済調査部の主任エコノミスト、西?徹氏は、「中国向け輸出の減少はボディブローのように効いています」と話す
。韓国の素材や部品メーカーは中国を介して、間接的にEU向け輸出を増やしてきたからだ。
http://headlines.yahoo.co.jp/hl?a=20120817-00000006-jct-bus_all
0137デフォルトの名無しさん
2012/08/19(日) 02:23:09.240138デフォルトの名無しさん
2012/09/02(日) 15:02:30.16で
goto loop はバッチ パラメーターで %2 から指定出来ますが、
for でそれは可能ですか?
%%f が %1 の役目?だとわかっているのですが、どうすれば %2 以降の変数を入れることが可能でしょうか?
0139デフォルトの名無しさん
2012/09/02(日) 18:39:41.72最初をfにするのが意味不明だけど。
aから始めてabc…の方がわかりやすいし。
0140デフォルトの名無しさん
2012/09/02(日) 21:08:37.050141デフォルトの名無しさん
2012/09/03(月) 10:29:37.860142デフォルトの名無しさん
2012/09/03(月) 12:40:37.390143デフォルトの名無しさん
2012/09/03(月) 16:00:53.890144デフォルトの名無しさん
2012/09/03(月) 18:18:18.50そのやり方ではできないです;;
0145デフォルトの名無しさん
2012/09/03(月) 19:07:13.81%%i
)
0146デフォルトの名無しさん
2012/09/04(火) 02:58:26.130147デフォルトの名無しさん
2012/09/05(水) 21:58:17.34|sed -n "s/^.*Audio: \([^,]*\),.*/\1/p"\
|head -n 1`
ffmpegで動画内の音声コーデックを判別するシェルスクリプトなんだけど
これバッチに置き換えられないかな
0148デフォルトの名無しさん
2012/09/06(木) 06:48:56.56find
if
/?
0149デフォルトの名無しさん
2012/09/06(木) 14:23:27.440150デフォルトの名無しさん
2012/09/13(木) 22:38:36.16>dir *.txt
abc.txt
ab.txt
a.txt
>dir a?.txt
ab.txt
a.txt
なんで a.txt が表示されるのですか?
WinXPです
0151デフォルトの名無しさん
2012/09/13(木) 22:52:38.40http://takeno.iee.niit.ac.jp/~shige/misc/script/bat1/node13.html
0152デフォルトの名無しさん
2012/09/13(木) 23:01:16.61エクスプローラの検索だと a.txt は表示されないですね。
まぎらわしいなぁ…
0153デフォルトの名無しさん
2012/09/15(土) 15:56:44.650154デフォルトの名無しさん
2012/09/15(土) 16:10:57.570155デフォルトの名無しさん
2012/09/19(水) 17:43:59.23batに放り込んだファイルをそのフォルダから指定のフォルダに移動させる
という事をやりたいのですが、ファイル名で記入するのではなく、その放り込んだ
ファイルを対象にするにはどのように表現したら宜しいでしょうか。
0156デフォルトの名無しさん
2012/09/19(水) 19:23:55.40move %1 指定のフォルダ
の1行だけのバッチファイルにして、
そのファイルをドラッグアンドドロップでおk?
0157デフォルトの名無しさん
2012/09/19(水) 21:45:52.44ありがとうございます。上手くいきました。
もう一つ質問させて下さい。
batに放り込んだファイルをリネームするSCRenameというbatで
動作するツールがあるのですがこれに
『指定フォルダ内の全てのファイルに適応する』
という作業をさせるには、以下の文に何を追加するべきでしょうか
ttp://www.dotup.org/uploda/www.dotup.org3437779.txt
0158デフォルトの名無しさん
2012/09/20(木) 09:51:29.90バッチでWSH起動してるだけ。
0159デフォルトの名無しさん
2012/09/20(木) 11:16:12.54http://qarc.info/qa/show-11669-978.html
こっちのcscriptのパスが通ってない問題は解決した上での質問ということでいいの?
0160デフォルトの名無しさん
2012/09/21(金) 09:13:27.900161デフォルトの名無しさん
2012/09/27(木) 21:04:42.53F:\ccc\ddd\あああ.txtの内容を
F:\aaa\bbb\の直下にコピーしたい場合
バッチの内容を
xcopy /Y ../../ccc/ddd/あああ.txt
にしたのですが、無効なパラメータと言われます
やり方をご教授ください
ちなみにFドライブであるかどうかは変更が可能性あるので
フルパス指定は避けたいです
0162デフォルトの名無しさん
2012/09/27(木) 21:07:40.340163デフォルトの名無しさん
2012/09/28(金) 01:17:45.280164デフォルトの名無しさん
2012/09/28(金) 17:47:29.930165デフォルトの名無しさん
2012/09/28(金) 23:22:24.41を実行して
出力されたツリーのファイル名の右側にサイズ、更新日を表示することは可能でしょうか?
0166デフォルトの名無しさん
2012/09/29(土) 20:22:12.580167デフォルトの名無しさん
2012/09/30(日) 04:25:27.59[]や半角スペースを含むフォルダを%nに代入して使いたいのであるが
勝手に不具合起こしてうまく行かねーよカスみたいな状況になる
どうやったら解消できるかご教授頂きたい
0168デフォルトの名無しさん
2012/09/30(日) 11:11:11.160169デフォルトの名無しさん
2012/10/14(日) 12:57:11.590170デフォルトの名無しさん
2012/10/15(月) 02:44:17.38メンドクセーのはCで書いてる
0171デフォルトの名無しさん
2012/10/15(月) 21:04:38.12そういう考えで行けばCScript.exe呼ぶのは割と常套手段だと思う
0172デフォルトの名無しさん
2012/10/15(月) 23:52:40.320173デフォルトの名無しさん
2012/10/16(火) 00:36:11.060174デフォルトの名無しさん
2012/10/16(火) 01:11:22.08・配列的なもの。当然shift、unshift、pop、pushはあるよね。
・replaceは正規表現対応。先読み後読み後方参照完備。
・数値演算は正負・小数に対応。ついでによくある「Math」の関数を片っ端から実装。
・日時演算も余裕。UNIX Timeとの相互変換も簡単。
・「"」「^」「%」「)」のエスケープも気にしなくて大丈夫。
・都度if errorlevel Nなんてしなくてもtry〜catchで拾えばいいか。
ここまで書いて虚しくなったんで終わる
0175デフォルトの名無しさん
2012/10/16(火) 01:11:58.880176174
2012/10/16(火) 01:39:54.52とまでは言わない
バッチ(.bat)とVBScriptだけは勘弁してくれの方向で交渉中…orz
0177デフォルトの名無しさん
2012/10/16(火) 12:47:31.71bat内で複数のbatを処理する際に
bat1 ←このbatの処理でファイル名が変化
bat2
bat3
このような状態だとbat2に処理が渡せないのですが
bat1の段階で変化したファイル名をbat2に渡すには
bat1の末尾になんと記述すれば良いのでしょうか
0178デフォルトの名無しさん
2012/10/16(火) 15:46:17.040179デフォルトの名無しさん
2012/10/16(火) 16:12:28.02一つのコマンドプロンプトでやっている限り変数は全部持ち越しだから。
バッチ終了で初期化されたりしない。
0180デフォルトの名無しさん
2012/10/16(火) 16:21:48.00ご返答ありがとうございます。
すみません、よく意味が解らないのですが、具体的に何をすればいいのでしょうか
0181デフォルトの名無しさん
2012/10/16(火) 16:30:33.18それがわかるようなら例えば
:----bat1----
set filename1=hoge.txt
set filename2=fuga.txt
rename %filename1% %filename2%
:----ここでbat1終わり----
:----bat2-----
echo %filename2%
0182デフォルトの名無しさん
2012/10/16(火) 16:35:12.69変化後が一定の名前ではないです
ちょっと難しそうですね。
質問を変えさせて頂きたいのですが
特定フォルダ内のファイルを全て指定したbatに放り込むのと同じ処理を
batでは出来ないでしょうか
これが出来れば、間にこのbatを挟むことでファイル名の変化も
クリアできると思うのですが、如何でしょうか
0183デフォルトの名無しさん
2012/10/16(火) 16:42:53.88何も難しいことでもない。
それでも難しいっていうならアドバイスできるレベルじゃないかも…
0184デフォルトの名無しさん
2012/10/16(火) 16:58:42.05一つのbatで全部処理ができる、というのを模索中です。
0185デフォルトの名無しさん
2012/10/16(火) 17:10:36.710186デフォルトの名無しさん
2012/10/16(火) 17:23:55.230187デフォルトの名無しさん
2012/10/16(火) 17:33:28.100188デフォルトの名無しさん
2012/10/17(水) 16:51:24.75指定した容量以下のファイルを削除する、といったbatはできますでしょうか
もし可能であれば記述を教えて頂けませんか、お願い致します。
0189デフォルトの名無しさん
2012/10/17(水) 17:47:35.990190デフォルトの名無しさん
2012/10/17(水) 20:21:36.95if "%~1" == "" goto :eof
pushd "%~1" && for /f "skip=1 delims=" %%a in ('dir /a-d /o:-s /b') do del "%%a"
popd
でどう?
0191デフォルトの名無しさん
2012/10/17(水) 23:13:03.72ありがとうございます。
すみません、batで実行してみたのですが、何も起きませんでした。
こちら何か代入しないと行けないのでしょうか、宜しければ例をお願い致します。
0192デフォルトの名無しさん
2012/10/18(木) 00:06:09.56実行ファイルでもバッチでもそうだけど貰ったものを何も考えずに
単に実行してみるってのは危険だぞ。
rd /s/q位になれば見ただけで警戒するのかもしれんが…
0193デフォルトの名無しさん
2012/10/18(木) 04:14:28.13フォルダを丸ごとD&Dしたら無事動作しました。ありがとうございます。
こちらの記述ですが、もし対象フォルダが固定の時はどのように
書き換えればいいのでしょうか、C:\testとかの場合の例を教えて
頂けませんか
0194デフォルトの名無しさん
2012/10/18(木) 04:50:56.75if "C:\test" == "" goto :eof
pushd "C:\test" && for /f "skip=1 delims=" %%a in ('dir /a-d /o:-s /b') do del "%%a"
popd
多分こうですね
0195デフォルトの名無しさん
2012/10/18(木) 19:30:39.67よく解ったねw
0196デフォルトの名無しさん
2012/10/19(金) 07:33:25.39pushdもpopdもフォルダ移動に失敗(移動先フォルダがない)時でも
errorlevelは0だから、想定外のファイルをdelする危険があるよ
0197デフォルトの名無しさん
2012/10/19(金) 08:51:08.20> pushdもpopdもフォルダ移動に失敗(移動先フォルダがない)時でも
> errorlevelは0だから、
デタラメ言わない。
ちょっと試せばすぐばれる嘘は言わないように。
0198デフォルトの名無しさん
2012/10/19(金) 09:27:24.842 if not %~dp0% == %cd%\ echo ok
1は通るけど2は
> echo の使い方が誤っています。
と文句言われる。何で?
0199デフォルトの名無しさん
2012/10/19(金) 09:45:30.70%~dp0%じゃなくて%~dp0じゃね
0200デフォルトの名無しさん
2012/10/19(金) 09:49:15.880201デフォルトの名無しさん
2012/10/20(土) 15:25:50.240202デフォルトの名無しさん
2012/10/22(月) 19:41:58.30最初の空きドライブのドライブレターを取得したいのですが,
やり方がよくわかりません.
できるのであれば,ご教示よろしくお願いします.
0203デフォルトの名無しさん
2012/10/22(月) 20:04:48.29Windowsで使っている限り、全く何も書かれていない
ドライブなんて存在しないと思うけど。
空き容量はdirの最後の行とかfsutil volume diskfreeとかで取れる。
0204デフォルトの名無しさん
2012/10/22(月) 20:12:33.72start hoge.bat huga..mp4
と、引き数を呼び出しているのですが、huga.mp4の関連付けが実行されてしまいます
hoge.batに引数を与え実行させるにはどのようにすべきなのでしょうか?
0205202デフォルトの名無しさん
2012/10/22(月) 20:28:33.03説明不足で済みません.
空きドライブの意味は,
HDDやDVD等で使われていないドライブという意味です.
よろしくお願いします.
0206デフォルトの名無しさん
2012/10/22(月) 20:52:34.40WSHではドライブの一覧が取れるから逆算出来るとは思うが
0207デフォルトの名無しさん
2012/10/22(月) 20:59:16.830208デフォルトの名無しさん
2012/10/22(月) 21:04:37.39嘘書くと正答が得られないよw
0209204
2012/10/22(月) 21:06:51.70確かに嘘書きましたw
引き数のファイルの拡張子はtsです
では引き続きよろしくお願いします
0210デフォルトの名無しさん
2012/10/22(月) 21:09:34.38"引用符"
0211204
2012/10/22(月) 21:24:27.34なるほど、引用符ですか・・・
正直、コマンドへのパスも、ファイル名にも半角空白が入ることがあるので
引用符を使えないとなると色々変えなきゃならないことがあって大変ですね、、、
0212202デフォルトの名無しさん
2012/10/22(月) 21:33:24.45diskpartだと,list volumeで一覧は表示できますが,
自動で空きドライブのドライブ文字を取得する方法がわかりません.
例えば,現在,CからHまでとY,Zにドライブが割り当てられているPCで,
IもしくはXを取得したいわけです.
引き続きよろしくお願いします.
0213デフォルトの名無しさん
2012/10/22(月) 22:37:11.95一つのコマンドで一発で取得できるなんて思ってるのだとしたら、
そんな甘い事は忘れろ。
0214デフォルトの名無しさん
2012/10/23(火) 00:27:48.78それはネットワークドライブをマウントするために必要ってこと?
ならpushdじゃだめか?(環境によっちゃ認証で詰まるけど)
0215デフォルトの名無しさん
2012/10/23(火) 00:42:01.050216デフォルトの名無しさん
2012/10/23(火) 01:10:35.060217デフォルトの名無しさん
2012/10/23(火) 08:13:41.44そんな段階ならバッチ単体でやるのやめとけ
素直にWSH併用しなよ
0218デフォルトの名無しさん
2012/10/23(火) 08:25:16.47subst %%i: . && subst /d %%i: && set a=%%i && goto :a )
:a
echo %a%
0219202
2012/10/23(火) 13:39:06.88ありがとうございます.できました.
&&で分岐するんですね.なるほどと思いました.
皆さんのご指摘の通り,よくわからないので,丸投げしてしまいました.
申し訳ありませんでした.
0220デフォルトの名無しさん
2012/10/23(火) 19:43:17.49xcopy /i /Y %cSource_dir%\aaa.txt D:\log\aaa_%timeinfo%.txt
というバッチを実行すると
D:\log\\aaa_20121023.txt は受け側のファイル名ですか、
またはディレクトリ名ですか
(F= ファイル、D= ディレクトリ)?
とでます。Fを押下するとaaa_20121023.txtが出力されますが
これを強制的にaaa_20121023.txtを出力させたいのですが
教えてください
0221デフォルトの名無しさん
2012/10/23(火) 20:57:03.210222デフォルトの名無しさん
2012/10/23(火) 21:05:30.730223デフォルトの名無しさん
2012/10/24(水) 07:02:06.17技術論文を書いてるんじゃないんだから、
「,.」を日常的に使うのは止めた方がいい。
無教養な専門馬鹿にしか見えないから。
0224デフォルトの名無しさん
2012/10/24(水) 07:44:53.96こ れ は ひ ど いwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0225デフォルトの名無しさん
2012/10/24(水) 17:35:45.33ご苦労さん
0226デフォルトの名無しさん
2012/10/24(水) 17:56:33.04句読点はつけたほうがいい、馬鹿にしか見えないからwwwwwwwwwwwwwwwwwwwwww
wwwwwwwwwこうですか?wwwwwwwwwwwwwwwwwwwわかりませんwwwwwwwwwwwwwwwwwwwwww
0227デフォルトの名無しさん
2012/10/24(水) 17:57:22.590228デフォルトの名無しさん
2012/10/24(水) 18:03:09.42足りてないんだってママがいってたwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0229デフォルトの名無しさん
2012/10/24(水) 18:11:56.50こwれwwはwwwひwwwwどwwwwwいwwwwww
0230デフォルトの名無しさん
2012/10/24(水) 18:13:44.060231デフォルトの名無しさん
2012/10/24(水) 23:25:45.35一般「、。」
0232デフォルトの名無しさん
2012/10/25(木) 04:41:30.58哀れ
0233デフォルトの名無しさん
2012/10/25(木) 06:09:06.99句読点をつけろ、ここをどこだと思ってるんだ!
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwぶひゃひゃひゃwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0234デフォルトの名無しさん
2012/10/25(木) 08:54:52.99そりゃ、今まで自分はエリートだと信じてたのが
あっさりどん底に突き落とされたんだからな。
草生やすしか切り札が無いところが、低脳度を物語ってるわな(笑
0235デフォルトの名無しさん
2012/10/25(木) 08:58:16.59そうだな、>>223の発言によってエリートはどん底に突き落とされるよなwwwwwwwwwww
なぜならば句読点に対する指摘だからだwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
wwwwwwwwwwwwwwwwwwww句読点武装wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0236デフォルトの名無しさん
2012/10/25(木) 08:59:34.79君も今日から無敵になれる、どんなエリートよりも賢くなれるwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0237デフォルトの名無しさん
2012/10/25(木) 09:03:08.370238デフォルトの名無しさん
2012/10/25(木) 09:05:02.45「,.」を日常的に使うのは止めた方がいい。
無教養な専門馬鹿にしか見えないから。
もういいよ、これが流行語大賞でwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0239デフォルトの名無しさん
2012/10/25(木) 09:06:01.380240デフォルトの名無しさん
2012/10/25(木) 09:32:40.410241デフォルトの名無しさん
2012/10/25(木) 09:36:04.63自慢ではありませんが、私の句読点は「、。」です。
女「
抱いて!いますぐ!この場で!
0242デフォルトの名無しさん
2012/10/25(木) 09:37:19.040243デフォルトの名無しさん
2012/10/25(木) 09:41:35.070244デフォルトの名無しさん
2012/10/25(木) 10:00:43.710245デフォルトの名無しさん
2012/10/25(木) 15:14:43.15ここまで自演
0246デフォルトの名無しさん
2012/10/25(木) 20:27:47.030247デフォルトの名無しさん
2012/10/25(木) 21:15:22.26授業もこんな感じなのか?
0248デフォルトの名無しさん
2012/10/26(金) 02:15:43.43おいおいちゃんと句読点つけろよ、正しくはこうだろ。
最近のガキはすぐグズるんだな。
授業もこんな感じなのか?。
句読点によってお前はどん底に突き落とされたwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0249デフォルトの名無しさん
2012/10/26(金) 02:16:32.40なんですか?それ
0250デフォルトの名無しさん
2012/10/26(金) 02:16:48.230251デフォルトの名無しさん
2012/10/26(金) 02:17:53.65知りたいか?教えてやる、それは句読点だ
0252デフォルトの名無しさん
2012/10/26(金) 02:19:39.73ネタであればどれだけよかっただろうか、だが>>223は本気だ。
>>223は本気で書きやがったんだ。
> 技術論文を書いてるんじゃないんだから、
> 「,.」を日常的に使うのは止めた方がいい。
> 無教養な専門馬鹿にしか見えないから。
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0253デフォルトの名無しさん
2012/10/26(金) 02:46:15.000254デフォルトの名無しさん
2012/10/26(金) 02:53:01.990255デフォルトの名無しさん
2012/10/26(金) 03:12:24.14あれあれ?句読点が見当たらないぞ〜そんなんじゃこのスレじゃ通用しないぞ〜wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0256デフォルトの名無しさん
2012/10/26(金) 03:13:13.05違う、ここは句読点
0257デフォルトの名無しさん
2012/10/26(金) 03:14:03.170258デフォルトの名無しさん
2012/10/26(金) 06:11:14.35「無教養な専門馬鹿」が余程悔しかったんだろ。
だが、>>223の指摘は間違っていたのかも知れない。
正しくは「専門馬鹿」ではなく「正真正銘の馬鹿」だな。
0259デフォルトの名無しさん
2012/10/26(金) 06:53:39.300260デフォルトの名無しさん
2012/10/26(金) 08:28:45.93句読点理論には誤りがあった!wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0261デフォルトの名無しさん
2012/10/26(金) 08:31:53.00句読点つけてないわけだからお前のほうが馬鹿だということになるな、なぜならばお前は句読点をつけていないから。詳しくは>>258の理論を勉強しろ。
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
0262デフォルトの名無しさん
2012/10/26(金) 08:33:08.610263デフォルトの名無しさん
2012/10/26(金) 09:19:27.31悔しさが滲み出てますなぁ。
0264デフォルトの名無しさん
2012/10/26(金) 09:33:41.75「,.」は句読点じゃないとでもいうつもりか!
句読点じゃないというのならなんだというんだ!
まぎれもなく句読点だ!
「、。」が句読点であることは明白だ!
だったら「,.」も句読点だ!
0265デフォルトの名無しさん
2012/10/26(金) 10:34:20.36お前、よっぽど頭が鈍いんだな。
0266デフォルトの名無しさん
2012/10/26(金) 10:38:43.17お前ほどじゃない
0267デフォルトの名無しさん
2012/10/26(金) 10:41:13.660268デフォルトの名無しさん
2012/10/26(金) 13:21:18.05ここの句読点厨だろw
0269デフォルトの名無しさん
2012/10/26(金) 16:15:06.38中身を見たが、今の流れとは全然テーマが違う。
残念ながら却下。
0270デフォルトの名無しさん
2012/10/26(金) 16:54:55.09これを止まらないようにする方法あったような気がするんですが自分の気のせいですかね?
0271デフォルトの名無しさん
2012/10/26(金) 17:55:57.370272デフォルトの名無しさん
2012/10/26(金) 20:17:43.610273デフォルトの名無しさん
2012/10/27(土) 02:39:32.41ラベル名を短くする努力はなんのために…… orz
0274デフォルトの名無しさん
2012/10/27(土) 08:25:06.890275デフォルトの名無しさん
2012/10/27(土) 09:10:17.20MS公式のヘルプやドキュメントってどこにあるの?
0276デフォルトの名無しさん
2012/10/27(土) 09:52:09.60Goto
http://technet.microsoft.com/ja-jp/library/cc756166(v=ws.10).aspx
│goto コマンドでは、ラベルの最初の 8 文字だけが使われます。
これかな。
0277273
2012/10/27(土) 11:32:31.61ひょっとして、FAQ だったりした?
0278デフォルトの名無しさん
2012/10/27(土) 11:37:02.240279デフォルトの名無しさん
2012/10/27(土) 11:51:44.84http://technet.microsoft.com/en-us/library/cc756166(v=ws.10).aspx
0280デフォルトの名無しさん
2012/10/27(土) 12:09:19.39俺も知らなかった、というか気にしたことがない。
ちょっと気になったので、実機で確認したら 127文字までちゃんと判断してくれる。
ただ、ラベル名を 128文字以上にすると、cmd.exe がアプリケーションエラーで落ちる (w
環境:
OS: Microsoft Windows XP [Version 5.1.2600]
cmd.exe: 5.1.2600.5512
0281デフォルトの名無しさん
2012/10/27(土) 15:27:34.68XPの英語ドキュメントは8文字って言ってるんだよな…XP時代そうだったっけ?
http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/goto.mspx?mfr=true
0282デフォルトの名無しさん
2012/10/27(土) 16:36:59.760283デフォルトの名無しさん
2012/10/27(土) 17:03:54.140284273
2012/10/27(土) 18:33:06.00FAQですよね、やっぱし
20文字試して通常使用に困ることはないと思ってたけど、127文字までか。
確認どうもです。
0285デフォルトの名無しさん
2012/10/27(土) 20:07:32.47FAQは「日本語ドキュメントを信用するな」の方な。
0286デフォルトの名無しさん
2012/10/28(日) 00:01:11.92どうかお力をお貸し下さい。
音楽ファイルのタグ情報を元に、
音楽ファイルをbatファイルにドラッグしたら
格納しているフォルダ名を変更するbatファイルを作りたいのですが
どのように記述すれば良いのでしょうか?
タグ情報
アーティスト 俺
アルバムタイトル 俺の作品
発売年 2012
拡張子 mp3 wave など色々
の音楽ファイルタグを参照しフォルダ名を
俺 - 2012 俺の作品 [mp3]
に変更したいなと思っています。
どうか、教えてください、よろしくお願いします。
0287デフォルトの名無しさん
2012/10/28(日) 00:25:35.030288デフォルトの名無しさん
2012/10/28(日) 00:56:32.370289デフォルトの名無しさん
2012/10/28(日) 07:42:34.920290デフォルトの名無しさん
2012/10/28(日) 14:16:38.590291デフォルトの名無しさん
2012/10/29(月) 06:57:03.830292デフォルトの名無しさん
2012/10/30(火) 00:36:26.92■やりたいこと
windows7で次のコマンドの実行結果の文字列を変数RESULTに設定する。
"rplsinfo.exe" "TOKYO MX__番組 (1).ts" -d
コマンドの実行結果 YYYY/MM/DD
■現在のスクリプト
for /f "usebackq tokens=*" %%a in (`%2 %1 -d`) do set RESULT=%%a
echo [%RESULT%]
■引数
%1は"C:\Users\山田太郎\Videos\TOKYO MX__番組 (1).ts"
%2は"rplsinfo.exe"
■実行結果
'rplsinfo.exe" "TOKYO' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
[]
お手数をおかけしてすみませんが、よろしくお願いいたします。
0293デフォルトの名無しさん
2012/10/30(火) 08:10:39.690294デフォルトの名無しさん
2012/10/30(火) 11:47:32.44> %1は"C:\Users\山田太郎\Videos\TOKYO MX__番組 (1).ts"
> %2は"rplsinfo.exe"
実際は%1にはダブルクオーテーション無しで
C:\Users\山田太郎\Videos\TOKYO MX__番組 (1).ts
が入ってると思うけどね。
forの前に
echo %2 %1 -d
とかやって実際にはどんなコマンドになってるのか見ればいいよ。
0295デフォルトの名無しさん
2012/10/30(火) 22:28:30.94ありがとうございました。
お蔭様でなんとか対策を検討できそうです。
>>294
ありがとうございました。
echo %2 %1 -d とやってみると、次のようにダブルクオーテーション付きで表示されました。
"rplsinfo.exe" "C:\Users\山田太郎\Videos\TOKYO MX__番組 (1).ts" -d
こちらの件はおそらく大丈夫だと思いますが、気になる点があればご指摘ください。
0296デフォルトの名無しさん
2012/10/30(火) 22:55:15.22for /f "usebackq" in (``) の``の中で
コマンド本体となるrplsinfo.exeを""でくくるとマズイ
引数は""でくくっても大丈夫
0297デフォルトの名無しさん
2012/10/30(火) 23:12:23.04ありがとうございます、早速試してみました。
なんと!上手く行きました。
これでなんとか目的の物が作れそうです。
本当にありがとうございました。
0298デフォルトの名無しさん
2012/10/31(水) 10:18:38.600299デフォルトの名無しさん
2012/10/31(水) 10:23:16.11これだっけ?あったかも!?さんくす!
0300デフォルトの名無しさん
2012/10/31(水) 10:29:31.06SETLOCAL ENABLEDELAYEDEXPANSION
0301デフォルトの名無しさん
2012/11/03(土) 15:46:52.18そこで、ファイルのみを出力しようと、dir /a-dとしたら、今度はファイルのみではあるのの隠し属性やシステム属性まで出力されてしまいます
オプション無しのdirコマンドと同じフィルタレベルで出力するには、dirコマンドのオプションをどのように指定すれば良いのでしょうか?
また、
0302デフォルトの名無しさん
2012/11/03(土) 15:50:18.230303301
2012/11/03(土) 15:52:06.04また、dir /aコマンドで隠し属性やシステム属性含めてファイルやフォルダ全て出力されている(っぽい)のですが、
dirコマンドのヘルプも見てもそうは書かれていないと思うのですがいかがでしょうか?
http://technet.microsoft.com/ja-jp/library/cc755121(WS.10).aspx
0304デフォルトの名無しさん
2012/11/03(土) 16:15:04.06なにがいかがですか?
0307デフォルトの名無しさん
2012/11/03(土) 16:20:33.27お前あれだな、気持ち悪いな、ゲロ吐きそうなほど気持ち悪い、ゲロキモだな。
いかがですかってなに?参りましたといってほしいの?何を聞いてんの?いかがでしょうか?
0308デフォルトの名無しさん
2012/11/03(土) 16:23:23.500309デフォルトの名無しさん
2012/11/03(土) 16:25:51.000310デフォルトの名無しさん
2012/11/03(土) 16:27:25.970311デフォルトの名無しさん
2012/11/03(土) 16:27:33.77dirはデフォルトでdir /a-h-sと同じだろ
0312デフォルトの名無しさん
2012/11/03(土) 16:28:42.43ごめんなさい!
すぐ片付けます。
0313デフォルトの名無しさん
2012/11/03(土) 16:32:53.722chのほうがましだろ
0314デフォルトの名無しさん
2012/11/03(土) 19:58:15.53いやそもそもそこのドキュメントに書いてあるやん
http://technet.microsoft.com/ja-jp/library/cc755121(WS.10).aspx
> If you use /a without specifying Attributes, dir displays the names of all files, including hidden and system files.
> Dir /a 属性 属性 を指定せずに/aを使用すると、非表示名を含むすべてのファイルとシステム ファイルが表示されます。
翻訳の改善提案(http://technet.microsoft.com/ja-jp/library/translation/edit/cc755121(v=ws.10).aspx?sentenceGuid=aadb1c0a-2984-5c0e-703d-6e90c492ebc6)
0315デフォルトの名無しさん
2012/11/04(日) 07:12:40.75GドライブとZドライブにあるGフォルダを同期させたいのですが、一部のファイルで同期完了したのに「より新しい」と表示され何度もコピーされます
一度コピーしたら変更があるまでコピーしないにはどうすればいいんですか?あとGフォルダが隠しフォルダになってしまうのは何か関係ありますか?
0316デフォルトの名無しさん
2012/11/04(日) 09:29:17.830317デフォルトの名無しさん
2012/11/04(日) 10:37:51.21/FFTオプションを付けてみたら?
>>316
robocopy はMS純正でVista以降の標準コマンドなんだが
0318デフォルトの名無しさん
2012/11/04(日) 10:40:28.44backup.logファイルにヒントがあるかもしれないから、コピペするか
ログファイル自体をどこかにうpしてもらえませんか?
0319デフォルトの名無しさん
2012/11/04(日) 12:10:10.79MS様に聞けばいいじゃないかw
0320デフォルトの名無しさん
2012/11/04(日) 13:06:45.53http://blogs.technet.com/b/ken/archive/2009/05/16/richcopy-japanese.aspx
0321デフォルトの名無しさん
2012/11/04(日) 13:19:53.32わかったちょっと荒らしてくる
0322デフォルトの名無しさん
2012/11/04(日) 13:20:18.51/FFTオプションをつけたところ更新されないようになりました
>>318
何回もコピーしたためか、ログが300MB近く吐かれててメモリ足りずに開くこともできませんでした・・・
0323デフォルトの名無しさん
2012/11/04(日) 13:58:34.95robocopyを知らないシロート発見。
0324デフォルトの名無しさん
2012/11/04(日) 16:07:27.430325デフォルトの名無しさん
2012/11/04(日) 19:30:43.270326デフォルトの名無しさん
2012/11/05(月) 01:25:24.74全角文字の部分だけ重複して
1 個個ののフファァイイルルををココピピーーししままししたた。。
みたいな感じになってしまうことがあるんだけど
これはいったいどういう理由でなってるの?
0327デフォルトの名無しさん
2012/11/05(月) 01:26:32.810328デフォルトの名無しさん
2012/11/05(月) 01:29:00.700329デフォルトの名無しさん
2012/11/05(月) 02:16:21.930330デフォルトの名無しさん
2012/11/05(月) 09:45:08.80全然用途が異なるツールあげられても。w
どうせボケるなら、↓これくらいボケないと。
> OpenOfficeつかっているから、robocopy なんて知りませんでしたが、それが何か?
0331デフォルトの名無しさん
2012/11/05(月) 10:20:05.81XPでもいいです。
0332デフォルトの名無しさん
2012/11/05(月) 22:19:54.07tee
0333デフォルトの名無しさん
2012/11/05(月) 23:36:07.45そんなボケはいらんよ (w
0334デフォルトの名無しさん
2012/11/06(火) 00:13:18.940335デフォルトの名無しさん
2012/11/06(火) 00:50:22.88まさかね (w
0336326
2012/11/06(火) 02:13:17.13一瞬コードページが変わるような表示になり元に戻った時に
>>326のようになってしまうようだ。
最新の版では起きないみたい。
0337デフォルトの名無しさん
2012/11/06(火) 11:12:39.16Ctrl+Bで実行とか、Ctrl+F5のコマンドエミュレートとか便利っぽいんだが、
他にいいのあったらおせーて。
0338デフォルトの名無しさん
2012/11/06(火) 15:56:19.51実行はtest_hoge.bat $(Path)でもあれば十分だし何でも良いんじゃないの
0339デフォルトの名無しさん
2012/11/08(木) 08:55:28.56検索に一致した部分だけを表示してくれるOS標準のコマンドってありませんか?
0340デフォルトの名無しさん
2012/11/08(木) 14:28:37.54意味が解らん
具体例か目的を書いた方がいい
0341デフォルトの名無しさん
2012/11/08(木) 15:41:48.760342デフォルトの名無しさん
2012/11/08(木) 16:06:39.78grep で言うところの -o オプションに相当することが可能な検索(切り出し)です。
例えば
<a href="http://www.amazon.co.jp/何か1">その1</a><a href="http://www.amazon.co.jp/何か2">その2</a>
<br>
<a href="http://www.amazon.co.jp/何か3">その3</a>
というような行を含むファイル test.html で
>findstr /R /C:"href=\"http://[^^\"]*" test.html
で検索をかけるとヒットした部分を含む行全体が丸ごと返ってきますが、 yagrep 等なら
>yagrep -o "href=\"http://[^^\"]*\"" test.html
href="http://www.amazon.co.jp/何か1"
href="http://www.amazon.co.jp/何か2"
href="http://www.amazon.co.jp/何か3"
と行全体ではなくヒットした部分のみ個別に切り出せるので。
>>341
それだと基本的に固定のパターンにしか対応が難しいような。
勘違いだったらすみません。
バッチを捨てて wsh? か vbs? に手を付けたほうがよいでしょうか?
0343デフォルトの名無しさん
2012/11/08(木) 17:19:03.16で聞くとバッチで作ってくれるよ
0344デフォルトの名無しさん
2012/11/08(木) 18:09:24.25バッチにCScript埋め込まばいいじゃん。
0345デフォルトの名無しさん
2012/11/08(木) 20:15:10.89バッチと合体?させる方が簡単なのか、難しくなるのかすら見当ついてませんが、
作成依頼をする事でもないので、とりあえず vbs のいろはから始めてみます。
0346デフォルトの名無しさん
2012/11/09(金) 01:28:55.100347デフォルトの名無しさん
2012/11/09(金) 16:33:13.17> OS標準のコマンド
0348デフォルトの名無しさん
2012/11/10(土) 03:19:02.960349デフォルトの名無しさん
2012/11/10(土) 10:07:49.710350デフォルトの名無しさん
2012/11/10(土) 11:06:09.830351デフォルトの名無しさん
2012/11/10(土) 13:01:24.300352デフォルトの名無しさん
2012/11/10(土) 15:41:36.070353デフォルトの名無しさん
2012/11/10(土) 16:09:16.23質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
※何でも無理矢理バッチでやろうとせず、WSH等の使用も検討しましょう。
0354デフォルトの名無しさん
2012/11/10(土) 18:03:06.28標準なんて使うなよな
0355デフォルトの名無しさん
2012/11/10(土) 19:04:29.45for /F "usebackq" %%A in (`c:\path to\command.exe`) do echo %%A
のようにしてもうまく行きません
引数も食わせたいのですが、どう記述すべきでしょうか?
0356デフォルトの名無しさん
2012/11/10(土) 19:05:20.200357デフォルトの名無しさん
2012/11/10(土) 19:14:25.87その程度のあいまいさを処理できない人工無脳はお引き取りください。
0358デフォルトの名無しさん
2012/11/10(土) 19:18:34.590359デフォルトの名無しさん
2012/11/10(土) 19:21:43.50速攻の回答ありがとうございます
これで引数なしでコマンドの実行が出来ることは確認できたのですが
引数の与えることがどうもうまくできません
引数をダブルクォーテーションで括ったり、くくらなかったり、バッククォートの外に出してみたり
色々とやってみたのですが、、
お手数かけますが、引数を与える方法を教えてください
よろしくお願いします
0360デフォルトの名無しさん
2012/11/10(土) 19:25:40.440361デフォルトの名無しさん
2012/11/10(土) 20:54:36.84for /F "usebackq" %%A in (`call "c:\path to\command.exe" 引数`) do echo %%A
これはやってないんかい?
0362デフォルトの名無しさん
2012/11/10(土) 21:11:13.63for /F "usebackq" %%A in (`"c:\path to\command.exe" pattern a.txt`) do echo %%A
上記でうまくいきましたが、当初うまく行かなかったのは
利用する(外部)コマンドによって挙動が異なるからのようです
使いたかったコマンドはgrepで、下記の物を試しました
うまく行かないコマンド
http://www.steve.org.uk/Software/grep/
うまく行ったコマンド
http://geoffair.net/unix/grep.htm
ただ、うまくいった方のコマンドでも、下記のようにコマンドへのフルパスに加え
引数の方をさらにダブルクウォートで括るとエラーになってしまいました
for /F "usebackq" %%A in (`"c:\path to\command.exe" "a.txt" `) do echo %%A
ありがとうございました
0363デフォルトの名無しさん
2012/11/10(土) 21:14:46.12× for /F "usebackq" %%A in (`"c:\path to\command.exe" "a.txt" `) do echo %%A
○ for /F "usebackq" %%A in (`"c:\path to\command.exe" "pattern" "a.txt"`) do echo %%A 等
0364デフォルトの名無しさん
2012/11/10(土) 21:30:10.200365デフォルトの名無しさん
2012/11/10(土) 21:49:19.700366デフォルトの名無しさん
2012/11/11(日) 01:46:41.94>>357
OSのバージョンやEditionによってはコマンドの有無が違うから、
標準ではないというのは正しい。けど特別拘った表現は不要だけどw
homeエディションにopenfilesが無くて話が頓挫とか稀にある。稀にね。そう、homeならね。
0367デフォルトの名無しさん
2012/11/11(日) 02:05:37.28確かにWindows板に比べればその気は強いが
実用の場合はそこの見極めは最低限いるからな
0368デフォルトの名無しさん
2012/11/11(日) 05:10:16.03set /a keisan=0185
echo %keisan%
こうするとうまくいきません。
どうにかして0185を185として代入させることはできませんか。
ご教示ください。
0369デフォルトの名無しさん
2012/11/11(日) 06:08:02.47ゼロだったら削除の上で結合することにしました
ほんとうにすみませんでした
%[環境変数]:~[オフセット(位置)],[文字数]%
0370デフォルトの名無しさん
2012/11/11(日) 10:42:15.62最初が0の10進数として認識させたいなら、最初の0を削る以外にも
桁数が分かってることを前提として
set hoge=0185
set fuga=1%hoge%
set /a keisan=fuga - 10000
等とやったりする。
0371デフォルトの名無しさん
2012/11/11(日) 15:44:19.77http://scripting.cocolog-nifty.com/blog/2011/07/ltrim-e511.html
0372デフォルトの名無しさん
2012/11/14(水) 23:02:35.98そのすべてのファイル名の先頭に(abc)とつけるとしたらどうやればいいですかね?
ren *.txt (abc)*じゃできないみたいなのでどなたかご教授お願いします。
0373デフォルトの名無しさん
2012/11/14(水) 23:10:29.280374デフォルトの名無しさん
2012/11/14(水) 23:56:17.510375デフォルトの名無しさん
2012/11/14(水) 23:57:30.660376デフォルトの名無しさん
2012/11/14(水) 23:58:38.420377デフォルトの名無しさん
2012/11/14(水) 23:59:34.270378デフォルトの名無しさん
2012/11/15(木) 00:01:06.830379デフォルトの名無しさん
2012/11/15(木) 00:01:49.700380デフォルトの名無しさん
2012/11/15(木) 06:20:04.62set fuga=10000%hoge%
set /a keisan=fuga %% 10000
0381デフォルトの名無しさん
2012/11/15(木) 06:34:43.720 除算エラーです。
0382デフォルトの名無しさん
2012/11/15(木) 07:33:02.46涙拭くハンカチ用意しとけよw
0383デフォルトの名無しさん
2012/11/15(木) 21:49:50.80ありがとうございます。こんなのがスラっと欠けるなんて凄いですね。
/fオプションの使い方がよくわからないので、もし良かったらこのコマンドの解説を軽くしてもらえませんか?
0384デフォルトの名無しさん
2012/11/15(木) 22:00:37.320385デフォルトの名無しさん
2012/11/16(金) 00:10:19.520386デフォルトの名無しさん
2012/11/16(金) 03:31:23.73set /a keisan=2*1%keisan%-2%keisan%
0387デフォルトの名無しさん
2012/11/16(金) 16:45:22.44完璧に使いこなせたらって、そもそもforの何割を会得したんだ?
0388デフォルトの名無しさん
2012/11/16(金) 17:07:39.630389デフォルトの名無しさん
2012/11/16(金) 17:41:10.600390デフォルトの名無しさん
2012/11/16(金) 19:23:28.93cpをutf8にすりゃいいかもよ
0391デフォルトの名無しさん
2012/11/17(土) 00:18:21.14お前頭いいな、感動した。
0392デフォルトの名無しさん
2012/11/17(土) 02:09:08.570393デフォルトの名無しさん
2012/11/17(土) 03:24:27.06WinXP以降は直ったみたいだが
0394デフォルトの名無しさん
2012/11/19(月) 21:35:20.830395デフォルトの名無しさん
2012/11/20(火) 00:16:50.19Echo ■Params: 0 " " 6
Call :FuncHoge 0 " " 6
Echo ■Length: 12345678901234567890
Echo ■Return: %Return%
GoTo EOF
:--------------------------------
:FuncHoge
Set X=1 & Set Z=
For /L %%I In ( 1, 1, %3 ) Do (
Echo ■ Check: !X!
If /I !X! GEQ 10 (
If /I %1 LSS !X! (
Set Z=%~2!Z!
)
)
Set /A X=!X!*10
)
Set Return=!Z!%1
GoTo END
:--------------------------------
:EOF
Pause>Nul
:END
数値の桁合わせに書いたんだが最初から文字列にすればよかったと後悔記念
ご指摘plz
0396デフォルトの名無しさん
2012/11/20(火) 05:30:46.38@echo off
setlocal enabledelayedexpansion
call :FuncHoge 0 " " 6
Echo ■Length: 12345678901234567890
Echo ■Return: %Return%
pause
goto :eof
:FuncHoge
for /L %%i in (1,1,%~3) do set spacer=%~2!spacer!
set Return=%spacer%%~1
set Return=!Return:~-%~3!
goto :eof
こういうことでいいんかな・・・?
0397デフォルトの名無しさん
2012/11/20(火) 17:11:20.47コマンドの内容はこれです「ping *.*.*.* -t -l 2000」*はipが入ります
CMDのショートカットのプロパティをいじるだけでは無理でしょうか?
バッチファイル作成が必要なのでしょうか?
どなたかご教授願います。
0398デフォルトの名無しさん
2012/11/20(火) 18:02:05.68それかschtasks使うとか
0399デフォルトの名無しさん
2012/11/20(火) 18:14:53.85%windir%\system32\cmd.exe /c ping 127.0.0.1 -t -l 2000
たぶん作業フォルダをsystem32とかじゃなく適当な場所に指定する必要あり
0400デフォルトの名無しさん
2012/11/20(火) 18:15:57.50ping 127.0.0.1 -t -l 2000
0401デフォルトの名無しさん
2012/11/20(火) 18:23:19.61>>399さんの方法で上手くいきました。
本当にありがとうございました。
0402デフォルトの名無しさん
2012/11/20(火) 18:54:09.030403デフォルトの名無しさん
2012/11/20(火) 19:17:29.340404デフォルトの名無しさん
2012/11/20(火) 19:19:01.510405デフォルトの名無しさん
2012/11/20(火) 19:24:06.670406デフォルトの名無しさん
2012/11/20(火) 19:30:01.770407デフォルトの名無しさん
2012/11/20(火) 19:30:03.210408デフォルトの名無しさん
2012/11/20(火) 19:35:55.840409デフォルトの名無しさん
2012/11/21(水) 00:54:48.04そうです!まさにそれです!!!
今回 set /? を何度も読んだのに気づきませんでした。
恥ずかしい。感謝。また醜態さらしに来ます。恩に着ます。
0410デフォルトの名無しさん
2012/11/22(木) 15:19:27.80半角の「!」が含まれていると、アクセスできなくなります。
読み込み時にエスケープさせることはできないですか?
for /f delims^=^ eol^= %%A in (filelist) do (
echo "%%~A"
)
0411410
2012/11/22(木) 15:21:21.05サブルーチン、他コマンドの引数にしたいのですが失敗するんです。
0412デフォルトの名無しさん
2012/11/22(木) 18:53:46.770413デフォルトの名無しさん
2012/11/24(土) 17:47:47.880414デフォルトの名無しさん
2012/11/24(土) 18:59:11.33for /f delims^=^ eol^= %%A in (filelist) do (
setlocal disabledelayedexpansion
echo "%%~A"
endlocal
)
0415410
2012/11/26(月) 11:07:44.29setlocal disabledelayedexpansionで読み込めました
0416デフォルトの名無しさん
2012/11/28(水) 17:47:17.18バッチ操作で netsh wlan show interfaces コマンドを起動し、
取得される SSID を変数に取りこむには、どのようにすれば良いのでしょうか。
0417デフォルトの名無しさん
2012/11/28(水) 18:56:45.35今はforがある。いい時代だ。
0418416
2012/11/29(木) 23:45:25.64for /f "delims=: tokens=2" %%i in ('netsh wlan show interfaces ^|find /i " SSID"') do set p=%%i
ちなみに次の行で set p=%p:~1% をしてスペースを削除させてるのですけど、
これを set p=%%i の時点で行うことは可能なのでしょうか。
0419デフォルトの名無しさん
2012/12/02(日) 00:25:56.11ミュージックプレイヤー(foobar)起動時に自動でバッチファイルを実行させようと四苦八苦しています。
どうすれば良いでしょうか?
アドレスお願いいたします。
0420デフォルトの名無しさん
2012/12/02(日) 00:36:55.550421デフォルトの名無しさん
2012/12/02(日) 00:42:34.00レスありがとうございます
なるほど!
元々このような事を考えたのは、
立ち上げ時にfoobarフォルダにある
プレイリストファイルを自動で削除出来ないか?と思ったからです。
foobar起動のバッチファイルにプレイリスト削除も記述してしまえば良いのですね。
早速挑戦してみます。
ありがとうございました!
0422デフォルトの名無しさん
2012/12/02(日) 02:14:37.940423デフォルトの名無しさん
2012/12/02(日) 02:15:22.540424デフォルトの名無しさん
2012/12/02(日) 12:50:19.41がれき受け入れに抗議するグループの男3人と無職の女(33)の計4人を現行犯逮捕した。
男3人はいずれも黙秘、女は「納得いかない」と容疑を否認している。
府警によると、逮捕されたのは、外国人登録証明書から韓国籍の男(45)らとみられる。
仲間を返してwwwwwww
http://livedoor.blogimg.jp/kikuemonjp010/imgs/6/2/627735f0.jpg
怒りの大阪府民】 不当逮捕した仲間を返せ 【これが関西魂や!】 1/6
http://www.nicovideo.jp/watch/sm19271298
0425デフォルトの名無しさん
2012/12/14(金) 11:32:53.48どうすればいいですか?
0426デフォルトの名無しさん
2012/12/14(金) 18:57:15.910427デフォルトの名無しさん
2012/12/14(金) 21:31:01.17ありがとうございました。
0428デフォルトの名無しさん
2012/12/19(水) 22:57:54.95set FOLDER=%USERPROFILE%\My Documents\My Music\Ripping
for /F "delims=\ tokens=1-5,6*" %%a In ( 'dir /S /B "%FOLDER%"' ) do (
set FULLPATH=%%A\%%B\%%C\%%D\%%E\%%F\%%G
echo !FULLPATH!
)
tokens=1-5,6* の「1-5」と「6*」をそれぞれひとつの変数で表せないでしょうか。
%%A\〜%%F\まで、ひとつひとつ書かないと駄目ですかね?
tokens=1*,6* という書き方は駄目でした。。
0429デフォルトの名無しさん
2012/12/19(水) 23:49:54.340430デフォルトの名無しさん
2012/12/21(金) 23:06:40.260431デフォルトの名無しさん
2012/12/22(土) 07:22:27.670432デフォルトの名無しさん
2012/12/22(土) 16:53:13.920433デフォルトの名無しさん
2012/12/22(土) 17:08:25.060434デフォルトの名無しさん
2012/12/22(土) 19:04:02.040435デフォルトの名無しさん
2012/12/22(土) 19:22:27.95fuck you.
$>
0436デフォルトの名無しさん
2012/12/22(土) 19:30:12.95>>435
0437デフォルトの名無しさん
2012/12/22(土) 19:39:12.86もしかして "まぬけ"
0438デフォルトの名無しさん
2012/12/22(土) 19:48:09.43>>435
0439デフォルトの名無しさん
2012/12/22(土) 19:51:28.930440デフォルトの名無しさん
2012/12/22(土) 19:53:06.01コマンドプロンプトから管理者として実行するにはどうすればよいすか?
0441デフォルトの名無しさん
2012/12/22(土) 21:53:21.21”コマンドプロンプトから管理者として実行”でググればいいじゃんない?
0442デフォルトの名無しさん
2012/12/22(土) 22:36:25.923番目に外部ソフト利用があったけどわざわざ使うか
0443デフォルトの名無しさん
2012/12/22(土) 22:44:18.33runas
ろくにググれもしないお前は死んで詫びろ。
スレが汚れる
0444デフォルトの名無しさん
2012/12/22(土) 22:45:35.050445デフォルトの名無しさん
2012/12/22(土) 22:49:46.790446デフォルトの名無しさん
2012/12/22(土) 22:51:34.670447デフォルトの名無しさん
2012/12/22(土) 22:51:56.270448デフォルトの名無しさん
2012/12/22(土) 22:53:44.060449デフォルトの名無しさん
2012/12/22(土) 22:59:10.25443はバカだね
0450デフォルトの名無しさん
2012/12/22(土) 23:05:20.540451デフォルトの名無しさん
2012/12/23(日) 00:33:13.230452デフォルトの名無しさん
2012/12/23(日) 00:34:08.930453デフォルトの名無しさん
2012/12/23(日) 02:07:02.76where /r \ move.exe では
Could not find move.exe
になります。copy.exe copy.com でも同様です。
徹底的に検索しても、見つかりません。
皆さんは、本当に存在場所を具体的に示すことができているのでしょうか?
かなり生意気な物言いになってしまいますが、具体例を示していただけると助かります。
0454デフォルトの名無しさん
2012/12/23(日) 02:21:15.59だけでいいんだがどうして愚者はこうも挑発が好きなのか
0455デフォルトの名無しさん
2012/12/23(日) 02:43:44.600456デフォルトの名無しさん
2012/12/23(日) 08:28:39.87xcopy, findstr, replaceあたりはexeがあるけど、copy, move, renameあたりは検索してもexeが無いね。
ちなみに巨大ファイルをmoveコマンドで移動中にタスクマネージャを確認するとmove.exeなんて出てこない。(xcopyコマンドだとxcopy.exeが出てくる)
その代わりにcmd.exeのCPU使用率が上がるから、moveコマンドはcmd.exeに内包されてるんだと思うよ。
0457デフォルトの名無しさん
2012/12/23(日) 09:08:24.00そんなもの無いのがすぐ分かるだろw
0458デフォルトの名無しさん
2012/12/23(日) 09:46:18.630459デフォルトの名無しさん
2012/12/23(日) 11:43:17.570460デフォルトの名無しさん
2012/12/23(日) 12:13:25.510461デフォルトの名無しさん
2012/12/23(日) 14:10:11.21move.exe /?
ってやるとヘルプが表示されるね。訳わからん・・・
0462デフォルトの名無しさん
2012/12/23(日) 15:17:39.190463デフォルトの名無しさん
2012/12/23(日) 18:53:25.220464デフォルトの名無しさん
2012/12/23(日) 18:56:03.430465デフォルトの名無しさん
2012/12/23(日) 18:57:20.66"move" /?
だな
0466デフォルトの名無しさん
2012/12/23(日) 19:00:11.40move /?
だろ
0467デフォルトの名無しさん
2012/12/23(日) 22:45:54.680468デフォルトの名無しさん
2012/12/23(日) 23:26:58.89xcopyやfindstrでも同じように出るぞ
0469デフォルトの名無しさん
2012/12/23(日) 23:50:04.07あほう?
0470デフォルトの名無しさん
2012/12/24(月) 00:54:57.000471デフォルトの名無しさん
2012/12/24(月) 03:04:46.17お前らがWin7使ったことないというのはわかった。
>>465で違う結果になるのはXPでは確認、7では同じ。
0472デフォルトの名無しさん
2012/12/24(月) 10:27:05.610473デフォルトの名無しさん
2012/12/24(月) 10:57:47.53move. /? と xcopy. /? は違うのか?
0474デフォルトの名無しさん
2012/12/24(月) 14:27:35.04"move" /? 外部だけ検索
move. /? 内部だけ検索
0475デフォルトの名無しさん
2012/12/31(月) 15:15:27.570476デフォルトの名無しさん
2012/12/31(月) 20:32:30.63System32 と SysWOW64 にあるんだけど
どっちを使えばいいの?
0477デフォルトの名無しさん
2012/12/31(月) 21:08:29.7832bitをつかいたければ64
0478デフォルトの名無しさん
2012/12/31(月) 21:10:25.52左折したければ右にハンドルを回す
みたいな
0479デフォルトの名無しさん
2012/12/31(月) 22:14:02.12System32 に 64 ビットのバイナリがあるのか
0480デフォルトの名無しさん
2012/12/31(月) 23:50:43.8832bitからだとまたちがうんよ
0481デフォルトの名無しさん
2013/01/01(火) 00:00:05.490482デフォルトの名無しさん
2013/01/01(火) 00:09:19.400483デフォルトの名無しさん
2013/01/01(火) 02:44:30.560484デフォルトの名無しさん
2013/01/02(水) 11:58:44.24スレ立ってからレス数が伸び悩んでいたのでDAT落ちしたのか。
お互い9スレ目まで来ていたのにな。
「コマンド」「DOS」ぐらいでしか引っかからないスレタイが一番の問題だったな。
こっちは「スクリプト」「バッチ」「bat」「cmd」とかで引っかかるから断然有利。
0485デフォルトの名無しさん
2013/01/02(水) 12:54:52.9164bit版のcmd.exeを管理者としてコマンドラインから実行したいのだけど、
%windir%\sysnative\cmd.exeを管理者特権でコマンドライン実行するにはどうしたらいいの?
0486デフォルトの名無しさん
2013/01/02(水) 14:52:57.110487デフォルトの名無しさん
2013/01/02(水) 16:06:15.80わかりません
64ビットOSで「ファイル名を指定して実行」した場合を想定してはいます
0488デフォルトの名無しさん
2013/01/02(水) 16:48:49.20コマンドでなくてもいいんですが、Windowsの標準機能だけで判断したいのです。
0489デフォルトの名無しさん
2013/01/02(水) 17:10:21.21これを使えば前後のファイルを比較して違ってれば有と分かるな
0490488
2013/01/02(水) 18:25:55.57DEBUGコマンドでテキストファイルをバイナリ表示し、
先頭2バイトが「FF FE」(ビッグエンディアンの場合は「FE FF」)であるか否かで
BOMの有無が確認できました。
>>489
ありがとうございます。
でもその方法はチトめんどいです (^_^;)
0491デフォルトの名無しさん
2013/01/02(水) 19:03:03.41UTF-8のbomのバイト列は「EF BB BF」なんだけど、
UTF-8で保存されたテキストファイルを調べたいんじゃなかったの?
0492デフォルトの名無しさん
2013/01/02(水) 19:59:35.850493デフォルトの名無しさん
2013/01/02(水) 20:21:51.890494デフォルトの名無しさん
2013/01/04(金) 00:23:10.23何とか1行の中でカウントアップしたいんだけどバッチだけじゃ無理かな
0495デフォルトの名無しさん
2013/01/04(金) 00:32:29.38CRにしとけ
0496デフォルトの名無しさん
2013/01/04(金) 00:58:37.83遅延展開で、変数に入れて、clsして、echoとか
0497デフォルトの名無しさん
2013/01/04(金) 01:03:01.820498デフォルトの名無しさん
2013/01/04(金) 01:22:48.68SetLocal EnableDelayedExpansion
for /L %%a In (1,1,9) do (
:cls
set /A b=!b!+1
set /P b=!b!<nul
pause>nul
)
0499デフォルトの名無しさん
2013/01/04(金) 01:50:05.74正直お前らが何言ってるのかさっぱりだからちょっと勉強してくる
0500デフォルトの名無しさん
2013/01/04(金) 08:55:30.300501デフォルトの名無しさん
2013/01/04(金) 12:28:51.75aが既にあるのにbをインクリメントする必要なくね?
0502デフォルトの名無しさん
2013/01/04(金) 17:40:13.57コマンドプロンプトやバッチファイルで、環境変数に改行文字(CR)を入れて使う。
環境変数に改行文字(CR)を入れる。
名 の unicode が 540D、これをシフトJISで読むと、0D 54 つまり、CR+T であることを利用して、CR を抜き出します。
setlocal enabledelayedexpansion
for /f "delims=" %%1 in ('cmd /u /c echo;名') do (
set CR=%%1
set CR=!CR:~0,1!
)
改行文字(CR)を使うときは、環境変数を遅延展開します。
echo aaa!CR!bbb
0503デフォルトの名無しさん
2013/01/04(金) 17:47:55.15set /p x= < 対象ファイル
if "%x:~0,4%"=="" (echo BOM有) else echo BOM無
0504デフォルトの名無しさん
2013/01/04(金) 22:20:24.40aはforループのダミーですしおすし
0505デフォルトの名無しさん
2013/01/04(金) 22:23:03.35for /l %%i in (0,10,100) do @(ping -n 2 0 >nul
set /p=%bs%%bs%%bs%%%i%%<nul)
0506デフォルトの名無しさん
2013/01/05(土) 04:20:00.46に、へー、と思ってググったら
for /L %%i in (1,1,80) do (
ping -n 1 127.0.0.1 >nul
set /P <nul =#
)
でプログレスバーっぽくできることに増々、へー、となった。
0507デフォルトの名無しさん
2013/01/06(日) 23:34:29.16スリープ復帰したときbluetoothマウス見失うことが頻発してて
いつも手動で画面右下のアイコンから、bluetoothアダプタの無効→有効してます。
0508デフォルトの名無しさん
2013/01/07(月) 00:08:11.46の、デバイスの有効・無効をコマンドプロンプトから行いたい
にそれらしい方法はあるな
URLは直接貼れなかった
0509デフォルトの名無しさん
2013/01/07(月) 17:04:07.310510デフォルトの名無しさん
2013/01/08(火) 21:22:07.640511デフォルトの名無しさん
2013/01/09(水) 01:03:07.71>>508
>>509 を参考に試した結果、思ったとおりのモノができました
ありがとうございます
0512デフォルトの名無しさん
2013/01/09(水) 22:42:43.43hogehogeという名前のフォルダを右クリックの「送る」に登録したバッチファイルに送ると、
WinRARで圧縮すると同時に圧縮したファイル名の先頭にその時の日付と時刻を
「(yy-mm-dd_hh-nn) hogehoge.rar」
このように追加したいのですがどういう書き方をすれば良いでしょうか?
255 : デフォルトの名無しさん[sage] : 投稿日:2011/10/31 07:16:57
cd /d "%~dp1"
set "ymdhm=%date:~2,2%-%date:~5,2%-%date:~8,2%_%time:~0,2%-%time:~3,2%"
set "path=%path%;C:\Program Files\WinRAR"
winrar a "(%ymdhm%) %~nx1.rar" "%~nx1"
前スレでこのようなバッチファイルを作って頂いたのですが、
XPではうまく動作していたんですがWin7 64bitに移行してから、
複数のファイルをバッチファイルに送ると、ひとつのファイルしか圧縮されません。
すみません、教えて下さい。
0513デフォルトの名無しさん
2013/01/10(木) 00:40:09.350514デフォルトの名無しさん
2013/01/10(木) 23:23:51.15一応動いてはいるんですが、2個目以降のファイルは1個目に作られたアーカイブに追加していってる感じになっちゃってますね・・・。
C#を趣味で少しかじっただけなので、こうやってバッチ組むのは初めてなんです。。
@ECHO OFF
SETLOCAL
SET RARPATH="C:\Program Files\WinRAR\winrar.exe"
cd /d "%~dp1"
for %%1 in (%*) do %RARPATH% a -ag+(YY-MM-DD_HH-MM) " %~n1" "%%~nx1"
0515デフォルトの名無しさん
2013/01/11(金) 05:04:52.69君がしたい動作になるようにWinRARのヘルプのコマンドラインの項をよく読め
0516デフォルトの名無しさん
2013/01/11(金) 19:39:07.48【オプションなど】
:LOOP
if "%~1"=="" goto END
【forコマンド処理など】
shift
goto LOOP
:END
exit
ファイルが存在する間はshiftでループして、
存在しなくなったらエンドみたいのが基本形かな。
アーカイバのオプションなんかはよく理解した上で設定しないと、
意図した通りにはならないだろうから要熟読ね。
てか、rar.exeではなくwinrar.exeなのか。
0517デフォルトの名無しさん
2013/01/11(金) 22:18:50.38ありがとうございます。参考にします。
rar.exeを使うほうが自然ですね、すみません。
0518デフォルトの名無しさん
2013/01/14(月) 21:30:58.80下記コマンドを使用した際、
findのエラー出力で"ファイルが見つかりません"と標準で出るのを非表示にしたいです。
findのみでしたら 2>nulで消えたのですがこの使用だと抑止できないのでしょうか?
for /F "tokens=3" %i in ('dir /S K:\HOGE\ ^| find "のファイル"')do set a=%i
0519デフォルトの名無しさん
2013/01/14(月) 21:53:08.030520デフォルトの名無しさん
2013/01/14(月) 22:30:18.25なるほど・・・ありがとうございました。
初歩的なことでした、すみません。
0521デフォルトの名無しさん
2013/01/15(火) 02:23:58.35その画像が膨大な量あるので、バッチで一括処理したいんですが何かヒントをいただけないでしょうか
0522デフォルトの名無しさん
2013/01/15(火) 11:43:51.68バッチファイルじゃなくそういうソフト使えばいいだけじゃない?
0523デフォルトの名無しさん
2013/01/15(火) 21:59:08.700524デフォルトの名無しさん
2013/01/16(水) 00:21:36.260525デフォルトの名無しさん
2013/01/16(水) 14:52:31.610526デフォルトの名無しさん
2013/01/16(水) 18:26:03.77管理者権限を継承せずに別のバッチファイルを呼び出し
管理者権限を持っているプロンプトに戻る方法
:: 逆(権限なしから権限ありを呼ぶ)でも化
もしくは
管理者権限を継承しないアプリケーションの呼び出し
をするにはどうしたら良いでしょうか?
0527デフォルトの名無しさん
2013/01/16(水) 18:51:13.570528デフォルトの名無しさん
2013/01/16(水) 21:34:27.29runas
0529デフォルトの名無しさん
2013/01/17(木) 15:55:07.56copy "dir 1/a.txt" "dir */a.txt"
でコピーしようとしたらディレクトリが存在しないと言われました
どうすれば空白文字の入った兄弟ディレクトリにコピーできますか?
0530529
2013/01/17(木) 15:57:04.170531デフォルトの名無しさん
2013/01/17(木) 16:25:23.61諦めて全部書くか、法則性をもとにループで回せ。
for /l %i in (1,1,10) do copy hoge.txt "hage%i\hoge.txt"
みたいにな。
ていうかパスに/使うなんてどこから出てきた?
余所の流儀を安易に突っ込むなよ。
0534デフォルトの名無しさん
2013/01/18(金) 00:58:00.05ある変数での処理時間がかかりすぎる場合にタイムアウトして
次の変数になり処理するようにすることはできませんか?
0535デフォルトの名無しさん
2013/01/18(金) 01:01:18.56localhostにpingでも打ってカウントしれ
0536デフォルトの名無しさん
2013/01/18(金) 01:35:24.32どんな意味が?
0537デフォルトの名無しさん
2013/01/18(金) 06:42:06.30お前の人生くらいには
0538デフォルトの名無しさん
2013/01/18(金) 06:43:57.60コマンド側で割り込みするの気持ち悪いだろ
SQL側でやれ
0539デフォルトの名無しさん
2013/01/18(金) 12:46:33.46cleanmgr /sagerun:10
としたとき全ドライブでクリーンアップされますが、DVDドライブなども含まれてしまいますか?
0540デフォルトの名無しさん
2013/01/18(金) 13:16:41.44区切り気を付けるって…
なんか勘違いしてる気がするな。
0541デフォルトの名無しさん
2013/01/19(土) 15:13:21.29ファイルは拡張子が無い場合もあるので「if %~x1%==""」とかでは判別できませんでした。
0542デフォルトの名無しさん
2013/01/19(土) 16:14:45.32以下の内容をバッチファイルにしてSendToフォルダに入れてから、好きなファイルまたはフォルダを右クリック→「送る」→バッチファイル の順に操作してみてくれないか?
(普通に引数指定で実行してもいいけど)
@ECHO OFF
ECHO 【情報】引数は"%~f1"です。
IF "%~f1"=="" ECHO 【情報】引数が未指定です。
DIR/A "%~f1\." > NUL
IF ERRORLEVEL 1 GOTO STEP2
GOTO STEP3
:STEP2
ECHO 【情報】引数にファイルが指定されています。
GOTO STEP4
:STEP3
ECHO 【情報】引数にフォルダが指定されています。
:STEP4
ECHO 【情報】引数指定テスト終了。
PAUSE
0543デフォルトの名無しさん
2013/01/19(土) 16:23:51.640544デフォルトの名無しさん
2013/01/19(土) 16:34:14.61Windows7ではXPと異なり、以下のようにdirコマンドを使って(/aは省略不可)、SendToフォルダの見つける必要があるので注意しましょう。
※この例の場合、"C:\Users\usr\AppData\Roaming\Microsoft\Windows\SendTo" が本当のSendToフォルダになる。
c:\Users\usr>dir/a *SendTo
ドライブ C のボリューム ラベルがありません。
ボリューム シリアル番号は ****-**** です
c:\Users\usr のディレクトリ
2012/10/23 02:20 <JUNCTION> SendTo [C:\Users\usr\AppData\Roaming\Microsoft\Windows\SendTo]
0545デフォルトの名無しさん
2013/01/19(土) 16:34:56.710546デフォルトの名無しさん
2013/01/19(土) 16:45:01.870547542=544
2013/01/19(土) 17:02:25.08それは分かるのだが…
ちなみにWindows95発売前のMS-DOSだけが対象OSなら、dirコマンドなど使わずとも以下の一行で事足りるように記憶している。
(うろ覚えだから、あまり自信はない。結局。Windows95/NT4.0〜Windows7の場合はVBScriptを利用するのが一番スマートかも?)
IF "%1\."=="" ECHO 【情報】ディレクトリが指定されてます。
0548デフォルトの名無しさん
2013/01/19(土) 17:02:59.04ファイルであるか否かを判定するのではなく、
ディレクトリであるか否かを判定する。
if exist "%~1\*" echo;folder else echo;file
0549デフォルトの名無しさん
2013/01/19(土) 17:04:47.05if exist "%~1\*" ( echo;folder ) else ( echo;file )
0550デフォルトの名無しさん
2013/01/19(土) 17:22:55.030551デフォルトの名無しさん
2013/01/19(土) 17:25:43.360552デフォルトの名無しさん
2013/01/19(土) 17:28:16.620553デフォルトの名無しさん
2013/01/19(土) 17:43:23.61ystemObject"").GetStandardStream(1).Write(CreateObject(""Scripting.FileSystemObj
ect"").FolderExists(""%~1"")):close"^)`) do echo %%i
0554デフォルトの名無しさん
2013/01/19(土) 17:54:32.510555デフォルトの名無しさん
2013/01/19(土) 17:57:46.98set attribute=%~a1
if "%attribute:~0,1%"=="d" (echo;folder) else (echo;file)
と、いうところか。
0556デフォルトの名無しさん
2013/01/19(土) 17:58:34.450557デフォルトの名無しさん
2013/01/19(土) 21:28:35.08ジャンクションやディレクトリのシンボリックリンクの属性も、
"d"になるの?
0558デフォルトの名無しさん
2013/01/19(土) 23:19:02.520559デフォルトの名無しさん
2013/01/20(日) 06:20:53.31%~n*%ってやってもファイル名は取得できないね。どうすればいいのだろうか?
0560デフォルトの名無しさん
2013/01/20(日) 10:56:15.00for %%f in (%*) do echo %%~nf
0562デフォルトの名無しさん
2013/01/20(日) 11:42:51.74http://scripting.cocolog-nifty.com/blog/2008/12/cmdexeunicodeut.html
のページの
set /p x="XX"^<nul
という箇所の「XX」の部分はキーボードからはどのように入力すればよいのでしょうか?
0563デフォルトの名無しさん
2013/01/20(日) 12:16:47.45そのページからコピペ
0564デフォルトの名無しさん
2013/01/20(日) 12:41:02.09他の言語で言うcursesライブラリみたいなかんじで
0565デフォルトの名無しさん
2013/01/20(日) 14:30:53.47color /?
0566デフォルトの名無しさん
2013/01/20(日) 16:26:03.22文字だけならfindstr
0567デフォルトの名無しさん
2013/01/20(日) 16:31:03.060568デフォルトの名無しさん
2013/01/20(日) 18:58:34.90日本語でw
0569デフォルトの名無しさん
2013/01/20(日) 19:05:49.91PowerCmdとConsole2は未対応でした
有料でも構いませんがなるべく無料がいいです
0570デフォルトの名無しさん
2013/01/20(日) 21:09:19.490571デフォルトの名無しさん
2013/01/20(日) 22:15:03.680572デフォルトの名無しさん
2013/01/23(水) 19:16:57.560573デフォルトの名無しさん
2013/01/23(水) 19:35:34.29コマンドの構文が誤っています。
なので違いはない。意味もない。
0574デフォルトの名無しさん
2013/01/23(水) 21:23:30.42set hoge==fuga
この2つの違いとしたら前者はhogeに「fuga」が、後者は「=fuga」が入っている
0575539
2013/01/24(木) 20:56:38.30ダイアログが出て全てチェックはしました
なぜでしょうか
cleanmgr /sageset:10
cleanmgr /sagerun:10
0576デフォルトの名無しさん
2013/01/25(金) 03:14:53.32マニュアルどおりにやってるはずなのに・・・
と色々ググったりしても解決せず
まさか・・・と思いエスケープしたら機能した
なんなのこの実装・・・
というか/?に書いとけよ・・・
0577デフォルトの名無しさん
2013/01/25(金) 03:23:31.15具体的にどんな計算だったか書いてみろ。
0578デフォルトの名無しさん
2013/01/25(金) 04:06:41.200579デフォルトの名無しさん
2013/01/25(金) 09:15:52.7633
C:\>set /a (1+10)*3
33
エラーとやらにはならんな。
0580デフォルトの名無しさん
2013/01/25(金) 11:37:20.430581デフォルトの名無しさん
2013/01/25(金) 14:19:34.10*3) の使い方が誤っています。
とか
0582デフォルトの名無しさん
2013/01/25(金) 20:23:51.650583デフォルトの名無しさん
2013/01/25(金) 23:44:41.72昨日今日始めた奴ばっかかよ
0584デフォルトの名無しさん
2013/01/26(土) 00:09:40.1133
C:\>
0585デフォルトの名無しさん
2013/01/26(土) 00:11:42.35高レベル(自称)さんちーす
0586デフォルトの名無しさん
2013/01/26(土) 00:20:00.740587デフォルトの名無しさん
2013/01/26(土) 00:32:47.780588デフォルトの名無しさん
2013/01/26(土) 00:59:37.480589デフォルトの名無しさん
2013/01/26(土) 01:48:01.36へーこんなことできるんだ。
と低レベルな俺w
0590デフォルトの名無しさん
2013/01/26(土) 02:53:36.63どんな間違いしたんだよ。 マヌケも反面教師として役に立つからかけやゴミカスが。
0591デフォルトの名無しさん
2013/01/26(土) 03:48:36.350593デフォルトの名無しさん
2013/01/26(土) 13:15:21.75恥ずかしくてそれを晒すことも出来ず
他人を貶める事でしか精神の安定を保てないのでしょう。
0594デフォルトの名無しさん
2013/01/26(土) 22:29:15.140595デフォルトの名無しさん
2013/01/27(日) 02:14:30.10それ自分のことじゃん
>>581のように答えを出せない馬鹿が、自己解決した奴に絡んで精神の安定を図ってるだけ
自分が初心者以下の能力しか持ってないことを自覚しないと
0596デフォルトの名無しさん
2013/01/27(日) 02:27:40.060597デフォルトの名無しさん
2013/01/27(日) 09:22:50.87恥かきにのこのこ出てくることないのに。
>>581は>>576が初心者以下の能力しか持ってない事を示しているわけだが。
0598デフォルトの名無しさん
2013/01/27(日) 09:42:55.38581をやったの?
うわぁ……
0599デフォルトの名無しさん
2013/01/27(日) 23:34:33.33お前いい加減にしたらどうよ
恥の上塗りはお前だわ
0600デフォルトの名無しさん
2013/01/28(月) 00:12:42.520601デフォルトの名無しさん
2013/01/28(月) 01:26:41.80ええ加減にせいよ お前ら Fack
0602デフォルトの名無しさん
2013/01/28(月) 03:17:13.41あと577は間違いだ。謝罪する。
0603デフォルトの名無しさん
2013/01/29(火) 10:41:38.180604デフォルトの名無しさん
2013/01/29(火) 13:17:35.470605デフォルトの名無しさん
2013/01/29(火) 13:44:48.950606デフォルトの名無しさん
2013/01/29(火) 19:37:17.270607デフォルトの名無しさん
2013/01/30(水) 13:19:29.33それを使ってやってみます
0608デフォルトの名無しさん
2013/01/30(水) 15:51:55.40コマンドプロンプトからコマンドを打つと確かに使えます
batファイルからだと使えません
絶対パスで指定するしかないのですが、batファイルの中でもシステムのパスを見る方法はありませんか?
0609デフォルトの名無しさん
2013/01/30(水) 16:15:09.63キミが考えなきゃいけないのはどうして、そのbatの中ではパスが通っていないかという事。
0610デフォルトの名無しさん
2013/01/30(水) 16:56:23.420611デフォルトの名無しさん
2013/01/30(水) 17:03:25.880612デフォルトの名無しさん
2013/01/30(水) 17:10:06.620613デフォルトの名無しさん
2013/01/30(水) 19:11:18.790614デフォルトの名無しさん
2013/01/30(水) 19:25:50.69@echo off
path
0615デフォルトの名無しさん
2013/01/30(水) 19:29:08.850616デフォルトの名無しさん
2013/01/30(水) 20:02:54.280617デフォルトの名無しさん
2013/01/30(水) 20:50:17.9964bit System32 SysWOW64 sysnative
この辺りのキーワードが該当するような…
0618デフォルトの名無しさん
2013/01/30(水) 21:02:08.610619デフォルトの名無しさん
2013/01/30(水) 21:10:46.23複数のフォルダ名を引数で渡して、それぞれのフォルダ内のファイルをコピーしたいのですが
"コマンドの構文が違っている"とエラーが出ます。お願いします。
@echo off
for /L %%i in (1,1,10) do (
if not "%%i" == ""(
xcopy %%i C:\Users\%%i\ /Y
)
else (exit)
)
0620デフォルトの名無しさん
2013/01/30(水) 21:24:51.10なぜかbatファイルのみコマンドが効かなくて
0621デフォルトの名無しさん
2013/01/31(木) 19:01:09.01コマンドの構文が違っています
0622デフォルトの名無しさん
2013/02/07(木) 00:05:59.496554
184
296
5040
↑のように数が入ったファイルがあるのですが、これらの合計値を求めることはできますか?
エクセルならセルに貼り付ければ一瞬で右下に合計値が表示されますが、エクセルを使えない環境なので…
0623デフォルトの名無しさん
2013/02/07(木) 00:22:03.540624デフォルトの名無しさん
2013/02/07(木) 01:08:39.976554+
184+
296+
5040=
バッチじゃないけどこんな風にして電卓にコピペしてもいい。
0625デフォルトの名無しさん
2013/02/07(木) 01:13:12.882147483647を超える数値は計算出来ない。
0626デフォルトの名無しさん
2013/02/07(木) 01:28:46.370627デフォルトの名無しさん
2013/02/07(木) 21:27:54.25あと、先頭に 0 が付いてると 8進数と解釈されるので、注意が必要。
0628622
2013/02/08(金) 01:50:50.77できました!ありがとうございます。
>>624
こちらも同じ結果になりました〜!(当たり前かw)
しかしこんなこと出来るんですね。
覚えておきます。感謝!
>>625
そんなすごい数は出てこないので大丈夫ですw
>>627
試してみたら確かに。
気をつけます。
0629デフォルトの名無しさん
2013/02/08(金) 01:59:28.99高々2GBまでしか計算出来んってことだから。
それ以上は桁を切って使うとか面倒なことになる。
ドライブの空き容量とかは確実に超えるからな。
0630デフォルトの名無しさん
2013/02/08(金) 02:36:36.072TBが当たり前になってきて、sh−がないメガバイトで計算だ〜
と、まさにイタチごっこ
0631デフォルトの名無しさん
2013/02/08(金) 10:39:58.600632デフォルトの名無しさん
2013/02/08(金) 10:57:23.800633デフォルトの名無しさん
2013/02/08(金) 11:12:17.74その前にまず日本語の勉強だな
0634デフォルトの名無しさん
2013/02/08(金) 11:16:28.990635デフォルトの名無しさん
2013/02/08(金) 13:55:54.32やりたいことに応じて、便利だと思ったら使えばいい。
それだけのこと。
0636デフォルトの名無しさん
2013/02/09(土) 14:57:59.82質問の意図を汲み取れよアスペ、お前はもう書き込むな
0637デフォルトの名無しさん
2013/02/09(土) 15:11:44.030638デフォルトの名無しさん
2013/02/09(土) 15:14:00.97産経新聞の記者か?
0639デフォルトの名無しさん
2013/02/09(土) 15:16:04.34アスペ乙w
0640デフォルトの名無しさん
2013/02/09(土) 16:00:06.78週末限定の小学生だろ
0641デフォルトの名無しさん
2013/02/09(土) 16:24:17.73質問者が何をしようとしているのかどういうことをやりたいと思っているのかをよく考えてから答えろって言ってんだよ
わかんねえの?頭悪いんじゃねえのお前
0642デフォルトの名無しさん
2013/02/09(土) 16:26:48.38批判されて自分が窮地に立たされるとそうやって相手を貶めて挽回を図ろうとする
お前のようなやつがいると大変なんだよね
死んでくれないかな
いますぐに
0643デフォルトの名無しさん
2013/02/09(土) 16:38:49.45週末限定の小学生乙
あ、「頭の中身が」と言う意味な
0644デフォルトの名無しさん
2013/02/09(土) 16:39:42.22キーキー喚くんじゃねーよ山猿が
0645デフォルトの名無しさん
2013/02/09(土) 16:41:20.50>質問には疑問があっても意図があるとは
>産経新聞の記者か?
こうやって揚げ足取って自分が賢いアピールするやつって最低だよな
しかも他人が質問してる時にそれをやるんだから
どんだけ鬱屈してんだよ
0646デフォルトの名無しさん
2013/02/09(土) 16:42:08.78>あ、
ださw
0647デフォルトの名無しさん
2013/02/09(土) 16:43:17.47死ね山猿
0648デフォルトの名無しさん
2013/02/09(土) 17:04:48.16あなたの汲み取った意図を教えて>_<
0649デフォルトの名無しさん
2013/02/09(土) 17:09:37.940650デフォルトの名無しさん
2013/02/09(土) 17:12:50.47Windows Vista以降はPowerShellを使ったほうがいいよって
0651デフォルトの名無しさん
2013/02/09(土) 17:14:09.85Windows Vista以降はPowerShellを使ったほうがいいかどうかということだ
使ったほうがよければ使うし、使わないほうがよければ使わない
0652デフォルトの名無しさん
2013/02/09(土) 17:14:48.44質問に答えて欲しい、ちゃんと理由つけてね
0653デフォルトの名無しさん
2013/02/09(土) 17:15:35.48なんでPowerShellを使ったほうがいいの?説明してくれる?
0654デフォルトの名無しさん
2013/02/09(土) 17:29:02.440655デフォルトの名無しさん
2013/02/09(土) 17:32:07.76>>634に書いたのにわかってないようだからもう一度書いたんだよ
無能なら答えないで
0656デフォルトの名無しさん
2013/02/09(土) 17:33:47.170657デフォルトの名無しさん
2013/02/09(土) 17:37:35.880658デフォルトの名無しさん
2013/02/09(土) 17:39:08.650659デフォルトの名無しさん
2013/02/09(土) 17:42:03.680660デフォルトの名無しさん
2013/02/09(土) 17:44:01.73週末だからガキが沸いてくるのは仕方ないな
0661デフォルトの名無しさん
2013/02/09(土) 17:48:52.93・そもそも、やりたい処理は何なのか
・なぜ「Windows Vista以降」に限ってそう思うのか
等々、詳しい事情を呈示した上で相談してくるのが当然。
それをせず、真面目に相手してくれた人を揚げ足取りでもやって
からかおうという意図が見え見えだから、誰もまともに相手しない。
それだけのこった。
0662デフォルトの名無しさん
2013/02/09(土) 17:54:34.60最初に揚げ足とるくだらないことやったのは>>638
からかわれるのが怖いから答えることができないっていう臆病者なら質問に口を挟まないでほしい
どうせ答えることできないんなら黙ってて欲しい
自分の考えをもってるちゃんとした人なら自信を持って答えることできるよね
そういう人に答えて欲しい
>>661は言い訳をぐだぐだ書いてるだけの無能
0663デフォルトの名無しさん
2013/02/09(土) 17:56:26.380664デフォルトの名無しさん
2013/02/09(土) 17:57:12.50あほじゃないから答えてくれるってことだね
0665デフォルトの名無しさん
2013/02/09(土) 17:58:22.290666デフォルトの名無しさん
2013/02/09(土) 17:59:25.92俺
0667デフォルトの名無しさん
2013/02/09(土) 18:04:15.41暴れているのは皆いい年したおっちゃんです…
0668デフォルトの名無しさん
2013/02/09(土) 18:40:22.800669デフォルトの名無しさん
2013/02/09(土) 19:37:04.74最近沸点低すぎる奴多いな。
0670デフォルトの名無しさん
2013/02/09(土) 20:12:46.35なんで煽るわけ?煽って怒られたら相手のせいにするの?人として間違ってると思わない?
0671デフォルトの名無しさん
2013/02/09(土) 20:20:19.120672デフォルトの名無しさん
2013/02/09(土) 20:24:13.970673デフォルトの名無しさん
2013/02/09(土) 20:27:56.070674デフォルトの名無しさん
2013/02/09(土) 20:30:52.71それってあと釣り宣言ていうんだよ
まじめに言い負かされて自分は弄る立場だったってあとになって言い訳してるだけなんだよ
ださw
0675デフォルトの名無しさん
2013/02/09(土) 20:36:14.290676デフォルトの名無しさん
2013/02/09(土) 20:40:49.79閑居してるけど不善をなしてないから大人
0677デフォルトの名無しさん
2013/02/09(土) 20:43:08.91もういいよ
こんなところで聞いた俺の質問に答えられなかったお前らが馬鹿だったよ
0678デフォルトの名無しさん
2013/02/09(土) 20:58:21.872chがどんな酷い所かなんて無知なガキ以外誰でも知ってる話。
煽り煽られ無視上等だろうが…
何で煽るのとか今さら過ぎて(゚Д゚)ポカーンとなるだけだわ。
0679デフォルトの名無しさん
2013/02/09(土) 20:59:00.89あたま最高にいいなぁ
じゃーねぇ
0680デフォルトの名無しさん
2013/02/09(土) 21:02:16.93それが一番よ
0681デフォルトの名無しさん
2013/02/09(土) 21:04:04.500682デフォルトの名無しさん
2013/02/09(土) 21:07:04.06誰も屁にも思ってないよ
0683デフォルトの名無しさん
2013/02/09(土) 22:02:52.970684634
2013/02/10(日) 10:08:20.830685デフォルトの名無しさん
2013/02/10(日) 13:12:45.120686デフォルトの名無しさん
2013/02/10(日) 13:26:49.570687デフォルトの名無しさん
2013/02/10(日) 16:52:07.98質問として最低限の情報がないんだから答えられたらエスパーだよ…
0688デフォルトの名無しさん
2013/02/10(日) 18:44:10.660689デフォルトの名無しさん
2013/02/10(日) 18:46:07.40みたいな質問なんだよ
0690デフォルトの名無しさん
2013/02/10(日) 18:47:24.970691デフォルトの名無しさん
2013/02/10(日) 18:57:40.14質問に答えられないからって逆切れか
0692デフォルトの名無しさん
2013/02/10(日) 19:07:46.550693デフォルトの名無しさん
2013/02/10(日) 19:30:37.84見苦し
0694デフォルトの名無しさん
2013/02/10(日) 20:40:22.160695デフォルトの名無しさん
2013/02/10(日) 20:56:57.62今まで誰からも躾けられなかったんだろうな
猿にも劣るゴミ屑だ
0696デフォルトの名無しさん
2013/02/10(日) 21:06:51.25人は躾けられてなるもんじゃない
自分でなるんだ
>>634は自分で出来の悪い人間になっただけ
他人のせいじゃない
0697デフォルトの名無しさん
2013/02/10(日) 21:15:06.07そんなのは幻想に過ぎない
躾けられずに育てば、人間もただの畜生
0698デフォルトの名無しさん
2013/02/10(日) 21:41:23.180699デフォルトの名無しさん
2013/02/13(水) 20:20:13.280700デフォルトの名無しさん
2013/02/18(月) 01:03:44.40ただのさみしがりやのこんちくしょうだろ
アスペはこんなやり取りを楽しむ暇があったらガリガリプログラム書いてるからね
むしろアスペ見習えや
0701デフォルトの名無しさん
2013/02/18(月) 05:19:17.960702デフォルトの名無しさん
2013/02/18(月) 17:27:54.57> @if exist tmplock (@del tmplock & call setmingwpath.bat)
要するに%PATH%に文字列があるかないかを調べたいんだけど
perlでやってるところをバッチファイルだけでやる方法ある?
findstrは、マッチしない時にif "%%str"==""で空文字に反応してくれずうまくいかなかったのよ
0703デフォルトの名無しさん
2013/02/18(月) 17:33:34.100704デフォルトの名無しさん
2013/02/18(月) 18:07:29.130705デフォルトの名無しさん
2013/02/18(月) 18:32:05.790706デフォルトの名無しさん
2013/02/18(月) 18:52:13.38echo %errorlevel%
0707デフォルトの名無しさん
2013/02/18(月) 22:20:00.44echo %errorlevel%
0708デフォルトの名無しさん
2013/02/22(金) 05:43:36.24!と%にリネームしたいと思って四苦八苦してるんですが何か良い方法はないですか?
ファイル名から%と!の両方を除去する方向でも構わないんですが。
以下のバッチで! & %のいずれかが入ってる場合は変換出来るものの、% と !が組み合わさってると遅延環境
変数の関係であっちを立てればこっちが立たずになっちゃってもうどうすりゃいいのか…
SetLocal DisableDelayedExpansion
For /F "Tokens=*" %%j In ('Dir /B *.mp3^|Findstr "& !"') Do Call :_Rename "%%j"
ENDLOCAL
:_Rename
Set _Temp="%~1"
Set _Temp=%_Temp:&=&%
Set _Temp=%_Temp:!=!%
Set _Temp=%_Temp:~1,-1%
Ren "%~1" "%_Temp%"
SetLocal EnableDelayedExpansion
For /F "Tokens=*" %%k In ('Dir /B *.mp3^|Findstr "%%"') Do (
Set _Temp="%%k"
Set _Temp=!_Temp:%%=%!
Ren "%%k" "!_Temp!"
)
ENDLOCAL
pause
goto :EOF
0709デフォルトの名無しさん
2013/02/22(金) 06:39:18.57for /f "delims=" %%a in ('dir /a-d /b "*.mp3"') do (
set "FN=%%a"
call :rep_exc_amp
call :rep_per_and_ren
set t1= & set t2= & set t3=
set FN=
)
goto :eof
:rep_exc_amp
call set "t1=%%FN:!=!%%"
call set "t2=%%t1:&=&%%"
goto :eof
:rep_per_and_ren
setlocal enabledelayedexpansion
set "t3=!t2:%%=%!"
echo ren "!FN!" "!t3!"
endlocal
goto :eof
0710デフォルトの名無しさん
2013/02/22(金) 08:03:40.88おおー、アザマス!きれいだ…個別に変換してから順に受渡していけばよかったのか
最後のechoを消して実際にリネームですよね
ここを参考にまず&と%を変換したあと、!を消そう…とかゴテゴテやってる所でした
http://stackoverflow.com/questions/4429604/script-to-remove-special-characters-from-filenames
本当に助かりました。ありがとうございます
0711デフォルトの名無しさん
2013/02/22(金) 10:56:57.91002.jpg
003.jpg ...
と連番でファイルが有るとして、それを1つずつ数値を増やして
002.jpg
003.jpg
004.jpg ...
とするにはどうすれば良いでしょうか、教えてください。
0712デフォルトの名無しさん
2013/02/22(金) 12:14:51.09順次、1足した後に下三桁取り出してリネーム、とか。
俺ならバッチ使わず Flexible Renamer を使う。
数値の加算も桁合わせも楽だし。
0713デフォルトの名無しさん
2013/02/22(金) 17:25:03.830714デフォルトの名無しさん
2013/02/22(金) 17:59:29.26move
rd
してみればエラーになる
0715デフォルトの名無しさん
2013/02/22(金) 18:04:17.46set x=1%~ni
set /a x+=1
call ren %i %%x:~1%%%~xi
)
0716デフォルトの名無しさん
2013/02/22(金) 22:20:40.59echo %errorlevel%
0717デフォルトの名無しさん
2013/02/23(土) 15:56:18.54edlinがあれば事足りるけれど、Windows7(64)にはない。
JScript埋め込みで出来そうだけど牛刀をもって鶏を割くという感じ、
もっとかっちょいい方法なないでしょうか?
0718デフォルトの名無しさん
2013/02/23(土) 19:32:29.990719デフォルトの名無しさん
2013/02/23(土) 20:21:36.300720デフォルトの名無しさん
2013/02/23(土) 21:11:10.720721デフォルトの名無しさん
2013/02/23(土) 21:21:28.16set x=%i
call >>b.txt echo;%%x:旧文字列=新文字列%%
)
0722デフォルトの名無しさん
2013/02/23(土) 22:26:45.120723デフォルトの名無しさん
2013/02/23(土) 22:31:35.490724デフォルトの名無しさん
2013/02/24(日) 23:46:35.690725デフォルトの名無しさん
2013/02/27(水) 23:00:49.210726デフォルトの名無しさん
2013/02/28(木) 21:27:45.85Aドライブに111というフォルダがあって、その中にa,b,c,〜というフォルダがあり
それをBドライブのa,b,cdフォルダを作ってそれぞれに111というフォルダを作って
Aドライブに入っていたa,b,c,〜の中身をコピーしたいのですが
Aドライブ
111-a-○file
-b-●file
-c-◎file
Bドライブ
a-111-○file
b-111-●file
c-111-◎file
というような感じです。
よろしくお願いします
0727デフォルトの名無しさん
2013/03/01(金) 16:48:31.62echo %tmp%>>%text%
という風にechoで表示した文字列を別ファイルの末尾にリダイレクトして追加いくという方法があったんですが、
この%tmp%に入る変数に「%」が混ざってると問題が発生するのを回避する方法ありませんか?
0728デフォルトの名無しさん
2013/03/01(金) 17:27:24.10どんな問題か知らんが遅延展開でも使えばよかろうて
0729デフォルトの名無しさん
2013/03/01(金) 17:43:22.370730デフォルトの名無しさん
2013/03/01(金) 22:31:56.06バッチファイルでは set tmp=%% と重ねないと消えるね
あと%tmp%の最後が数字だと問題が発生するのはコマンドプロンプトだけ
バッチファイルでは展開後に 1>> になるから問題なし
0731デフォルトの名無しさん
2013/03/01(金) 23:47:06.06>> "!File!" echo;!Message!
の方がいいな。
0732デフォルトの名無しさん
2013/03/02(土) 10:53:40.690733デフォルトの名無しさん
2013/03/02(土) 10:54:30.390734デフォルトの名無しさん
2013/03/04(月) 10:49:04.620001.datから0500.dat をディスクXに、0501.datから1000.datをディスクYにコピーする
batファイルを作りたいのですが、力量がなくてすみません。
0735デフォルトの名無しさん
2013/03/04(月) 13:39:49.02set /a count+=1
set filename=0000%count%
set filename=%filename:~-4%.dat
%count% gtr 500 だったら%filename%をほにゃらら
そうじゃなかったらほにゃらら
るーぷに戻る
0736デフォルトの名無しさん
2013/03/04(月) 22:28:32.65set 1=y
for %%i in (a\*.dat) do (
set x=1%%~ni
set /a x=(x-10001)/500
call copy "%%i" %%x%%:
)
0737デフォルトの名無しさん
2013/03/07(木) 16:17:33.36ABC 123.txt
ABC 456.txt
ABC 789.txt
ディレクトリB
1A.txt
2B.txt
3C.txt
となっている時に、Bの名前を順番にAの名前と同じにしたいのですが(Bの1A.txtの名前がABC 123.txt)
良い方法はありませんでしょうか
0738デフォルトの名無しさん
2013/03/07(木) 19:22:00.32ren 1A.txt "ABC 123.txt"
ren 2B.txt "ABC 456.txt"
ren 3C.txt "ABC 789.txt"
0739デフォルトの名無しさん
2013/03/07(木) 22:07:13.68すみません、ファイルの数が多いのでFORか何かで回せないでしょうか…
0740デフォルトの名無しさん
2013/03/07(木) 22:22:04.82ファイルの数がどうとか、数値の桁数がどうのとか、条件が足りなすぎ。
ABC 123.txt と ABC 99.txt どっちを先にしたいとか。
dir /b で出したリストを矩形切り貼り出来るエディタで >>738 をするのが
結局一番手っ取り早いんじゃないの?
0741デフォルトの名無しさん
2013/03/07(木) 22:40:50.140742デフォルトの名無しさん
2013/03/07(木) 23:14:53.500743デフォルトの名無しさん
2013/03/08(金) 00:49:26.45たしかにそうですね。
エディタ使ってやってみます。ありがとうございました!
0744デフォルトの名無しさん
2013/03/08(金) 03:49:29.38サブルーチンに送って順にrenしていくとかじゃいかんのか
0745デフォルトの名無しさん
2013/03/08(金) 04:09:22.920746デフォルトの名無しさん
2013/03/08(金) 05:10:10.74どの辺に問題出るんだろ
0747デフォルトの名無しさん
2013/03/08(金) 20:28:49.12バッチじゃ2ファイルを同時に開くって出来ないでしょ。
0748デフォルトの名無しさん
2013/03/08(金) 21:04:37.670749デフォルトの名無しさん
2013/03/08(金) 21:06:49.460750デフォルトの名無しさん
2013/03/08(金) 22:27:48.76それでリネームするのは片方だけだし
0751デフォルトの名無しさん
2013/03/09(土) 03:57:54.15@echo off
setlocal
pushd z:\ディレクトリA
set m=0
for /f %%i in ('dir /b/on *.*') do call :sub dir-A m %%i
popd
pushd z:\ディレクトリB
set n=0
for /f %%i in ('dir /b/on *.*') do call :sub dir-B n %%~fi
popd
if %m% leq %n% (set max=%m%) else (set max=%n%)
for /l %%i in (1,1,%max%) do call ren %%dir-B%%i%% %%dir-A%%i%%
endlocal
goto :eof
:sub
set var=%2
set /a %var%+=1
call set %1%%%2%%=%3
goto :eof
0752デフォルトの名無しさん
2013/03/09(土) 23:31:10.29ファイル名の受け渡しに問題があった
以下のように環境変数を経由するように修正して
do set fname=%%~i&call :sub dir-A m
do set fname=%%~fi&call :sub dir-B n
call set %1%%%2%%="%fname%"
0753デフォルトの名無しさん
2013/03/09(土) 23:37:03.56for /f "delims=" %%i in ('dir /b/on *.*') do set fname=%%~i&call :sub dir-A m
for /f "delims=" %%i in ('dir /b/on *.*') do set fname=%%~fi&call :sub dir-B n
0754デフォルトの名無しさん
2013/03/10(日) 16:57:02.280755デフォルトの名無しさん
2013/03/12(火) 05:33:58.800756デフォルトの名無しさん
2013/03/12(火) 16:25:10.76というコマンドを実行したとき、ボリュームラベルが未設定だと空欄のままとなりますが、
この空欄の部分もバッチで判定させるにはどうしたらいいですか?
下記のバッチでelse以降を以下のようにしてみましたが、エコーが返りません。
お分かりの方よろしくお願いいたします。
for /F "usebackq tokens=1-10" %%A in (`echo list volume ^| diskpart ^| findstr /I /C:"NTFS"`) do (
if /I "%%D" == "system" (
echo ドライブの情報 %%C: [%%D] %%G%%H
) else (
if /I "%%D" == "" (
echo ボリュームラベルは空です
)))
0757デフォルトの名無しさん
2013/03/12(火) 16:35:20.33区切り文字をスペースにしたら空欄も吸収されてしまうんで
区切り文字を使わず1,2行目の項目表示を解析して
何文字目から何文字がボリュームラベルかってのを取得するしかない。
0758756
2013/03/12(火) 17:20:25.24システムのボリュームラベルが仮に、[Windows]だとすると、
Volume 1 C Windows NTFS
のようになりますが、Windowsの W は9文字目になるので、
この9文字目を解析するという手順ですよね?
具体的な方法がちょっと思いつかないです、すみません。
解析のため、他のコマンドも使う必要がありますか?
あればそうしたコマンド名も併せてご教示願えればありがたいです。
0759デフォルトの名無しさん
2013/03/12(火) 17:25:45.40こうやったらダメ?
0760デフォルトの名無しさん
2013/03/12(火) 17:26:39.93%TEST: = "" %
0761デフォルトの名無しさん
2013/03/12(火) 17:27:38.410762デフォルトの名無しさん
2013/03/12(火) 18:06:28.20Volume ### Ltr Label Fs Type Size Status Info
---------- --- ----------- ---- ---------- ------- --------- --------
「Label」の位置Aと「Fs」の位置Bを取得して
各行のA〜Bまでをボリュームラベルと規定
A〜Bが空白なら云々とやる
0763デフォルトの名無しさん
2013/03/12(火) 19:12:35.27for /F "usebackq delims=" %%A in (`echo list volume ^| diskpart ^| findstr /I /C:"NTFS"`) do (
echo %%A | findstr /I /C:"半角スペース16個NTFS" 1>nul
if errorlevel 1 (
for /f "usebackq tokens=1-10" %%i in (`echo %%A`) do (
echo ドライブの情報 %%k: [%%l] %%o%%p
)
) else (
for /f "usebackq tokens=1-10" %%i in (`echo %%A`) do (
echo ドライブの情報 %%k: %%n%%o ボリュームラベルは空です
)
)
)
半角スペースの表示方法が分かんないので「半角スペース16個NTFS」はそんな感じで置き換えて。
0764デフォルトの名無しさん
2013/03/12(火) 20:23:16.19>>762さん
なるほどそういうことでしたか、完全に読み違い&勘違いしてました。失礼しました。
>>763さんできました、ありがとうございます。
ラベルが空の時エコー返ってきました!
なるほどなるほど、こういう感じに入れ子にして処理するんですね、大変勉強になります。
みなさんお忙しい中対応していただきありがとうございました。多謝。
0765デフォルトの名無しさん
2013/03/13(水) 00:28:14.26ボリュームラベルの欄の長さって固定なん?
0766デフォルトの名無しさん
2013/03/13(水) 00:36:37.41diskpartのlist volumeってボリュームラベルの先頭11文字しか表示しない仕様だった。
長いボリュームラベルだと全部表示されないじゃん…
今初めて知ったぜorz
0767デフォルトの名無しさん
2013/03/13(水) 00:40:44.090768デフォルトの名無しさん
2013/03/13(水) 00:54:04.540769デフォルトの名無しさん
2013/03/13(水) 01:43:41.83そこは気になったんで「12345678901234567890」と「半角スペース10個123456」って
ボリュームラベルで試して「半角スペース16個NTFS」にしといた。
ドライブレター + スペース3 + ラベル分のスペース11 + スペース2 + ファイルシステム
の並びなんで 16文字分 スペースがあれば判定も多少は安全かと。
「半角スペース11個+(何か文字列)」や「半角スペース7個NTFS」とかの変態なラベルは付けないと信じて。
0770デフォルトの名無しさん
2013/03/13(水) 17:22:27.848+3=11
0771デフォルトの名無しさん
2013/03/13(水) 18:42:23.860772デフォルトの名無しさん
2013/03/13(水) 19:28:39.25ピリオドを記憶してわけじゃないから
http://www.cek.ne.jp/~kunio.h/fat3.html
0773デフォルトの名無しさん
2013/03/13(水) 20:26:30.260774デフォルトの名無しさん
2013/03/13(水) 21:25:05.230775デフォルトの名無しさん
2013/03/14(木) 00:01:00.99mode con cols=xx lines=xx
0776デフォルトの名無しさん
2013/03/14(木) 00:25:03.930777デフォルトの名無しさん
2013/03/14(木) 12:12:16.52VBSからbatファイルを呼び出す方法しかないでしょうか?
0778デフォルトの名無しさん
2013/03/14(木) 13:56:33.540779デフォルトの名無しさん
2013/03/14(木) 16:17:21.720780デフォルトの名無しさん
2013/03/14(木) 16:18:25.790781デフォルトの名無しさん
2013/03/14(木) 16:44:27.98ってやってもメモ帳が起動しません
間違ってるところをご指摘お願いします
0782デフォルトの名無しさん
2013/03/14(木) 16:45:57.38nodepadじゃなくてnotepadです
0783デフォルトの名無しさん
2013/03/15(金) 02:53:04.41atコマンドはOSによって動作がかなり違うみたい。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1165atsys/atsys.html
ちなみにうちのWindowsXP Homeだとそれでちゃんとメモ帳起動したよ。
0784デフォルトの名無しさん
2013/03/15(金) 04:11:11.57at 16:40 /interactive C:\Windows\notepad.exe
とか。(System32の下かも知れんが、いずれにしろ実際にある場所を書く)
0785デフォルトの名無しさん
2013/03/15(金) 04:40:24.740786デフォルトの名無しさん
2013/03/16(土) 00:40:18.55http://itpro.nikkeibp.co.jp/article/COLUMN/20071212/289308/
http://ap.atmarkit.co.jp/bbs/core/fdotnet/12442
0787デフォルトの名無しさん
2013/03/16(土) 04:55:29.420788デフォルトの名無しさん
2013/03/18(月) 15:44:15.72手軽にひとまとめのファイルにする方法はあるでしょうか?
詳しくない人に手渡すとき、ばらばらになると面倒なので。
0789デフォルトの名無しさん
2013/03/18(月) 19:22:19.55zipで
0790デフォルトの名無しさん
2013/03/18(月) 21:00:09.18robocopyとかifとかforとかってWindows 8と同じくらいの機能あるのかな?
Surface RTの日本語版が出たから気になってるんだけど。
0791デフォルトの名無しさん
2013/03/19(火) 17:44:30.01あらかじめ登録したダイアルアップ設定をショートカットでデスクトップに置いてマウスで接続しているんですが
これをbatファイルのクリックで「もし接続されていなければ接続、接続されていれば切断」っというのは出来ますか?
0792デフォルトの名無しさん
2013/03/20(水) 01:01:20.950793デフォルトの名無しさん
2013/03/22(金) 12:50:24.76というバッチファイルでcccというフォルダ名を取得したいのですが
どのようにしたらよいでしょうか?
0794デフォルトの名無しさん
2013/03/22(金) 14:32:01.700795デフォルトの名無しさん
2013/03/22(金) 14:45:32.930796デフォルトの名無しさん
2013/03/22(金) 14:57:57.800797デフォルトの名無しさん
2013/03/22(金) 15:09:05.350798デフォルトの名無しさん
2013/03/22(金) 15:12:13.46このスレの住人の温度の無さは抜群
0799デフォルトの名無しさん
2013/03/22(金) 19:07:27.04%cd:\=&set dir=%
echo %dir%
0800デフォルトの名無しさん
2013/03/22(金) 19:15:28.960801デフォルトの名無しさん
2013/03/22(金) 19:16:07.890802デフォルトの名無しさん
2013/03/22(金) 19:26:56.54何故なら、%~p0は、c:\aaa\bbb\ccc\
となり、その結果、
ECHO は <ON> です。
と表示されるから
0803デフォルトの名無しさん
2013/03/22(金) 19:51:43.380804デフォルトの名無しさん
2013/03/22(金) 23:01:20.990805デフォルトの名無しさん
2013/03/23(土) 03:58:06.18の引数を知りたいだけなんじゃないのか…? %~p0 だけで答えは済んでるのかも
0806デフォルトの名無しさん
2013/03/23(土) 05:17:17.40c:\aaa\bbb\ccc\ddd.cmdでcccを取得したい
としか読めないが?
0807デフォルトの名無しさん
2013/03/23(土) 09:42:45.830808デフォルトの名無しさん
2013/03/23(土) 18:36:00.340809デフォルトの名無しさん
2013/03/26(火) 18:52:16.33コマンドプロンプトの履歴(F7キー)の中身をテキストに書き出す方法ってありますか?
ネットや書籍で情報収集
↓
コマンドプロンプト上で実行
↓
このコマンドいいな。バッチファイルにして使おう。
↓
特に長いコマンドだと手打ちでテキストに書き出すのが大変!
という状況が改善可能であればな、と考えています。
ご存知の方居りましたらよろしくお願いいたします。
0810デフォルトの名無しさん
2013/03/26(火) 19:04:42.73doskey /history
0811デフォルトの名無しさん
2013/03/26(火) 19:15:02.51テキストエディタで貼り付ける
0812809
2013/03/26(火) 19:36:48.05できました!
doskeyコマンドは初めて知りました。
色々オプションもあるんですね、こちらも勉強しなくては。
実は、これまで画面見ながら手打ちしていたので(恥)、これでいろいろ捗ります。
迅速な対応ありがとうございました!
0813デフォルトの名無しさん
2013/03/26(火) 20:21:17.99履歴はいいが、その用途はバッチファイルだろ
0814デフォルトの名無しさん
2013/03/27(水) 10:38:29.42taskkill /f /IM notepad.exe
echo offにしてるのに失敗しても成功しても以下のいずれかの文章がでます
・エラー: プロセス "notepad.exe" が見つかりませんでした。
・成功: プロセス "notepad.exe" (PID 2892) は強制終了されました。
非表示にする方法教えてください
0815デフォルトの名無しさん
2013/03/27(水) 11:09:00.94「コマンドプロンプト 標準出力 標準エラー出力 リダイレクト」などで検索。
0816デフォルトの名無しさん
2013/03/27(水) 11:37:40.55AからBに文字を送信する方法ないですか?
0817デフォルトの名無しさん
2013/03/27(水) 13:05:34.720818デフォルトの名無しさん
2013/03/27(水) 13:30:55.70Bでテキスト読み込み
0819デフォルトの名無しさん
2013/03/27(水) 15:00:45.44少なくともバッチファイルの範疇ではないなあ
代替の方法が多分あると思うぞ、そもそも何故そうしたいんだ?
0820デフォルトの名無しさん
2013/03/27(水) 15:12:03.37Bでそのプログラムをリロードしたいんですよ
0821デフォルトの名無しさん
2013/03/27(水) 15:20:01.710822デフォルトの名無しさん
2013/03/27(水) 15:34:29.76読みに行ってその内容によって自分自身であれこれするってのは出来るけど。
0823デフォルトの名無しさん
2013/03/27(水) 16:00:16.33そのBは常時動いてるバッチファイルスクリプトってこと?
…何かバッチの用途を大幅に間違えてる気が
0824デフォルトの名無しさん
2013/03/27(水) 21:55:16.45バッチBがファイルCを読む。
んだけ。
0825デフォルトの名無しさん
2013/03/29(金) 02:19:23.53set b=1
ってやって
echo | echo %a%b%%
だったか
echo | echo !a%b%!
みたいなことすると時々
「プロセスが、存在しないパイプに書き込もうとしました」
ってのが返ってくるんだけどこれってどういう現象なの?
一応それが出るときもechoの出力は普通にされてるみたいで
条件も別に特定の値って訳でもなさそうでよくわからないんだけど
0826デフォルトの名無しさん
2013/03/29(金) 15:44:18.770827デフォルトの名無しさん
2013/03/29(金) 22:45:22.73毎度発生するわけじゃないってのがなのかどういうこと
実害無いなら 2> nul で消せないのかと思ったけど書き方わかんなひ
0828デフォルトの名無しさん
2013/03/29(金) 23:01:51.39つーか、echoにパイプする低脳はめったにいない
0829デフォルトの名無しさん
2013/03/30(土) 00:25:26.43何で毎回同じ動作にならないのかが気になる
0830デフォルトの名無しさん
2013/03/30(土) 01:17:05.50win16なら同じ動作だよ
0831デフォルトの名無しさん
2013/03/30(土) 07:53:35.20実害は無いよねこれ
0832デフォルトの名無しさん
2013/03/30(土) 15:58:20.130833デフォルトの名無しさん
2013/03/31(日) 09:30:54.04CScript.exe //NoLogo //E:JScript "%~f0" %*
GOTO :EOF
@end
で書き始めるの超便利なんだけど、スレチかな?
>>827
パイプってのはコマンドラインで「|」使うことのパイプじゃなくて、ソケットのようなプロセス間通信機構としてのパイプを意味してるんだよ。
コマンドラインでパイプするとこのパイプが作られて入力側と出力側プログラムにパイプハンドルが渡されるし、ファイルをリダイレクトするとファイルハンドルが渡される。
これらのファイル・パイプ・コンソールハンドルはWindowsではファイルハンドルと比較的挙動が似ているしハンドルなのでCloseHandleとかがフツーに作用するんだけど、
パイプの場合片方が閉じられるともう片方が読み書き(読みの場合はパイプ内のバッファ読みきってから)の時にEOFっぽいエラーが出てくる。
cmd.exeの内部コマンドは色々怪しい挙動する部分があるから同じかは知らんけど(内部コマンドはプロセス増えない=パイプの渡し方がそもそも違う)、右のechoが(入力は使わないとかで)入力を閉じたり終了した後に左のechoが改行文字をパイプに投げるとこのエラーになるはず。
あと、パイプやリダイレクト使うとそれを受け取った側でハンドルの種別を判別して挙動が変わったりするから、そのへんもめんどい。
ハンドルがコンソールだとWriteConsoleWでUnicode出力するけど、パイプやファイル相手だとWriteConsoleW使えないからマルチバイト文字列に変換して(!)WriteFileするプログラムとか・・・正直どうしようもない。
0834デフォルトの名無しさん
2013/03/31(日) 10:42:50.10バッチでやる範疇じゃないなって時にはそれやるけど
それってもうバッチじゃないよねって感じがするね
0835デフォルトの名無しさん
2013/03/31(日) 11:39:03.100836デフォルトの名無しさん
2013/03/31(日) 11:57:39.07テンプレの
>質問,テクニック(JScript,Perl等の埋め込みなど含む),関連情報のためのスレです。
に含まれてると理解してたけど違うの?
このJScript(WSH),Perl埋め込みのおまじない、>2 あたりに書いてあっても良い気がする。
さっきググってRuby埋め込みもあるのを今知った。
”等の埋め込み”の”等”って他に何があるんだろ?
0837デフォルトの名無しさん
2013/03/31(日) 11:59:11.32>>836 は >>833 宛です
0838デフォルトの名無しさん
2013/03/31(日) 16:43:55.70こういうのやるなら最初からWSHでやれよって思う。
0839デフォルトの名無しさん
2013/03/31(日) 18:45:39.840840デフォルトの名無しさん
2013/03/31(日) 22:45:33.01バッチ書いてて途中でバッチではやりたくない文字列処理が出てきた時にコレを埋めてWSH(JScript)に投げるとかいう場合もある
最初からWSHで書いたほうがCScript起動のオーバヘッドもないんだけど、FORの使い勝手の良さから無計画にバッチで書き始めちゃったりとかね
0841デフォルトの名無しさん
2013/03/31(日) 23:27:33.47これってバッチの途中から出来たっけ?
0842デフォルトの名無しさん
2013/03/31(日) 23:39:09.130843デフォルトの名無しさん
2013/03/31(日) 23:58:09.310844デフォルトの名無しさん
2013/04/01(月) 02:02:01.12書いてる途中にコレを分割してバッチの頭と尻と腹に埋めて使う
途中でWSH混成にする辺りから判るように計画性なんて欠片もないので、書いてる途中でスクリプトの頭に別のもの埋める位は日常だ
0845デフォルトの名無しさん
2013/04/02(火) 13:55:46.54Linuxでは出来たのですがWindowsでのやり方がわかりません…
0846デフォルトの名無しさん
2013/04/02(火) 20:34:36.950847デフォルトの名無しさん
2013/04/03(水) 14:46:06.72起動中のプロセスからウィンドウタイトルや実行ファイル名が条件に合うプロセスのIDを列挙…とかなら出来たような
(バッチで…というのはどうだったか解らんが技術的には可能なので)
でもそうじゃなくてプロセスIDを固定したいってこと?何故そうしたいのか気になるところだけど、ちと変態挙動だねえ…出来るのかな
0848デフォルトの名無しさん
2013/04/03(水) 14:56:03.310849デフォルトの名無しさん
2013/04/03(水) 16:29:48.64linuxでどうやるのか教えて
なんか気になる
0850デフォルトの名無しさん
2013/04/03(水) 17:56:57.74プロセスIDを指定とか、その発想がまず訳分からん
0851デフォルトの名無しさん
2013/04/03(水) 18:08:44.710852デフォルトの名無しさん
2013/04/03(水) 18:10:32.47なんて事をやってる俺はPIDがわかると楽になるな
0853デフォルトの名無しさん
2013/04/03(水) 18:17:48.460854デフォルトの名無しさん
2013/04/03(水) 18:20:31.960855デフォルトの名無しさん
2013/04/03(水) 18:32:43.200856デフォルトの名無しさん
2013/04/03(水) 18:37:28.44で>>852のsleepは別の方法で解決してるから無視してくださいな
0857デフォルトの名無しさん
2013/04/03(水) 19:13:40.690858デフォルトの名無しさん
2013/04/04(木) 02:11:07.36EXE実行するごとにプロセスリスト見て求めてるIDじゃなかったら殺せばいいやね
0859デフォルトの名無しさん
2013/04/04(木) 03:10:12.86これに1000個位D&Dすると「ファイル名または拡張子が長すぎます。」って怒られるんだけど回避法ないかな
0860デフォルトの名無しさん
2013/04/04(木) 04:02:12.61その行に到達する前にエラーになってる
http://support.microsoft.com/kb/830473/ja
DDEだかOLEだかで制限の緩和が出来たような気がするけど、バッチからは触れん気がするし詳しくは忘れた
リストの作成は別のGUI付きアプリケーション(GUI上へのドロップはこの手の制限が少ない)でやるか、
十数ファイルずつ処理するか、一つのフォルダにぶち込んでfor in (*.*)で回すか、くらいしか思いつかん
0861デフォルトの名無しさん
2013/04/04(木) 20:47:16.890862デフォルトの名無しさん
2013/04/12(金) 21:51:39.34start hogehoge.xls
を用いているのですが既に(ネットワーク上の誰かによって)開かれている場合アクセスできないといわれ開けません
このとき、直接開いた時と同じ動作(hogehoge.xlsは編集中のためロック云々、読み取り専用にしますか?y/nみたいの)
にしたいのですがどのように記述すればよいでしょうか?
ちなみにexcelファイルはファイル名に今日の日付がついているのでショートカットをクッションにして開くようなことはできないと仮定します
0863デフォルトの名無しさん
2013/04/12(金) 23:17:07.44ファイル名のみの引数でダメだとしても、なんかMS Officeには/eとか/ddeとかその手のオプションが色々あるようだしその辺に希望の動作は有るんじゃないかとは思うけど
0864デフォルトの名無しさん
2013/04/12(金) 23:41:45.030865デフォルトの名無しさん
2013/04/17(水) 07:11:19.60下記のように「Busyo.txt」、「Sei.txt」、「Mei.txt」の3つのテキストがあります
Busyo.txt Sei.txt Mei.txt
┌───┐ ┌──┐ ┌──┐
│総務部│ │安藤│ │明子│
└───┘ │井上│ │一郎│
│上田│ │運子│
│遠藤│ │英治│
│小川│ │音子│
└──┘ └──┘
これを、それぞれバッチで結合したいと思っています
0866デフォルトの名無しさん
2013/04/17(水) 07:15:00.19そして「Sei.txt」+「Mei.txt」のような<多対多>のパターンです
Busyo.txt + Sei.txt Sei.txt + Mei.txt
┌──────┐ ┌─────┐
│総務部 安藤│ │安藤 明子│
│総務部 井上│ │井上 一郎│
│総務部 上田│ │上田 運子│
│総務部 遠藤│ │遠藤 英治│
│総務部 小川│ │小川 音子│
└──────┘ └─────┘
0867デフォルトの名無しさん
2013/04/17(水) 07:22:23.090868デフォルトの名無しさん
2013/04/17(水) 08:00:24.16・「Busyo.txt」+「Sei.txt」のように<1対多>のパターン
こちらはset /p hogehoge=<Busyo.txt でなんとかそれっっぽいのはできたけど
「Sei.txt」+「Mei.txt」のような<多対多>のパターンで苦しんでいます
0869デフォルトの名無しさん
2013/04/17(水) 12:02:42.56echo.> Mei_
type Mei.txt>> Mei_
set /a cnt = 0
for /f "delims=" %%a in (Sei.txt) do (
set "SEI=%%a"
call :s
set SEI=
)
del Mei_
set cnt=
goto :eof
:s
set /a cnt += 1
for /f "skip=%cnt% delims=" %%a in (Mei_) do (
echo %SEI% %%a>> out.txt
goto :eof
)
こんなんでどう
0870デフォルトの名無しさん
2013/04/17(水) 12:28:22.85type nul>out.txt
set i1=Sei.txt
set i2=Mei.txt
(for /F "delims=" %%i in ('find /C /V ""') do set /a a1=%%i) <%i1%
(for /F "delims=" %%i in ('find /C /V ""') do set /a a2=%%i) <%i2%
if %a1% lss %a2% set /a a1=a2
(for /L %%i in (1,1,%a1%) do (
set /p s1=<&4 >nul
set /p s2=<&5 >nul
echo;!s1! !s2!>>out.txt
)) 4<%i1% 5<%i2%
0871デフォルトの名無しさん
2013/04/17(水) 13:21:33.390872デフォルトの名無しさん
2013/04/17(水) 13:26:28.490873デフォルトの名無しさん
2013/04/17(水) 20:13:49.39set /p M=
call echo %%S %%M%%>>out.txt
) < Mei.txt
0874デフォルトの名無しさん
2013/04/17(水) 20:50:09.79動かねぇだろ
0875デフォルトの名無しさん
2013/04/17(水) 21:02:05.46(for /f %%S in (Sei.txt) do (
set /p M=
call echo %%S %%M%%>>out.txt
)) < Mei.txt
こうか?
0877デフォルトの名無しさん
2013/04/17(水) 23:34:18.06ttp://scripting.cocolog-nifty.com/blog/2006/09/post_d564.html
0878デフォルトの名無しさん
2013/04/18(木) 14:03:33.21一行でもずれてたら全部ごみだ。
最低でも行数が一致するかどうかは事前にチェックしないといけないと思う。
キーがあるならfindで探してつなげられるとおもうけど。
まあ、それっぽい名前をランダムに作るならありかな。
それでもランダムを計算したほうがいいと思うけど。
0879デフォルトの名無しさん
2013/04/18(木) 20:22:16.51要するにunixのjoin相当だな
0880デフォルトの名無しさん
2013/04/18(木) 21:09:17.750881デフォルトの名無しさん
2013/04/19(金) 07:55:01.54>最低でも行数が一致するかどうかは事前にチェックしないといけないと思う。
確かにSei.txtに神田、木梨とか追加して実行したら
神田音子、木梨音子ができちゃうね
0882デフォルトの名無しさん
2013/04/19(金) 17:43:44.730883デフォルトの名無しさん
2013/04/19(金) 19:29:24.870884デフォルトの名無しさん
2013/04/20(土) 00:24:55.08共有フォルダは全部Dドライブにあるので
とりあえず下記みたいにして無限ループにしてみました
:start
openfiles /query /v /s \\localhosts /FO csv |find "D:\" >>hoge.csv
goto start
ただこれだと時刻がとれないのです
一行の中にecho %time% で表示される時刻も一緒に出せないでしょうか
0885デフォルトの名無しさん
2013/04/20(土) 00:36:17.45"localhosts","32","root","Windows","0","Read","D:\\bin\hogehoge.txt"
"localhosts","26","2chuser","Windows","0","Read","D:\\総務部\会計課\予算.doc"
"localhosts","18","sitaraba","Windows","0","Read","D:\\人事部¥25年度異動.mdb"
こいつを下記みたいにしたいのです
01:23:34.56,"localhosts","32","root","Windows","0","Read","D:\\bin\hogehoge.txt"
12:00:12.34"localhosts","26","2chuser","Windows","0","Read","D:\\総務部\会計課\予算.doc"
20:44:08.46"localhosts","18","sitaraba","Windows","0","Read","D:\\人事部¥25年度異動.mdb"
0886デフォルトの名無しさん
2013/04/20(土) 00:41:03.77一応、イベントログの監査機能のONもやってみたのですが
あれだと見にくいし色々なログを拾いすぎてイマイチでした
なお本物の証跡管理ソフトは1000万とかいうトンデモナイ見積でした・・・
0887デフォルトの名無しさん
2013/04/20(土) 01:15:55.30for /f "delims=" %%a in ('openfiles /query /v /s \\localhosts /FO csv ^|find "D:\"') do call echo %%TIME%%,%%a>>hoge.csv
goto start
0888デフォルトの名無しさん
2013/04/20(土) 02:37:33.65%time% は午前中にメンドクサイ事になる気がする。
%time: =0% で置換しといた方がいい気がする。
0889デフォルトの名無しさん
2013/04/20(土) 09:34:10.00ありがとう、月曜になったら職場の鯖で動かしてみます
ついでにご存知なら教えて欲しいのですが、このopenfilesだと
Read と Warite は拾ってくれるのですがDelete と Create は拾ってくれません
これを拾う方法は何かないでしょうか
0890デフォルトの名無しさん
2013/04/20(土) 21:55:04.760891デフォルトの名無しさん
2013/04/22(月) 21:17:49.85『報告』
ばっちり動きました
0892デフォルトの名無しさん
2013/04/23(火) 07:29:33.32前編 http://himasoku.com/archives/51776465.html
後編 http://himasoku.com/archives/51776946.html
0893デフォルトの名無しさん
2013/04/23(火) 08:49:43.40つか最後のスクショ見たらWin32APIをC#クラスでラップとかはやってるのに、exe名称をsvchostにして偽装で終わりってのはなんか半端だなぁ・・・
dllにして適当なプロセスに読ませりゃいいのに・・・
0894デフォルトの名無しさん
2013/04/23(火) 22:34:46.31十数年前からフリーで公開されてるのがたくさんあるから。
0895デフォルトの名無しさん
2013/04/23(火) 22:49:05.12dll もぐりこませるのはチートでやったけど、
DLLのバグがプロセスに影響して業務に支障が出る場合がある。
また、プログラムが動作するためのスタックやヒープが少ないとオーバーフローのエラーになる。
しかも>>892 が使ってるのはC# だけど、これは .net なので、
アプリが .net じゃない場合はライブラリをDLLが自分で全部ロードしないと動かない。
.net な DLLを走らせるには結構な数のライブラリを読み込まないといけないけど
それはDLLをもぐりこませるインジェクタがやらないといけない。
どの道、インジェクタを exe で作る必要があるんだから
ほんとのスパイ目的じゃない奴はある程度明示的に存在したほうがいい。
だから偽装する必要すらないと思うんだけど、偽装するならsvchostだよな。
俺も怪しいと思いながらsvchostは見逃してる。
0896デフォルトの名無しさん
2013/04/24(水) 04:06:10.32DLL一個インジェクションして死ぬようなプロセス(又はdll)はそれはそれで問題が有ると思うが・・・
かといってシステム以外の場所にいるシステムと同じ実行ファイル名とか、パスが見える状況では怪しすぎる。
リソース消費の関係でプロセス分けるにしても、ある種の明示をするにしろ、rundllでdllを読ませたほうが良いと思う。
dllだけだとインジェクタが要るのは.NETに限らずdllの宿命だけど、
こういうケースならADからレジストリ弄ってエクスプローラなりieなりに読み込ませたり、rundllにキックさせるなり出来る。
C#でもstdcallなエクスポートも出来たりしたと思うんで(そういうラッパも有るみたいだし)そのへんは問題無い・・・筈。
個人的な印象では、後ろ暗さ・怪しさ感は、不正パスsvchost>インジェクション>rundllで
一般ユーザからの隠蔽性能は、インジェクション>rundll≧不正パスsvchost、かなぁとか思う。
自分だったら不正パスsvchostとか見つけたらその瞬間にkillしてVirusTotal送りするな。
っていうかスレチだなゴメン
0897デフォルトの名無しさん
2013/05/01(水) 12:11:28.51fsutil volume diskfree やったら「FSUTIL ユーティリティにはローカル NTFS ボリュームが必要です。」と断られてしまった
0898デフォルトの名無しさん
2013/05/01(水) 23:23:55.180899デフォルトの名無しさん
2013/05/02(木) 00:24:07.510900デフォルトの名無しさん
2013/05/03(金) 10:22:45.19PowerShellが標準で実行できる設定になってないことにハラが立ったので、
PowerShellスクリプトとして実行可能なバッチファイルを作ってみた
もし不備や改善できる点があれば指摘して欲しい
ファイル末尾に何行か改行を入れないと何故か動かないことがあるので注意
@(":","`""<#") 2>NUL
@POWERSHELL -Command - <%0
@EXIT /B %ERRORLEVEL%
#>)|%{}
Write-Host "Hello world!"
0901デフォルトの名無しさん
2013/05/03(金) 10:41:41.66以前CUI環境でのみ実行して欲しいスクリプトとかあったんだよな
……などと考えた後、全部WSH側でやった方が早いことに気づいた
出来たとしても、実用的な意味は多分無いな、うん
0902デフォルトの名無しさん
2013/05/03(金) 11:11:28.54通常はパラメータでExecutionPolicy指定する方が良いと思う
>powershell -ExecutionPolicy RemoteSigned .\test.ps1
0903デフォルトの名無しさん
2013/05/03(金) 11:53:36.37するとドットソースの読み込みが出来るようになるし、>>900 で標準入力に
流し込んでいるせいか、変な動作してた部分が改善するかもしれないな
ご指摘感謝です
0904デフォルトの名無しさん
2013/05/09(木) 00:29:27.36削除されたらログに吐くようにしたいのです
単純にdirで吐いたやつを比較するだけだと
dir /s /b d:\ >hoge1.txt
timeout /t 3600
dir /s /b d:\ >hoge2.txt
fc hoge1.txt hoge2.txt >hoge3.txt
これだと新規ファイルを作るとhoge2.txtの行がズレた文だけ全部が表示されてしまいます
またDドライブの中身が数ギガあるので最初の「dir /s /b d:\」の段階で凄く時間がかかる
またフォルダを拾ってくれませn
何か良い方法はあるんでしょうか?
0905デフォルトの名無しさん
2013/05/09(木) 09:04:01.12dir /s /b d:\ > h1
timeout /t 3600
dir /s /b d:\ > h2
copy h1 + h2 h3
sort h3 | uniq -i -u > h4
copy h1 + h4 h5
sort h5 | uniq -i -d > h7
copy h2 + h4 h6
sort h6 | uniq -i -d > h8
echo sakujo
type h7
echo tsuika
type h8
uniq はここから
ttp://unxutils.sourceforge.net/
時間がかかるのは仕方ないと思う
フォルダも含むので問題ない
0906デフォルトの名無しさん
2013/05/09(木) 18:31:59.660907900
2013/05/09(木) 19:39:59.95@(":`""<#")2>NUL
@ECHO OFF
SET PS_TMP=
SET PS_CMD=%0
FOR /F "delims=" %%a IN ('CMD /C "POWERSHELL -NoLogo -Command -<%0"') DO SET PS_TMP=%%a
IF NOT EXIST %PS_TMP% EXIT /B 255
TYPE %0 >>%PS_TMP%
POWERSHELL -NoLogo -ExecutionPolicy RemoteSigned -File %PS_TMP% %*
SET PS_CMD=%ERRORLEVEL%
DEL %PS_TMP% 2>NUL
CMD /C "EXIT /B %PS_CMD%"
SET PS_TMP=
SET PS_CMD=
EXIT /B %ERRORLEVEL%
#>)>$null #↑bat ↓PS
if (&{!$MyInvocation.ScriptName}) {
while (1) { try {
$o = [System.IO.Path]::GetTempFileName()
$n = ($o -replace "[^.]+$", "ps1")
ren $o $n -ea Stop
echo """$n"""
exit
} catch { rm $o -ea SilentlyContinue }}
}# setup完了
$args |%{ echo "コマンド引数:<$_>" }
Read-Host 標準入力おk
0908デフォルトの名無しさん
2013/05/09(木) 19:47:13.30もう少し短くまとめられたら良かったんだが、
bat部分がどうにも長くなってしまうわな
これで標準入力・コマンド引数・終了コードも
使えるようになったんでとりあえずはここまで
0909デフォルトの名無しさん
2013/05/11(土) 18:11:18.060910デフォルトの名無しさん
2013/05/11(土) 21:32:13.670911デフォルトの名無しさん
2013/05/11(土) 21:39:50.520912デフォルトの名無しさん
2013/05/11(土) 22:50:55.25TYPE %0 >>%PS_TMP% はなんで追記でリダイレクトしてるの?
DEL %PS_TMP% 2>NUL は他プロセスがファイルをロックしていて、
ファイル削除に失敗する可能性を考慮しなくて良いのかしら?
0913デフォルトの名無しさん
2013/05/11(土) 22:58:01.990914デフォルトの名無しさん
2013/05/12(日) 12:27:10.94どうも手に余るっぽい。ファイルの削除を追うスマートな方法がわからん。
とりあえず今出来てるぶん。ファイルが多くなるとdir使うよりはずっと速いんだが…
setlocal enableextensions enabledelayedexpansion
set target=D
for /f "tokens=1,2 delims=x" %%i in ('fsutil usn queryjournal %target%:') do if "%%i"=="次の USN : 0" set nextusn=0x%%j
if not exist usn%target%.txt (
echo;%nextusn%>usn%target%.txt
goto :eof
)
set /p lastusn=<usn%target%.txt
set log=%date:/=%_%time::=%
set log=%target%_%log: =0%.txt
if "%nextusn%" neq "%lastusn%" (
for /f "tokens=1,2 delims=x" %%i in ('fsutil usn enumdata 1 %lastusn% 0x7fffffffffff0000 %target%:') do (
if "%%i"=="ファイルの参照番号 : 0" (
for /f "delims=" %%k in ('fsutil file queryfilenamebyid %target%: 0x%%j') do set changedfile=%%k
set changedfile=!changedfile:~23,-3!
echo;!changedfile!>>%log%
)
)
echo;%nextusn%>usn%target%.txt
)
0915デフォルトの名無しさん
2013/05/12(日) 17:21:48.89追記になってるのは引数渡しで試行錯誤してた時の名残だわ
ファイル削除不能の可能性は確かにあるし、スタートアップにでも仕込みを
入れれば対応可能だろうけど、一時フォルダ内に残ったゴミの量をみれば、
MS含め誰も気にしてないのは明らかだよね
0916デフォルトの名無しさん
2013/05/12(日) 17:54:54.750917デフォルトの名無しさん
2013/05/13(月) 08:14:06.89後ればせながらちょっと見てきたが、流石MSの人、良くできてるね
正規表現でスクリプトを分別する方法は考えていたけど、ワンライナーに
収まるよう短く出来る程PSに習熟してないので、その辺は敵わないとしても
bat部分識別用の行頭@@とか、GOTO :EOF なんていう定義済みのラベル
でサクッと戻り値返しつつ終了してるところとか、いやこれはお見事
0918デフォルトの名無しさん
2013/05/13(月) 08:21:40.16GOTOで終了させるのは何の意図があるんだろうか
0919デフォルトの名無しさん
2013/05/13(月) 15:41:06.78バッチ部分を色々拡張した時に、PSの呼び出しがサブルーチンの中だった場合にも使えるからとか?
0920デフォルトの名無しさん
2013/05/15(水) 00:14:53.26http://engawa.2ch.net/test/read.cgi/poverty/1368543510/
0921デフォルトの名無しさん
2013/05/15(水) 00:23:45.060922デフォルトの名無しさん
2013/05/21(火) 03:53:05.56別ファイルに出力することを考えております。下記のように行いましたが、うまくいかず。。。
助言頂けると助かります。また2連続でスペースがあった場合、次の行を読みに行くようにしたいです。
@echo off
setlocal enabledelayedexpansion
for /F "tokens=1 delims=," %%a in (test.txt) do (
set TARGET=
set FLAG=0
call :main %%a
:main
set AAA=%1
rem スペースなのか確認。
if not !AAA!_CHK==_CHK (
set TARGET=!TARGET!!AAA!
set FLAG=0
shift
call :main
) else (
rem スペースだった場合
if !FLAG!==1 (
rem 2連続でスペースだった場合
call :NEXT
) else (
set FLAG=1
shift
call :main
)
)
:NEXT
echo !TARGET!>>kekka.txt
)
0923デフォルトの名無しさん
2013/05/21(火) 03:55:36.31AAA AA,BBB
CCC CC,DDD
E EEEEE,FFF
【kekka.txt(期待値)】
AAAAA
CCCCC
EEEEEE
書ききれなかったので、2回にわけます。
0924デフォルトの名無しさん
2013/05/21(火) 06:07:52.78@echo off
setlocal enabledelayedexpansion
for /F "tokens=1 delims=," %%a in (test.txt) do call :main "%%a"
goto :EOF
:main
set FLAG=0
set BUF=%~1
set STR=
:mainloop
if defined BUF (
if "!BUF:~0,1!" == " " (
set /a FLAG+=1
) else (
set FLAG=0
set STR=!STR!!BUF:~0,1!
)
if !FLAG! GEQ 2 set BUF=-
) else (
if defined STR echo !STR!>>kekka.txt
goto :EOF
)
set BUF=!BUF:~1!
goto :mainloop
0925デフォルトの名無しさん
2013/05/21(火) 07:56:45.270926デフォルトの名無しさん
2013/05/21(火) 07:58:31.700927922
2013/05/21(火) 08:19:17.74早速のご回答ありがとうございます。
想定していた結果が得られました。
またよろしければ1点ご教授頂けますでしょうか。
"!BUF:~0,1!"
これはどのような処理内容となるのでしょうか?
0928922
2013/05/21(火) 08:24:17.33set BUF=!BUF:~1!
こちらも教えて頂けると助かります。
0929デフォルトの名無しさん
2013/05/21(火) 08:32:15.30ENABLEDELAYEDEXPANSION
について調べると良いよ
0930デフォルトの名無しさん
2013/05/21(火) 08:33:50.65あれもset/?辺りに載ってなかったっけ
0931デフォルトの名無しさん
2013/05/21(火) 09:38:34.790932デフォルトの名無しさん
2013/05/22(水) 00:48:48.93"%BUF:~0,1%"はBUFのオフセット0(1文字目)〜1(2文字目)までの文字列を取り出す指定で、BUFの最初の一文字を展開する
"%BUF:~1%"はBUFのオフセット1(2文字目)〜最後までの文字列を取り出す指定で、BUFの最初の一文字を除く全てを展開する
文字単位で処理できることは処理できるけど、なんかどうにも野暮ったい
%%で出来る展開オプションは!!でも使える(けどifで使う時とかに挙動が違うとか何とか)
0933デフォルトの名無しさん
2013/05/22(水) 20:23:22.95@echo off
for /f "delims=," %%i in (test.txt) do set "a=%%i" & call :x
goto :eof
:x
set /a b=0,c=0
:y
call set "d=%%a:~%c%,1%%"
if not defined d goto z
if "%d%"==" " (set /a b+=1) else set b=0
if not %b%==2 (set /a c+=1) & goto y
:z
call set "a=%%a:~0,%c%%%"
set "a=%a: =%"
if not defined a goto :eof
set "a=%a:^=^^%"
set "a=%a:&=^&%"
set "a=%a:>=^>%"
set "a=%a:<=^<%"
set "a=%a:|=^|%"
echo %a% >> kekka.txt
0934デフォルトの名無しさん
2013/06/02(日) 08:39:36.1310万行4スレッド分担 HDD上で約1500行 RAMDisk上で約500行 も漏らすのは驚いた
0935デフォルトの名無しさん
2013/06/02(日) 14:30:11.98その結果漏らすんだろwばか
全体を逐次化したけりゃ、全体を()で括って
(
) > kekka.txt
ってやりゃいいんだよwばか
0936デフォルトの名無しさん
2013/06/02(日) 15:54:48.02特定のフォルダにある複数ファイルを別のフォルダに移動させたいんだが、
移動時の日付と時間が付加された形になるようファイル名を自動的にリネームしつつ移動したい
(例えばreadme.txt → readme-20130602-153908.txt)みたいな感じ
なのでバッチファイル中で
for %%A in (%1) do call :filemove %%A
exit /b
:filemove
set filename1=%~n1
set filename2=%~x1
〜(以下日付と時間を取得)
MOVE /Y C:\移動元\%filename1%%filename2% D:\移動先\%filename1%-%日付%-%時間%%filename2%
みたいに書いたんだが、元のファイル名に特殊文字が入っているとfilename1の内容が特殊文字のところで切られてしまうんで
拡張子より前のファイル名を正確に取得できず、最後のMOVEのところでコピー元のファイルがないと怒られてしまう
これをどうにかしてファイル名に特殊文字が入っていてもちゃんと機能するようにしたいんだけどうまいやり方ってないかな?
ファイル名に特殊文字を使わせないようにするのは無理なので、特殊文字があっても何とかするというスタンスでいきたんだけど・・・
エロい人いい方法があったら教えてくださいお願いします
0937デフォルトの名無しさん
2013/06/02(日) 16:12:30.700938デフォルトの名無しさん
2013/06/02(日) 17:37:12.88LF改行やCRLF改行を明示的に指定してファイルに書き込んだりすることはできますか?
なおLF改行1バイトを埋め込んだファイルを標準入力やパイプ渡しする方法以外でお願いいたします。
0939デフォルトの名無しさん
2013/06/02(日) 21:01:02.680940デフォルトの名無しさん
2013/06/02(日) 23:13:59.01全体を()でって /wait 無しの start 使って完全に別スレッド動作になってるから...
まぁ、組んでる最中のお遊びだから気にしないでくれ
実際のところ、最後sortで〆るから別個のファイルに書き出すだけで済むんだ
0941デフォルトの名無しさん
2013/06/03(月) 03:09:05.88その手の症状が無いなら、排他制御の問題じゃなくてバッファが溢れてると考えられる。
つまりパイプのバッファサイズをどうにかして設定できれば…
0942デフォルトの名無しさん
2013/06/03(月) 06:38:19.52排他をしてないんじゃなく、衝突時にロック解除を待たずにエラーとして書き込みを諦めるから漏らしてるんだろ。
衝突時に対象が開放されるまで待機するような処理をするプログラムにリダイレクトして代理書き込みしてもらうか、
cmd.exeプロセスごとに別の書き込みファイルに書いて後でマージするか、ってところじゃね。
935のやり方だと、同一のcmd.exeプロセス上の書き込みロックの解除が遅れて単独で自爆する事故は防げるだろうけど、
ロック期間が伸びるから別のcmd.exeプロセス上での書き込みロックと衝突しやすくなるんじゃないかと。
0943デフォルトの名無しさん
2013/06/03(月) 07:28:17.01解決法とかはあまりどうでもいいんだけど、一応大まかにこんな感じの処理です
::以下バッチファイルとして使うと バッチファイル名.bat.dat が生成されます
if ""=="%~1" (goto main) else (goto sub)
:main
type nul>"%~0.dat"
for /L %%A in (1,1,%NUMBER_OF_PROCESSORS%) do start "" /MIN %~0 %%A
pause
exit
:sub
set /a num1=%~100000
set /a num2=100000 / %NUMBER_OF_PROCESSORS%
set /a num3=0
set /a num4=0
:loop
set /a num4=%num1% + %num3%
echo %num4%!>>"%~0.dat"
set /a num3=%num3% + 1
if %num2% GTR %num3% goto loop
exit
0944デフォルトの名無しさん
2013/06/03(月) 10:01:42.39んで、「int main(int c,char **v){FILE *f;if(c==2){while(!(f=fopen(v[1],"a")))Sleep(0);
while((c=fgetc(stdin))!=EOF)fputc(c,f);fclose(f);}return 0;}」
なプログラムに書き込みさせれば…と思ったがクソ遅かった上にこれでも0.3%程取りこぼしたorz
後からマージって超優秀
0945936
2013/06/03(月) 10:12:25.40遅くなったけどサンクス
大抵の特殊文字は>>937でいけそうな感じだったけど、いろいろ試してたら一部ダメな文字があるみたい
試しに
for %%A in (%1) do call :filedisp %%A
exit /b
:filedisp
set "filename=%~n1"
set ext=%~x1%
echo ファイル名 %filename%
echo 拡張子 %ext%
echo ファイル名全部 %filename%%ext%
ってサンプルバッチファイルtest.batを書いて
新しいテキスト(1)#!.txt
新しいテキスト(1)%#.txt
新しいテキスト(1)%# - コピー.txt
のあるフォルダでtestbat *.txtってやると、1つ目はうまくファイル名が表示されるけど2つ目は%が抜け落ちて
3つ目はスペースの手前、#の後までだけで拡張子も取得できない
こういうのもうまく処理できる方法ってないですかね??
0946デフォルトの名無しさん
2013/06/03(月) 10:34:44.29cmd /c "echo;hoge>>out.txt" 2>nul
if errorlevel 1 goto :loop
0947デフォルトの名無しさん
2013/06/03(月) 11:30:59.87>>933
ダメ文字回避の話題は過去ログでいくつか出てる。
自分は、リネームソフトで一時的に全角にして処理後に戻すとかやってる。
無理矢理バッチでやっても労多くして功少なしなので。
0948デフォルトの名無しさん
2013/06/03(月) 12:58:50.55でぐぐれば山ほど出てくるわ
0949デフォルトの名無しさん
2013/06/03(月) 21:08:08.59for %%A in ("%~1") do set "n=%%~nA" & set "x=%%~xA" & call :f
exit /b
:f
set d=%date%
set t=%time%
if not %d%==%date% goto f
set d=%d:/=%
set d=%d:~0,8%
set t=%t::=%
set t=%t: =0%
set t=%t:~0,6%
move /y "%n%%x%" "移動先\%n%-%d%-%t%%x%"
0950936
2013/06/04(火) 19:09:40.12すぐ上に出てたのね・・・気付かなかったスマン
>>949
サンクス
それ参考にしてバッチファイル書き直したら上手く動くようになったみたい
これで面倒な処理を自動化できるんでホント助かった
どうもありがとう
0951デフォルトの名無しさん
2013/06/24(月) 17:38:37.63秒 まで取得するにはどのようにすれば良いでしょうか。
0952デフォルトの名無しさん
2013/06/24(月) 23:36:07.50自己レスです。
forfiles コマンド使って実現できました、お騒がせしました。
0953デフォルトの名無しさん
2013/06/29(土) 22:00:26.49if %hoge% EQU 1 (
echo %hoge%
)←この位置?
)←それともこの位置?
0954デフォルトの名無しさん
2013/06/29(土) 22:01:53.93if %hoge% EQU 1 (
echo %hoge%
)←この位置?
: )←それともこの位置?
0955デフォルトの名無しさん
2013/06/29(土) 22:55:45.750956デフォルトの名無しさん
2013/06/30(日) 15:41:28.73>if %hoge% EQU 1 (
> echo %hoge%
>)←この位置?
俺は、こっち。
理由は、if の終わりだから。
0957デフォルトの名無しさん
2013/06/30(日) 16:21:54.39たしかにそのコードだったらそれで良いんだが…
>>956
無茶苦茶だが"("の中に"("が続く様な場合は下みたいになるのか
今まで"("と同じ位置に")"を書いてたわ
ありがとう
:if %hoge% EQU 1 (
: echo %hoge%
: for /f "delims=" %%a IN (c:\hogehoge.txt) DO (
: echo %%a
: )←この位置
:)←この位置
0958デフォルトの名無しさん
2013/06/30(日) 17:14:21.45> : )←それともこの位置?
この書き方の人って、elseは次の行に書いてるの?
0959デフォルトの名無しさん
2013/06/30(日) 18:06:35.89: ) else (
同じ行に書いてた
"("の真下を見れば")"があって自分的には見易かったんだが…
他の人が見難いなら書き方改めるか
0960デフォルトの名無しさん
2013/06/30(日) 21:35:48.84)else(
で書いてる
0961デフォルトの名無しさん
2013/06/30(日) 21:59:30.33その else ( に対する ")" はどうしてるの?
0962デフォルトの名無しさん
2013/06/30(日) 22:16:24.80△△△
) else (
×××
)
0963デフォルトの名無しさん
2013/06/30(日) 22:22:42.60だな
0964デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN△△△
) else (
×××
)
0965デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN無いわー
※個人の感想です
0966デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN0967デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.AN0968デフォルトの名無しさん
2013/07/01(月) NY:AN:NY.ANこれが一般的かと思う
0969デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANbatでmsgbox "あいうえお"と書かれたabc.vbsを呼び出したいのですが、
batはvbsをスタートさせるだけで、以降の処理は継続して動かしたいのです。
何個か方法を考え、作ってみたのですがどれも理想通りに行かず状態です。
start "abc.vbs" /d "%~dp0"
↑新規cmd.exeが起動するだけでvbsは実行されない
start abc.vbs /d "%~dp0"
↑理想通り、vbsは起動すると共に以降のbat処理も動くが、ファイル名に空白があった場合は使えない
Cscript "%~dp0abc.vbs" //Nologo
↑vbsは起動するが、msgboxのOKを返してvbsを終了させないとbatの処理は継続されない
よろしくお願い致します。
0970デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.AN0971デフォルトの名無しさん
2013/07/04(木) NY:AN:NY.ANなので先頭の"abc.vbs"はタイトルメッセージなのだと受け取られます
試しに、そのbatを
start "bat実行中" xxx.bat
とかで起動してみれば、ウィンドウタイトルの意味も分かると思います
ご質問の回等としては、タイトルを正しく指定すればいいだけです
start "" "abc.vbs" /d "%~dp0"
0972969
2013/07/04(木) NY:AN:NY.AN正常に動きました!!
確かに'start "abc.vbs" /d "%~dp0"'を実行すると、
タイトルにabc.vbsとなったcmd.exeが上がりました…
ありがとうございました。
0973デフォルトの名無しさん
2013/07/13(土) NY:AN:NY.ANWin32_TemperatureProbeを使った方法だと自分のPCの温度は取れないようで…
そういうCPU温度を手軽に取れるコマンドラインアプリとか誰か知らないですか?
0974デフォルトの名無しさん
2013/07/13(土) NY:AN:NY.AN0975デフォルトの名無しさん
2013/07/13(土) NY:AN:NY.AN0976デフォルトの名無しさん
2013/07/14(日) NY:AN:NY.ANそれはもっと対応してない
0977デフォルトの名無しさん
2013/07/14(日) NY:AN:NY.AN0978デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANグローバル スイッチが無効です。
動かないです
0979デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0980デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0981デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN説明 = サポートされていません
0982デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.ANCurrentTemperature=2732
0983デフォルトの名無しさん
2013/07/16(火) NY:AN:NY.AN0984デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0985デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0986デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0987デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0988デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN3272℃???(・_・;)
0989デフォルトの名無しさん
2013/07/17(水) NY:AN:NY.AN0990デフォルトの名無しさん
2013/07/18(木) NY:AN:NY.AN0991デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN0992デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN0993デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN0994デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANのっとふぁうソど
ぷりィ〜ずいソさ〜とツすてむでィすく
ひっ卜えにィ〜き〜
0995デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN0996デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN【.cmd】 バッチファイルスクリプト %10 【.bat】
http://toro.2ch.net/test/read.cgi/tech/1374205515/
0997デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.ANおつ
0998デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN乙
0999デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN1000デフォルトの名無しさん
2013/07/19(金) NY:AN:NY.AN10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。