Bashからzshに移行しようとしています。
.bashrcを.zshrcに直接配置しましたが、Bashを再度使用しようとすると多くのエラーが発生しました。
.bashrcを.zshrcにエクスポートするにはどうすればよいですか?
lhunathの答えは私を正しい方向に押し進めましたが、zshは.profile
自動的にソースを作成していないようです。このトピックに関する多くの有益な情報は、このスーパーユーザーの投稿にあります。
私が使用している適応は、一般的なエイリアスと関数を入れ.profile
て、次のように手動でソースすることです:
で~/.bashrc
:
source ~/.profile
で~/.zshrc
:
[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'
emulate
zsh 組み込みコマンドです。単一の引数を使用して zsh オプションを設定し、指定されたシェルを可能な限りエミュレートします。
に「エクスポート」する.bashrc
ことはできません.zshrc
。 コマンド .bashrc
を実行するファイルです。コマンドを実行するファイルです。bash
.zshrc
zsh
でコマンドzsh
を実行できるとは期待できないため、前者を後者から実行したりコピーしたりするのではなく、新しいものに変換する必要があります。bash
.bashrc
.zshrc
.bashrc
.zshrc
すべてのシェルに共通のシェル初期化ファイルが必要な場合。を使用します.profile
(および と を削除.bashrc
し.zshrc
ます)。これは、すべての POSIX シェルによって供給されます。そこでは、POSIX シェル機能のみに固執します。その後、そのコードは任意の POSIX シェルで実行されます。zsh
(ただし、 POSIX に準拠しているとは100% 確信が持てません)。
見る:http://mywiki.wooledge.org/DotFiles .
ただし、質問のこの部分を最初に読み間違えましたが、そこにコマンドを入れない限りbash
、実行時にエラーが発生することはありません。あなたは?どのようなエラーが発生していますか? コードを追加したように思えますが、(明らかに)理解できません。.bashrc
zsh
zsh
.bashrc
bash
余談ですが、ojblass
部分的にしか成功しない移植性を強調しようとします。 zsh
は素晴らしいシェルです (私自身は受賞したことはありませんが)。代わりに を使用することをお勧めします#!/usr/bin/env bash
。ほとんどの場合、あなた自身 (そして最終的にはあなたが共有する人々) の移植性のためだけです。
私にとって、Ryenの答えは役に立ちました。しかし、私は少し変更を加えました。ユーザーディレクトリ( vim ~/.profile )の .profile にすべてのエイリアスコマンドを追加しました。
alias gs='git status'
alias gp='git pull'
alias gph='git push'
alias gd='git diff | mate'
alias gau='git add --update'
alias gc='git commit -m'
alias gca='git commit -v -a'
alias gb='git branch'
alias gba='git branch -a'
alias gco='git checkout'
alias gcob='git checkout -b'
alias gcot='git checkout -t'
alias gcotb='git checkout --track -b'
alias glog='git log'
alias glogp='git log --pretty=format:"%h %s" --graph'
alias gfo='git fetch origin'
次に、zsh シェルだけでなく bash にも source コマンドを追加しました。
bash シェル (vim ~/.bashrc) の場合
source ~/.profile
zsh シェル ( vim ~/.zshrc )
source ~/.profile