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 $0
return を/bin/zsh
して:!whoami
return するので、***(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