シェルスクリプト内で現在のユーザーのデフォルトシェルを見つける方法があるかどうか疑問に思っていましたか?
使用例:コマンドのエイリアスを設定するスクリプトを作成しています。このエイリアスはシェルスクリプト内で設定されます。
!# /bin/bash
alias = 'some command to set the alias'
スクリプトにロジックがあり、スクリプトを実行するユーザーのデフォルトシェルを見つけて、このエイリアスをそれぞれの〜/ .bashrcまたは〜/ .zshrcファイルに追加します。
しかし、スクリプトの前にシバンを追加し、bashを使用するよう明示的に要求しているため、ここに投稿された回答は、ZSH端末でこのスクリプトを実行しているにもかかわらず、常に期待どおりbashを返します。
シバンセットに関係なく、スクリプトが実行されるシェルタイプを取得する方法はありますか?
MacとすべてのLinuxベースのビストロの両方で機能するソリューションを探しています。
/etc/passwd
OSXには何がありますか?オンラインでざっと見たところ、ユーザー名ではなく、シェルが表示されているようです。ユーザーIDはまだ残っていますが、それを使用しないのはなぜですか。