シェルスクリプトの設定ファイル?

シェルスクリプトの設定ファイル?

zshスクリプトの設定ファイルを定義できますか?

私はmacOS 10.15を実行しており、デフォルトのシェルはzshです。alias abc="echo yes"私が考えることができるすべてのプロファイルは、~/.zshrc、~/.zsh_profile、~/.profile、および~/.zsh_loginで定義されています。ただし、シェルスクリプトのt.sh呼び出しは次のようにabc文句を言いますcommand not found: abc

⇒  cat t.sh
abc
⇒  zsh t.sh
t.sh:1: command not found: abc
⇒  sh t.sh
t.sh: line 1: abc: command not found

t.shの一番上に行を追加するとうまくいくことを知っていsource ~/.zshrcますが、知りたいのですが。source ~/.zsh_login私のコンピュータで(私が)実行したすべてのzshスクリプトをデフォルトで実行する設定ファイルを設定できますか?

:!たとえば、プログラムのコマンドだけ:!abcでなく、vimからコマンドを呼び出すときにエイリアスを設定したいので、この質問をします。]。また、上記の質問と関係がない場合はお知らせください。ログインシェルと非ログインシェルまたは他の種類のシェルが混同されます。ちなみに vim では:!echo $0return を/bin/zshして:!whoamireturn するので、***(my name)ログインシェルのように見えます。

答え1

実行するすべてのzshスクリプトの~/.zshenvソースは次のとおりです。

=> cat ~/.zshenv
alias abc="echo yes"
=> cat t.sh
abc
=> zsh t.sh
yes

zshドットファイルの単純化された階層:

  • ~/.zshenv- すべてのzshスクリプトのソース。
  • ~/.zshrc- すべてのインタラクティブzshセッション(ターミナルに接続されたセッション)から開始されます。通常、ここにエイリアスを入力するのが最善です。
  • ~/.zprofile- グループの最初の対話型セッションであるログインzshセッションで開始されます。

使用するには、インタラクティブシェルを起動するようにMacVimを設定します~/.zshrc~/.gvimrc

let &shell='/bin/zsh -i'

他のvimバージョンの場合は、より複雑な作業を行う必要があるかもしれません。回答はこちらからご確認ください。
https://vi.stackexchange.com/questions/16186/how-to-run-zsh-aliased-command-from-vim-command-mode

関連情報