opkg
entwareパッケージマネージャを使用して組み込みディストリビューションを実行しています。インストールしましたが、bash
現在や今後もタブ補完機能をサポートしていません。だからに切り替えますzsh
。
に正常に切り替えましたが、zsh
このバージョンのLinuxでは、シェルを変更した後にviaから起動したrc
ときzsh
に読み取ったファイルはexec zsh
自動的に変更されません。それでも~/.bashrc
、概して良性です。
ただし、zsh
プロンプトは中断されます。
\[\033[00;37m\]this-comp\[\033[01;31m\]: \[\033[01;37m\]$(echo -n "${PWD/#$HOME/\~}" | awk -F "/" '{
if (length($0) > 50) { if (NF>4) print $1 "/" $2 "/.../" $(NF-1) "/" $NF;
else if (NF>3) print $1 "/" $2 "/.../" $NF;
else print $1 "/.../" $NF; }
else print $0;}')/\[\033[00m\]
シェルが変更されたときにファイルを実行.zshrc
せずに実行するように設定または強制するにはどうすればよいですか?それ以外の場合は、デバイスアップデートプログラムが提供するスクリプトを.bashrc
変更する必要があります。.bashrc
答え1
シェルの変更時に起動ファイルを .bashrc ではなく .zshrc に強制するには、zsh を実行するときに --rcfile オプションを使用します。たとえば、このコマンドを使用すると、exec zsh --rcfile ~/.zshrc
zshの起動時に.zshrcファイルを読み取ることができます。 zshが起動したときに指定された構成ファイル(例えばexec zsh -f ~/.zshrc
。export ZDOTDIR=~/.zshrc.