#author("2024-11-17T19:12:49+09:00","default:k1rou","k1rou") *シェルスクリプト とは [#hc2a8489] #author("2024-11-17T19:13:33+09:00","default:k1rou","k1rou") *シェルスクリプト [#hc2a8489] -シェルが備えているスクリプト言語によるプログラミング機能 -コマンドライン操作を自動化することができる *シェルスクリプトの実行方法 [#x5040d95] -ファイルに実行権限がある場合 chmod u+x <shell-script>.sh ./<shell-script>.sh -ファイルに実行権限がない場合 chmod u-x <shell-script>.sh sh ./<shell-script>.sh **デバッグ実行 [#x8530093] sh -x ./<shell-script>.sh *設定ファイル [#a56da634] -マウント /etc/fstab **bash [#e060769b] -ログインシェル(ログイン時に実行) --export する変数(環境変数)を設定する --環境変数PATHの設定など --全ユーザ /etc/profile /etc/profile.d/*.sh --ユーザ単位 ~/.bash_profile ~/.bash_login ※~/.bash_profile がない場合に実行 ~/.profile ※~/.bash_profile と~/.bash_login がない場合に実行 -bash起動時に実行 --export しない変数、alias を設定する --ウィンドウサイズのチェック、プロンプトの設定など --全ユーザ /etc/bash.bashrc ※ディストリビューションによっては存在しない /etc/bashrc ※ ~/.bashrc から参照される --ユーザ単位 ~/.bashrc ※対話型シェル起動時に実行される -ログアウトシェル(ログインシェル終了時に実行) --ユーザ単位 ~/.bash_logout -実行順(ログインシェル) --/etc/profile -> (/etc/bash.bashrc) -> (~/.bash_profile => ~/.bash_login => ~/.profile ) -> ~/.bashrc -実行順(対話型シェル) --~/.bashrc -> /etc/bashrc -設定の有効範囲 --/etc ディレクトリ配下の設定ファイルは全ユーザに影響する --./ (ホームディレクトリ)配下の設定ファイルはユーザ毎の設定 -ログインシェルと対話型シェル --ログインシェル ---ログイン時に起動するシェル ---psコマンドを実行するとbashが「-bash」と表示される --対話型シェル ---bashコマンドの入力や、端末エミュレータを実行した時に起動するシェル ---psコマンドを実行するとbashが「bash」と表示される **zsh [#z590fd0e] -ログインシェル(ログイン時に実行) --export する変数(環境変数)を設定する --環境変数PATHの設定など --全ユーザ /etc/zshrc --ユーザ単位 ~/.zshrc ~/.bash_login ※~/.bash_profile がない場合に実行 ~/.profile ※~/.bash_profile と~/.bash_login がない場合に実行 -ログアウトシェル(ログインシェル終了時に実行) --全ユーザ etc/zlogout --ユーザ単位 .zlogout -実行順(ログインシェル) --/etc/zshenv -> ~/.zshenv => /etc/zprofile -> ~/.zprofile => /etc/zshrc -> ~/. zshrc => /etc/zlogin -> ~/.zlogin -実行順(対話型シェル) --/etc/zshenv -> ~/.zshenv => ~/. zshrc -> /etc/zshrc *関連サイト [#c1f278cd] -bash の初期化ファイル .profile, .bashrc, .bash_profile の使い分けと管理方針 - A Memorandum~ https://blog1.mammb.com/entry/2019/12/01/090000 -zshの設定ファイルの読み込み順序と使い方Tipsまとめ~ https://qiita.com/muran001/items/7b104d33f5ea3f75353f *関連用語 [#ie2b8201] -[[Linuxコマンド]] -[[シェルスクリプト(bash)]] -[[シェル]]