|
Siさん
>> けっこう疲れてますよね、お互い。ここまでSiさんがつき合ってくれるとは思
>>ってなかった。実はけっこうヘロヘロ。
>
>これで一時休戦かと思わせながら、、
>
>>aaaaa[EOF]
>> な終端をもつファイルの最後に改行を加える方法は何がいいのか
>
>と、文太さんのタフぶりには何と言っていいものやら ^^;
確かに完全に相手を油断させておいてというのを狙っているとしか思えん(爆)。
なんで作者様を油断させる必要があるんだ??? ☆\(^^;)
ふつう、「もう忘れちゃったよ」と冷たくいなされるところなのです。m(_B_)m
優しいお言葉にすっかりよい気持ちになってしまって、それで連続・集中砲火
的発言の数々となっております。ほんとうにすいません。深謝です。そしてマリ
アナ海溝の深みから感謝、感謝であります。m(__)m
とにかく、どうぞゆっくりと楽しまれてください。僕に振り回されないで、と。
m(__)m 何言っているのだか、ですね。
>ハードディスクの中ををひっくり返してやっと sed を探し出して試してみました。
>>>lsed "p;d" file #logos版sed、この版以外だと深くはまっちゃいます。
>これが通りましたからうちにあるのは logos版 のようです。
>SED Ver2.42l Jun 17 1992
>1992/06/17 11:00 25,108 sed.exe
はい、それは logos 版です。serow 版からの拡張で、serow さんがオリジナ
ルから落としてしまった、 少なくはない便利なところを回復させていますので
(エンバグさせてるかも、という作者の言葉にもかかわらず)、安定していて優
秀な sed です。たとえば、コマンドを羅列させる「;」(今回使用)、スクリプ
ト先頭の unix-like な「#n」、s/LHS/RHS/n の置換時の何個目指定フラグ「n」。
この3点だけでも、 僕には serow 版に固執する意味はなくなりました(気づい
たのは、とても遅かったのですが)。
もし総合的に dos 用の sed ということになったら、vector にある
C:\>sed --version
GNU sed version 1.18 + multi-byte extension 1.03
がGNU拡張をもっとも最近まで追っていて、参考書どおりになりそうです。
32ビットになると、けっこう色々と深くて…。
(僕、sedオタクなんです。大して使えやしないのですが)
> xtr も引っ張り出して試してみました。文太さんなら既にご存じかと思いますが、
> xtr -nn -nz -o=hoge.txt foo.txt
いえいえ、知りませんでした。調べることも出来ずじまいでいました。m(__)m
ちゃんとそういうオプションがあるんですね。
> nn 〔初期値:nn-〕
> 入力ファイルが改行無しで終わっている場合でも出力ファイル
> は必ず改行を付けて終わるようにします。
> nz 〔初期値:nz-〕(No ctrl-Z)
> 出力ファイルの最後に ^Z を付けません。(通常、テキスト
> ファイル出力の場合は最後に ^Z を付けるようになっています。)
どっかのツールのどっかのドックで、そんな処理について触れてたな、と思っ
ていたのです。XTRで外れたと思っていたので、お教えいただけて「取れた小
骨」的に本当にすっきりしました。m(__)m
> 昔々に「MS‐DOSテキストデータ料理学」とかいう本を買い込んで awk とか sed
> とか触っていた時期があったのですが、結局使いこなせないまま今日に至っています ^^;
僕も、それ持ってます。もっとも使えるところだけ使えばいい(いざとなると
お勉強が必要になり、けっこうイライラするのですが)と開き直ってますけれど。
因みに、XTRには以下のような関数が用意されているそうで、もうCそのも
のみたい。logsortw のソースをみて、ああ、「Cって知らなくても読める」と
か誤って思ってしまいました。「あ、XTRの関数みたいだ」とも。とはいえ、
XTRの作者、村上さんは、正規表現を使えるところまでもっていけなかった、
ここが痛いですね。
@write
入出力
write (str)指定文字列を出力する関数
@writeln
入出力
writeln (str)指定文字列の後に改行を付加して出力する関数
@put
入出力
put 行バッファへの出力関数
@get
入出力
get ()1行入力。
get (n)指定文字数入力。
@unget
入出力
unget (str)指定文字列を次の入力の対象とする。
|
|