* mailias (1/28)

alias hoge="ssh hoge@hoge.com"
              alias t11460ss="ssh gonyogonyo@gonyogonyo.com"
              alias sota1235="cd ~/Documents/sota1235"
              alias score="cd ~/Desktop/KOE/Scores"
              

こんな感じで普段よく作業するフォルダとか、リモートログインとかをaliasで登録するのですが

毎回、.zshrcをいじくり回すのがめんどいのでpythonでスパッとできるようにしたい。

ってことでやってみる。

とりあえず

以下の感じで実行できるように考えてみる。

% python mailias.py [path] [alias name]

いい加減ファイル操作は慣れてきた。

# encoding:utf-8
              # Copytright sota1235
              # Date 2014/02/02
              
              import sys
              
              # .zshrcに追加するalias
              argvs = sys.argv
              insert = "alias "+argvs[2]+"=\"cd "+argvs[1]+"\""
              
              # 書き込み
              f = open('~/.zshrc','a+')
              f.write(insert)
              f.close()

引数から~/.zshrcに書き込むためのテキストをinsertに入れて、あとはwrite()するだけ。

実行してみる

              % python mailias.py ~/Documents/sota1235/FebruaryHackathon febhack
              Traceback (most recent call last):
                File "mailias.py", line 12, in <module>
                  f = open('~/.zshrc','a+')
              IOError: [Errno 2] No such file or directory: '~/.zshrc'

あかん、~/.zshrcを認識しない…。

ホームディレクトリを取得できてないのかなと思い調べてたら取得する方法があったのでやってみた。

Thanks -> ponkan lab

# encoding:utf-8
              # Copytright sota1235
              # Date 2014/02/02
              
              import sys
              import os
              
              # .zshrcに追加するalias
              argvs = sys.argv
              insert = "alias "+argvs[2]+"=\"cd "+argvs[1]+"\""
              home = os.environ['HOME']
              
              # 書き込み
              f = open(home+'/.zshrc','a+')
              f.write(insert)
              f.close()

実行してみると…

できた!!

source ~/.zshrcしたらしっかりaliasが貼られていました。

終わり。

参照:mailias


※この記事は WordPress に投稿した記事を変換したものです。一部不自然な表示があるかも知れません。ご了承ください。また、記事タイトル先頭の * は WordPress から移行した記事である印です。

comments powered by Disqus