名もなき未知

エンジニアリングとか、日常とかそういうのをまとめる場所。アクセス解析のためGAを利用、Googleに情報を送信しています。商品紹介のためAmazonアフィリエイトを利用、Amazonに情報を送信しています。記事に関しては私が書いていない引用文を除いて自由にご利用ください。

単純な文字列置換ならsedで事足りた

Pythonで記事を書こうと思ったけど、はい。

あるファイルに含まれる文字列httpをhttpsに変えようと思った。結論はsedを使えばいい。ただ、私が考えたフロートしては、

  1. pyhtonでファイル開いて文字列を置き換えて保存すればいいか
  2. でもわざわざpython書かなくても、vimで開いて文字列置換で良くない?文字列も長いわけじゃないし
  3. vimで開くのもめんどくさいし、コマンドラインからvimでゴニョゴニョすればいいのでは
  4. sedってコマンドあるわ…これだわ…

と長い過程を踏んでしまった。つまり、

sed -i -e 's/http/https/g' source.txt

を最終的には書いて、中身を確認した。

この話、何が言いたいかといえば、効率よく目的を達成するためのツールは知っておくと得をするということ。

おそらく今回の場合ではsedで書くよりも短くなるパターンは無いだろうけど、1、2の段階では特に何か短くする方法を考えないといけない。 が、普段から1つの方法ばかりやっている人だと、見えてこないかもしれない(私もココで思考停止してしまう場合もある)

今回はたまたま「そういえばこんなのがあったような…」と思い出せたから良かったが、もし1の方法を取っていたらデバッグ含めて結構時間がかかったと思う(ぱぱっと書くけど、バグらせないとは言い切れない)

というわけで、いつも意識していることだけれども、自分がよく使う道具は使い込んでおくことが大事である。

言語であればライブラリとかフレームワークの存在を知っておくとか、標準の書き方をよく知っておくとか。

普段から勉強することは大切ですねえ(白目