構成ファイル (例: .zshrc) を実行せずに対話型 zsh を開始します。

構成ファイル (例: .zshrc) を実行せずに対話型 zsh を開始します。

設定ファイルを実行せずにインタラクティブzshを起動する方法は.zshrc

試してみましたが、zsh -d -f -iプロンプトが指定されたものと同じであるため、~/.zshrcオプションが機能しないようです。

私はmacOS 10.15.4でzsh 5.8を実行しています。

ベストアンサー1

zsh -d -f -i-d(暗黙的に-f)と-izshコマンドラインで実行するスクリプト/コードがなく、stdinが端末の場合はとにかく対話的に実行)は重複しますが、これは正しいです。

しかし、これは/etc/zsh/zshenvまだ解釈されており、これを無効にする方法はないと思います。info zsh RCS詳細より。

あなたの場合は、PS1環境から継承されます。PS1シェルをカスタマイズすることもできる多くの環境変数の1つです。

初期シェルにはrcファイルがなく、カスタマイズは環境変数(ユーザーが~/.profile設定するか、~/.loginログインシェルによって解釈されたもの)を介してのみ行われました。

シェルを構成するために使用される多くの変数があります。望むより:

info zsh 'Parameters Used By The Shell'

詳細(ただし、環境によって見つかった値は無視されます)。

これらの環境変数の一部(たとえばHOME、、、、、、、PATHなどSHELLCOLUMNSはシェル以外の他の多くのプログラムで使用されるため、LANG設定を解除したり設定解除を使用したりすることはおLC_*勧めできません。env -i

この資料にリストされているほとんどの変数は環境に入れたくありませんが、環境で通常の~/.zshrcシェル変数として宣言します。PS1その一つです。PS1多くのシェルではプロンプトのカスタム変数として使用されますが、構文はシェルによって大きく異なります。

PS1残念ながら、一部のGNU / Linuxディストリビューションは、一部のシステム起動ファイルでこの変数を設定およびエクスポートし、bashそれをシェル(GNUシェル)構文に固有の値として定義します。つまり、bashこの環境とは異なる環境で実行するとPS1ガベージが届きます。プロンプト。

PS1環境から削除されたシェルを起動するには、次のようにします。

(unset -v PS1; zsh -f)

一部のenv実装では、次のこともできます。

env -u PS1 zsh -f

環境変数なしで始めるには(上記のように、これはおそらく良い考えではありません):

env -i zsh -f

おすすめ記事