Bashからzshに移行しようとしています。
.bashrcを.zshrcに直接配置しましたが、Bashを再度使用しようとすると多くのエラーが発生しました。
.bashrcを.zshrcにエクスポートするにはどうすればよいですか?
Bashからzshに移行しようとしています。
.bashrcを.zshrcに直接配置しましたが、Bashを再度使用しようとすると多くのエラーが発生しました。
.bashrcを.zshrcにエクスポートするにはどうすればよいですか?
回答:
lhunathの答えは私を正しい方向に押しやったが、zshは.profile自動的に調達していないようだ。このトピックに関する多くの良い情報は、このスーパーユーザーの投稿にあります。
私が使用している適応は、一般的なエイリアスと関数を入れ.profileて、次のように手動でそれらを調達することです。
で~/.bashrc:
source ~/.profile
で~/.zshrc:
[[ -e ~/.profile ]] && emulate sh -c 'source ~/.profile'
emulatezsh組み込みコマンドです。単一の引数を使用して、指定されたシェルを可能な限りエミュレートするようにzshオプションを設定します。
あなたは「できない輸出あなた」.bashrcへ.zshrc。 コマンド.bashrcを実行するファイルですbash。 コマンド.zshrcを実行するファイルですzsh。
でコマンドzshを実行できるとは期待できないため、前者から実行したり、後者にコピーしたりするのではなく、新しいbashコマンドに.bashrc変換する必要があります。.zshrc.bashrc.zshrc
すべてのシェルに共通のシェル初期化ファイルが必要な場合。使用.profile(および削除.bashrcおよび.zshrc)。これは、すべてのPOSIXシェルによって供給されます。そしてそこでは、POSIXシェル機能のみに固執します。その後、そのコードは任意のPOSIXシェルで実行されます。(ただし、zshPOSIXに準拠していることを100%確信しているわけではありません)。
見る: http://mywiki.wooledge.org/DotFiles。
ただし、質問のこの部分を最初に読み間違えたのですが、コマンドを入力しない限りbash、実行時にエラーが発生することはありません。しましたか?どのようなエラーが発生していますか?あなたが追加したように私には音あなたにコードと(明らかに)理解していません。.bashrczshzsh.bashrcbash
余談ですが、ojblass部分的にしか成功しない移植性のポイントを作ろうとします。 zsh素晴らしいシェルです(私自身は名誉を持っていませんが)が、スクリプトを書くときは; #!/usr/bin/env bash代わりにそうすることをお勧めします。移植性のために、主にあなた自身(そして最終的にはあなたが彼らと共有する人々)のためだけに。