[過去ログ] 【.cmd】 バッチファイルスクリプト %12 【.bat】©2ch.net (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
644(1): 2018/07/19(木)08:26 ID:HqFtoS+0(1) AAS
>>643
多分、process.exeが終了しなくても、標準入出力をクローズすればパイプは渡ってくるんじゃないかな?
645: 2018/07/19(木)22:23 ID:I1yUatr2(1) AAS
>>643
リファレンス読めよ。
&&を何かに変えれば多分動くぜ。
646: 2018/07/20(金)01:23 ID:FDkJiEQ5(1) AAS
コマンドプロンプトって、論理和使えないんだっけな
647: 2018/07/20(金)02:06 ID:2iB3qPvx(1/2) AAS
& コマンドの連結
&& 前のコマンドの実行結果が正常(ERRORCODE=0の場合)に後ろのコマンドを実行する
|| 前のコマンドの実行結果が失敗(ERRORCODE>0の場合)に後ろのコマンドを実行する
648: 2018/07/20(金)02:28 ID:2iB3qPvx(2/2) AAS
ERRORLEVELだったよ
あと、環境変数は実行前に展開されるため、前のコマンドで設定した値を後ろのコマンドで参照すると思わぬ結果になる
for文での注意と同様で、遅延環境変数を使うとかすれば大丈夫だが
また行を分ける場合に%errorlevel%を使うなら参照だけにすること
(設定すると単なる環境変数として扱われる)
あと、そもそも前のコマンドが終了してないのにパイプにデータが渡ってくるのかも要確認
649(1): 643 2018/07/20(金)04:26 ID:ukKUYn/2(1) AAS
レスありがとうございます
標準入出力をクローズというのがちょっと分からないんですがどのようにすればいいのでしょうか?
650(1): 2018/07/20(金)06:55 ID:gIwkChrm(1) AAS
process.exe に標準入出力をクローズさせるんだよ
651: 2018/07/22(日)19:18 ID:WPYgWuMH(1) AAS
そんなことするぐらいならvbsのExec使えばいいと思うの
652(1): 2018/07/22(日)19:49 ID:Gp0M410Q(1) AAS
>>649
>>644 >>650 の言ってることは戯言だから気にするな。
process.exe が終了したら勝手にクローズする。
653: 2018/07/22(日)20:27 ID:jf6K150S(1) AAS
終了してから TASKkill しても見つからんエラーが出るだけで無意味
654: 643 2018/07/22(日)20:27 ID:oUJ4s6M9(1) AAS
リダイレクトしてテキストファイルに出力しながらstartで立ち上げた別のbatにfindして貰う事で解決しました。
655: 2018/07/22(日)23:35 ID:FoHjHQaV(1) AAS
>>652
process.exeってのが自作の場合、そうしろってことだろ
656(1): 2018/07/23(月)17:41 ID:1W7qAEKf(1) AAS
Linuxでコマンド実行した結果とWindowsでコマンド実行した結果を
一つのファイルに書き出したいんだけど、改行コードが違っている
バッチファイルでCR LFではなくLFで出力したいなと思って
このコードを見つけたんだが何やってるのかさっぱりわからない
<NUL set /p=message が set /p=message <NUL と同じ意味で
「メッセージを表示してユーザーの入力内容を変数に入れるコマンド」の
代入先変数の省略 + 入力内容省略 = 改行なしecho
ということはわかったんだけど、^%LF%%LF% がなんなのか
なんでこれでうまく動くのかわからん
外部リンク:stackoverflow.com
SET LF=^
REM important to have two blank lines after the SET command
<NUL set /p=test line^%LF%%LF%> t.txt
657: 656 2018/07/24(火)01:43 ID:tpeQiESg(1/13) AAS
違うこと調べていて、たまたま答えにぶつかったぜw
外部リンク:kensou1900.blog96.fc2.com try-7.html
658: 2018/07/24(火)01:44 ID:tpeQiESg(2/13) AAS
違うこと調べていて、たまたま答えにぶつかったぜw
外部リンク:kensou1900.blog96.fc2.com try-7.html
> キャレット(^)直後の文字がLFの場合は特殊な動作になる。
> キャレ ット(^)の後ろにLFがある場合、そのLFは削除され、
> 次の文字がエスケープされる。不思議なことにキャレ ット(^)の後ろにLFが2つ続く場合は、
> 前のLFは消えるが、後ろのLFは通常の文字のように扱われる。
> この動作を使ってLFをコマンドに渡したり、変数名や変数の値に使用することができる。
>
> LFがエスケープされた場合、バッチファイルの続 きを取り込まないといけなく なる場合がある。その場合、1.から3.が再度行われるようだ。
set /p=test line^[LF][LF]
これはこの部分だな
> 不思議なことにキャレット(^)の後ろにLFが2つ続く場合は、
> 前のLFは消えるが、後ろのLFは通常の文字のように扱われる。
単なる不思議な動作か。なるほどな!
SET LF=^
REM important to have two blank lines after the SET command
こっちも未だよくわからいが、
まあこれも単なる不思議な動作だろう
なっとくした
659: 2018/07/24(火)01:45 ID:tpeQiESg(3/13) AAS
なんでこれが書き込めないんだよ
fc2.com
660: 2018/07/24(火)01:46 ID:tpeQiESg(4/13) AAS
↑これは書き込めるのか
↓これはどうだ?
a.fc2.com
661: 2018/07/24(火)01:46 ID:tpeQiESg(5/13) AAS
kensou1900.blg96.fc2.com
662: 2018/07/24(火)01:46 ID:tpeQiESg(6/13) AAS
blog96.fc2.com
663: 2018/07/24(火)01:47 ID:tpeQiESg(7/13) AAS
aaaablog96.fc2.com とかいう文字が書き込めないみたいだな
664: 2018/07/24(火)01:48 ID:tpeQiESg(8/13) AAS
aaaablog96.fc2.com/aaa.html
665: 2018/07/24(火)01:48 ID:tpeQiESg(9/13) AAS
よくわからん
aaaablog96.fc2.com/blog.html
666(1): 2018/07/24(火)01:49 ID:tpeQiESg(10/13) AAS
よくわからん
aaaa.blog.fc2.com/blog.html
667: 2018/07/24(火)01:50 ID:tpeQiESg(11/13) AAS
面倒くさいから今度からURLは全部短縮URLを使おう
668: 2018/07/24(火)02:13 ID:JJ11wMVF(1) AAS
改行は[LF]じゃなくて[CR][LF]だと思うんだが、どうなんだろう?
669: 2018/07/24(火)04:54 ID:tpeQiESg(12/13) AAS
Windowsの改行コードは[CR][LF]だよ
だけど、処理の一部として、Linux側にコマンドを投げ
その出力をログファイルに書き込むんだよ
Linuxの改行コードは[LF]
その同じログファイルにWindowsからも書き込むんだよ
こっちは当然[CR][LF]
まざるとうざくなるので、どちらかに統一したかったんだよ
670: 2018/07/24(火)06:25 ID:c84rNbv+(1) AAS
どうでもいいが投稿練習は他でやれ
671(2): 2018/07/24(火)12:14 ID:HxFyIf/c(1) AAS
Winでもコンソールは何故かLFだよ
混同すんなよ
672: 2018/07/24(火)14:01 ID:tpeQiESg(13/13) AAS
>>671
コンソールがLFって意味わからん。
改行コードをどう出力するかはコマンド次第だろ
Windowsはデフォルトの改行コードがCR LFだってだけ
それに従わないプログラムもあるよ
(例 nkf は出力改行コードを変更できる)
673(2): 2018/07/24(火)18:49 ID:bSDo/9Xp(1/2) AAS
PSでもcmdでもいいんだけど一行で文字列+連番を出力できない?
echo aaa + (1..10)
とかやると別々に出ちゃう
上下前次1-新書関写板覧索設栞歴
あと 329 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.031s