文字コードをコマンドで切り替える(iTerm2 )
環境、ファイルごとに文字コードがeuc, utf-8と混在しており、頻繁に日本語が文字化けしていました。
毎回iTerm2の設定画面で切り替えていましたが、面倒なのでコマンドで切り替えれるようにします。
プロファイルを文字コードの数だけ作る
iTermを開いている状態でcmd + ,
でPreferencesを開き、
+ボタンから必要な数だけプロファイルを作成します。
名前は文字コード名がよいでしょう。
コマンドでプロファイルを切り替える
$ echo -e '\033]1337;SetProfile=プロファイル名\a'
で任意のプロファイルに切り替えることができます。
utf-8に切り替えてみる
$ echo -e '\033]1337;SetProfile=utf-8\a'
$ cat test.txt
aaa
あああ
eucに切り替えてみる
$ echo -e '\033]1337;SetProfile=euc\a'
$ cat test.txt
aaa
秧???????
参考:https://www.iterm2.com/documentation-escape-codes.html
シェルに切り替えコマンドを登録する
毎回コマンドを打つのは面倒なのでbash_profileや.zshrcに登録しておきます。
zshrcを更新後、source .zshrc
コマンドやログインし直して設定値を読み込み直します。
alias utf="echo -e '\033]1337;SetProfile=utf-8\aencording:utf-8'"
alias euc="echo -e '\033]1337;SetProfile=euc\aencourding:euc'"
簡単に文字コードを切り替えることができるようになりました。
$ utf
encoding:utf-8
$ cat test.txt
aaa
あああ
$ euc
encoding:euc
$ cat test.txt
aaa
秧???????
Author And Source
この問題について(文字コードをコマンドで切り替える(iTerm2 )), 我々は、より多くの情報をここで見つけました https://qiita.com/jimpei/items/7e07fe92207c876a8475著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .