[過去ログ] awkについて語るスレ $2 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
803
(4): デフォルトの名無しさん [] 2016/09/18(日)10:41 ID:6jI6cHER(1/5)
ベクターに公開されてるgawk3.1.5(と非公開の3.1.7)、ヘンテコな処理が見つかったのでメモ
このgawkのsystem関数を実行すると、環境変数TMPが指してるフォルダに
@echo off
system関数の引数
という2行が書かれたバッチファイルpip?.bat(?はsystem実行回数+1)というのが作成され
804: デフォルトの名無しさん [] 2016/09/18(日)10:44 ID:6jI6cHER(2/5)
・・・いっぺんに書こうとしたらハネられるorz
805: 803 [] 2016/09/18(日)10:46 ID:6jI6cHER(3/5)
(続き)
それを/c pip?.batで起動、完了後にpip?.batを
削除という流れでコマンドが実行される
806
(1): 803 [] 2016/09/18(日)10:47 ID:6jI6cHER(4/5)
(続き)
system関数を使ったスクリプトを同時に1つしか実行しないなら良いけど
2つ以上実行したときはタイミング次第でpip?.batの数字がぶつかり、先に実行した側が
・ コマンドが実行されない
・ コマンドが実行されるけど、完了後に「バッチファイルが見つかりません」が吐かれる
という結果になる

予めcmdの窓ごとにTMPを変えておけば問題ないけど面倒くさい
コマンド | getlineで起動したほうが手っ取り早いと思う
(ただし出力が2KBytes溜まると止まるから適宜リダイレクトする)

でも何でこんな方法でsystem関数を実装したんだろうね(´・ω・`)
810: 803 [] 2016/09/18(日)16:19 ID:6jI6cHER(5/5)
コマンド | getline で起動する場合はpip?.batは作られませんでした
system関数だけpip?.bat経由の模様
klabaster版のwindows用gawk4.1.3だとsystem関数がpip?.batを
作らなかったから、ベクター版固有の動きかなあと思います
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.054s