Zsh -- 우분투로로그인시르토 tmux のデフォルトシェルを zsh に変更する

10778 단어 zshbashtmux



ターミナルの現在地とコマンドを打つところを分離したかった

そのためには zsh にして テーマを適用する必要があった


現在のシェルが bash なのを確認



https://hirooooo-lab.com/development/change-mac-shell/

hirooooo-lab の記事を参考に変更を試みる

kaede@ship:~$ echo $SHELL


/bin/bash



$SHELL の変数をみると、現在のシェルがわかる.


入っているシェルリストに zsh がないのを確認


/etc/shellsの中身を見ると

# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/usr/bin/tmux


dash や tmux はあるが、zsh がなかった.
which zshで探しても出力されない.


zsh 인스톨



https://qiita.com/sayama0402/items/ac9e078b024c3287f99f

sudo apt-get install zsh

The following additional packages will be installed:
  zsh-common
Suggested packages:
  zsh-doc
The following NEW packages will be installed:
  zsh zsh-common

Unpacking zsh-common (5.8-3ubuntu1.1) ...
Unpacking zsh (5.8-3ubuntu1.1) ...

Setting up zsh-common (5.8-3ubuntu1.1) ...
Setting up zsh (5.8-3ubuntu1.1) ...
Processing triggers for man-db (2.9.1-1) ...


zsh 와 zsh-common을 인스트루먼트로 변경했습니다.


zsh 세트 앱



zsh



이 명령으로 bash에서 zsh を起動できる.

This is the Z Shell configuration function for new users,
zsh-newuser-install.
You are seeing this message because you have no zsh startup files
(the files .zshenv, .zprofile, .zshrc, .zlogin in the directory
~).  This function can help you with a few settings that should
make your use of the shell easier.



You can:

(q)  Quit and do nothing.  The function will be run again next time.

(0)  Exit, creating the file ~/.zshrc containing just a comment.
     That will prevent this function being run again.

(1)  Continue to the main menu.

(2)  Populate your ~/.zshrc with the configuration recommended
     by the system administrator and exit (you will need to edit
     the file by hand, if so desired).

--- Type one of the keys in parentheses --- 


지금까지의 Z Shell의 정의에 대한 안내가 있었습니다.
종료 또는 종료

管理者のおすめにしてみる.

2



/home/kaede/.zshrc:15: scalar parameter HISTFILE created globally in function zsh-newuser-install
kaede@machine ~ %



zsh の一時的な起動



zsh と打てば bash 에서 zsh が開く.



ユーザー名と端末名が水色背景
現在のディレクトリが水色文字

に最初からなっていて, bash より この 時点でみやすい.



現在いるが長くなると、
自動で コマンドを打つところは改行してくれるらしい.便利.

この % の位置を > MARK にしたいので拡張をいれたい.
その前にlogin時に zsh が開くようにする.

loginシェルのデフォルトを zsh にする





新しく zsh を入れただけだと、exit して再び新しいシェルを開くと
当然 bash が開く.

https://qiita.com/sayama0402/items/ac9e078b024c3287f99f#%E8%BF%BD%E8%A8%98

chsh, CHange SHell でデフォルトで開くシェルを変えられるようだ

chsh -s $(which zsh)




ターミナルアプリを再起動すると zsh が開いた


$SHELL 変数が bash のままなのを確認




echo $SHELL


/bin/bash



しかし、$SHELL 変数の値は bash のままだ.

新しいtabも zsh で開くが, この変数を変えないと
tmux는 zsh로 할 수 없습니다.

SHELL 変数を zsh にして tmux も zsh で開くようにする



$SHELL に応じて開くのか、
tmux を開くと zsh ではなく bash で開いてしまう.

https://unix.stackexchange.com/a/430460

この回答を読むと、chsh は $SHELL を書き換えない.
なので/etc/passwd を書き換えろと書いてあった.

root:x:0:0:root:/root:/bin/bash


ただちょっとこれを書き換えるのは怖いので
.zshrc でエクスポートして変えるようにする

# change SHELL value
export SHELL="/usr/bin/zsh"


SELL に zsh のパスを入れて 수출 가능.

~ % echo $SHELL
/usr/bin/zsh


오세요!



これで tmux 起動後に zsh に入れた!

추신





https://mikebuss.com/2014/02/02/a-beautiful-productive-terminal-experience/

zsh を使うと、comandを typo した時に
正しい候補を探してくれて
y を押すと、直して再実行もしてくれる.


まとめ


sudo apt-get install zshで zsh をinstor で きる
chsh -s $(which zsh) 드로로그인시르를 zsh に変更できる
export SHELL="/usr/bin/zsh" (을)를 .bashrc에 기록하려면
tmux のloginシェルも zsh に変更できる.

좋은 웹페이지 즐겨찾기