0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Macでbashからzshへ乗換え時に読むべきリンク一覧

Last updated at Posted at 2024-11-12

1.状況と目的

自宅マシンではbashからzshに完全に移行したが、出先や会社ではbash環境で作業することがまだ多くある。また世の中もzshを使う人が多くなりbash環境を忘れつつあるかbashまたはzshどちらか片方しか知らない人に「このリンクを読んで」と説明するのも手間なのでリンク集としてまとめ一つの記事にしておく。

2.bashの有用なリンク集

2021.07.08
Bash: .bashrcと.bash_profileの違いを今度こそ理解する|TechRacho by BPS株式会社

最終更新日 2017年01月
知らないとrsyncでもハマるシェル初期化 #Linux - Qiita

最終更新日 2018年06月
ログインシェルとインタラクティブシェルと~/.bashrc達の関係 #Bash - Qiita

.bash_profile ? .bashrc ? いろいろあるけどこいつらなにもの? #Bash - Qiita

2-1.zshとBashの共通設定

bash の初期化ファイル .profile, .bashrc, .bash_profile の使い分けと管理方針 - A Memorandum

3.zshインストール

Zsh(https://www.zsh.org/)

ZSH - THE Z SHELL(https://zsh.sourceforge.io/)

手前味噌な筆者の記事。2020年。ソースビルドする場合。
Macにzshをインストール #Zsh - Qiita

PATH問題は記事の下の方にリンクを記載した。
現在は
brew install zsh
だけでいいのかもしれない。

brewを使う。
MacデフォルトのzshからHomebrewで最新のzsh(5.0.2)にしたらめっちゃ便利だったメモ - haya14busa

初めて Mac で zsh を使う人のためのチュートリアル - mollifier delta blog

解説

Introduction of the ZSH(zshは、tcshやbash等を使っている以下のような症状に悩んでいる人に有効 である。)

zshの設定ファイルの読み込み順序と使い方Tipsまとめ #ShellScript - Qiita

zshのmanページが15個に分かれてるので解説してみる - mollifier delta blog

zsh-lovers - cuspy wiki(http://grml.org/zsh/zsh-lovers.html の和訳です)

第1回 zshで広がる世界 | gihyo.jp

4.bashからzshに乗り換え作業時に見るべきリンク一覧

Macでbashからzshへお引越しする方法 #Bash - Qiita
要点
$ cat .bash_profile >> .zprofile
筆者は $ cat .bash_profile >> .zshenv が好み。
$ cat .bashrc >> .zshrc

最終更新日2015年なので古い
とりあえずZshを使えば良いんだろう?(Zshに移行するにあたってやった事。) #Mac - Qiita

5.zshを拡張し便利にする。

更新:2024/05/02
.zshrc で zsh をカスタマイズしてみよう。(プラグイン無し)- original-game.com

2024-02-20
【ターミナル】入力補完ツールzsh-completionsで快適なzshライフを - 小さなことからこつこつと。

最終更新日 2018年
zplugをインストールする。
Mac標準のbashからzshに変えた時のメモ #Bash - Qiita

2023/09/27
zsh-completions

zsh-autosuggestions
macOS の zsh ではこれだけはやっておこう

6.zshとPATH設定とpath_helperの問題

path_helper問題は、これが答え。
2020-01-22
zsh: /usr/libexec/path_helperから逃れる方法 2020年版 - Sexually Knowing

>/etc/zprofileを読まないよう設定することもできて、これがおそらく最もポータブルな対処法でありそう。

.zshenvにunsetopt GLOBAL_RCSするだけ。

参考 筆者の過去記事。
MacOSにおけるPATH変数生成は2つの問題がある。(path_helper問題1) #shell - Qiita

7.その他のシェル関連など

シェルスクリプトのechoの移植性の問題に本気で対応する #Bash - Qiita
https://qiita.com/ko1nksm/items/d0b066268cda42ff24eb

echo コマンドの違いと移植性の問題 - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog

>シェルや OS の違いに依らないポータビリティ(移植性、可搬性) の高いシェルスクリプトを書くには、ポータビリティに問題がある echo を利用してはいけません。代わりに printf を利用しましょう。 shebang を #!/bin/sh にしていたとしても、/bin/sh の実体が何かは OS や設定に依るのでご注意を。

どの環境でも使えるシェルスクリプトを書くためのメモ ver4.60 #ShellScript - Qiita

Mac OS bash/zsh周りのメモ
https://zenn.dev/omakazu/scraps/38e665630b78ee

8-1.消えたリンク(zshとBashの互換性)

Qiitaには他にも以下のような有用な記事があったが消えてしまった。特に上の記事は消えるのであればローカルに保存しておくのだった。持っている人がいたら筆者にください。

(ZshでもBashでも動くfunctionを書くときのストレスを減らそう - Qiita)

(本当は気をつけるべき、内部コマンドと外部コマンドの区別 - Qiita)

8-2.zshとBashの互換性 2024年12月追記

作成日時不明
Unix Shells: Bash, Fish, Ksh, Tcsh, Zsh - Hyperpolyglot

2013/12/26
BashとZshの違いでのハマりどころ

配列の番号
グロブ展開
typeset/localでの配列の初期化
readの引数
readにReturnを渡した時
(ダブル)クォート
command/builtin

2019年ごろ?
bashとzshの違い。bashからの乗り換えで気をつけるべき16の事柄

bashとzshの16の違い

bashとzshの制御構文系の違い
bashとzshの関数定義の違い
bashとzshのエイリアスの違い
コラム:クォート
zshのマルチリダイレクト(Multios)
コマンドなしリダイレクト入力
job関係
算術式と演算子
条件演算子
bashとzshのプロンプトの違い
bashとzshのヒストリ履歴の違い
bashとzshのプロセス置換の違い
bashとzshのパラメータ展開
bashとzshの配列とハッシュ
bashとzshのシェル変数の違い
cdコマンド
bashとzshのライン入力の違い

2023/11/12
mac の zsh と Linux/Windows の bash で互換性があるシェルスクリプトの連想配列

9.シェルに詳しいko1nksmさんのQiitaの記事

ko1nksmさんの意見と私個人の意見と異なるのは数行しかない優秀な人だと思う。異なるのは運用と業務方針と新人に対してシェルスクリプトの勉強をどこまでやらせるかどうか?たったこれだけかな。

最初にささっと読んだほうがいい記事。
2024年11月
【完全版】歴史でシェルの設定ファイルを理解する - 全POSIXシェル対応 (.profie, .bash_profile, .bashrc, .zprofile, zshrc, etc.) #Bash - Qiita
https://qiita.com/ko1nksm/items/febc5ceb4edb068a682a

二番目に読むといいと思う記事。
2023年06月
【初学者向け】内部コマンドと外部コマンドの違い ~ LinuxとWindowsの話を混ぜて解説するな! #UNIX - Qiita
https://qiita.com/ko1nksm/items/d67b0f8978557294c4ec

Mac限定で3番目に読むといいと思う記事。
2024年02月
Macでシェルスクリプトを書く人へ 「シェルはbashからzshに変わっていません!今でもbashで動くんだよ!」 #Bash - Qiita
https://qiita.com/ko1nksm/items/59c2e8a7afa969af8212

以上

ダミータグ Bash Zsh Mac zshrc zshenv Linux

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?