YUKI Hiroshi
yuki****@clear*****
Wed Sep 17 10:53:16 JST 2014
> それ、バックアップファイルを残さない時だけなんですよ。 > BSD sedだと-i ''としないといけなくて、GNU sedだと-i''でいけ > ます。 > > -i.bakのときの挙動はどちらも一緒です。 おおお……試してみたら確かに…… man sedで出てくる説明で言及がなかった(単に、-i extension と -i[suffix] としか書かれていなかった)ので、そういう物だと思い込んでいました。 あと、.repoと同じ位置にバックアップファイルが残ることについては問題ない のでしょうか? もしかして拡張子にかかわらずその位置にあるファイルは自動認識されてしまう のではないだろうか、と思ってとりあえずテンポラリディレクトリの下にバック アップを作ることにした、という理由もあったのでした。 Kouhei Sutou wrote: > In <5418E111.3060009 �� clear-code.com> > "Re: [Groonga-commit] droonga/droonga-http-server �� 6f6f6d9 [master] Disable EPEL by default" on Wed, 17 Sep 2014 10:17:05 +0900, > YUKI Hiroshi <yuki �� clear-code.com> wrote: > >>> sedには-i(in-place)というオプションがあって、それを使うと >>> 一時ファイルを作らずに内容を書き換えることができるんですよ。 >>> それを使うとこんな感じで書けますよ。 >>> >>> $sed -i.bak -e "s/enabled=1/enabled=0/" $epel_repo >> >> そのオプションの存在は知っていたのですが、敢えて避けていました。 >> というのも、今のところはBSD系はサポートしていないのですが(といいつつ、 >> 最初の方で「-r」と「-E」の違いを吸収するためにBSDかどうかの判別をすでに >> やってしまってますけど……)、BSD sedとGNU sedでは-iオプションの取り方が違 >> う(どっちかは「-i.bak」、もう片方は「-i .bak」でないといけない)ので、 >> ややこしいからこのオプションはなるべく使いたくないなあと思っておりまして…… > > それ、バックアップファイルを残さない時だけなんですよ。 > BSD sedだと-i ''としないといけなくて、GNU sedだと-i''でいけ > ます。 > > -i.bakのときの挙動はどちらも一緒です。 > > _______________________________________________ > Groonga-commit mailing list > Groonga-commit �� lists.sourceforge.jp > http://lists.sourceforge.jp/mailman/listinfo/groonga-commit > -- 結城 洋志 <YUKI Hiroshi> E-mail: yuki �� clear-code.com 株式会社クリアコード 〒170-0005 東京都豊島区南大塚3-29-9 中野ビル3階 TEL : 03-5927-9440 FAX : 03-5927-9441 WWW : http://www.clear-code.com/