質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
fish

fish(friendly interactive shell)は、Unix系OSのシェルの一つです。無設定で多くの機能を利用することが可能。カラフルな表示で見やすく、TAB補完にも優れています。

シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

シェル

シェル(shell)はUnix や Linux 系のOSで使用されるコマンドインタプリタを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

1240閲覧

「シェルが立ち上がる時」とはどのような時を指すのでしょうか

jjj001

総合スコア55

fish

fish(friendly interactive shell)は、Unix系OSのシェルの一つです。無設定で多くの機能を利用することが可能。カラフルな表示で見やすく、TAB補完にも優れています。

シェルスクリプト

シェルスクリプトは、UNIX系のOSもしくはコマンドラインインタプリタ向けに記述されたスクリプト。bash/zshといったシェルによって実行されるため、このように呼ばれています。バッチ処理などに使用されており、テキストファイルに書かれた命令を順に実行します。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

シェル

シェル(shell)はUnix や Linux 系のOSで使用されるコマンドインタプリタを指します。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

1グッド

1クリップ

投稿2021/12/24 02:56

編集2021/12/24 03:17

Pythonの環境構築をしていた際に、シェルと言うものが出てきたのですが、こちらがいまいち分からなかった為、ご質問させて貰いました
自分はfishを使用しているのですが、pyenvの初期設定を行うためには.config/fish/config.fishに下記の内容のものを設定する必要があることが分かりました。

set -x PYENV_ROOT $HOME/.pyenv set -x PATH $PYENV_ROOT/bin $PATH pyenv init - | source

こちらは「シェルが立ち上がる時」に読み込まれると言うことなのですが、「シェルが立ち上がる時」というのは、PCを起動した際のことを指すのでしょうか。
または、ターミナルを起動した際のことを指すのでしょうか。
こちらいまいち曖昧で分かりませんでした為、どなたかにご教示頂きたいです
よろしくお願い致します。
追記です
OSはMacOSを使用しています

shinchan_123👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

シェルは実行ファイルです。
その実行ファイル(たとえばfish)がメモリにロードされて実行を開始することを「シェルが立ち上がる」といいます。

実行ファイルであるシェルは他のプロセスによって実行を開始します。

Linuxの場合にはログインしたときは、あるプロセスがログインを検知してシェルを起動します。
どこかのサーバにターミナルソフト(TeraTermのようなもの)を使ってリモートログインした場合でも、そのユーザのためにシェルが一つ起動されます。

それ以外に、Pythonのようなプログラムからシェルを起動することもできますし、シェルから別のシェルを起動することもできます。

どのような形であれ、シェルが実行を開始することを「シェルが立ち上がる」といいます。

シェルについて理解したければ、OSの勉強をちゃんとするのがよいのですが、以下のようなページを読んでおくとある程度分かります。

シェルとは

投稿2021/12/24 03:26

編集2021/12/24 04:15
ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jjj001

2021/12/24 03:35 編集

ご回答ありがとうございます。 > ログインしたときは、あるプロセスがログインを検知してシェルを起動します こちらですが、ログインした時というのは、 PCを立ち上げてログイン画面にてパスワードを入力し、ホーム画面が表示された際のことを指しておりますでしょうか...?
ppaul

2021/12/24 04:17

違います。ログインしたときにシェルが起動されるのはLinuxで、WindowsやMacはそうではありません。 WindowsやMacを立ち上げたときには、CUIシェルは動きません。シェルというとCUIのシェルをいう時が多いですので、そういう場合は動いていないことになります。Linuxの場合はログインした時点で少なくとも一つのシェルが動く場合が多いと思います。 Windowsであればコマンドプロンプトやパワーシェルを起動したとき、Macであればターミナルを起動したときにシェルが動きます。
jjj001

2021/12/24 07:19

ご返信ありがとうございます。 > Windowsであればコマンドプロンプトやパワーシェルを起動したとき、Macであればターミナルを起動したときにシェルが動きます。 こちら、そういう仕組みだったのですね。 ありがとうございます。 貼って頂きました、サイトの記事も読んでおきたいと思います
guest

0

質問ではOSや環境が示されていませんが、たとえばLinuxなどではユーザーがログインしたときにログインシェルが起動します。ログインシェルはユーザー毎に /etc/passwd ファイルで設定されています。

投稿2021/12/24 03:12

itagagaki

総合スコア8402

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

jjj001

2021/12/24 03:20

ご回答ありがとうございます。 > ユーザーがログインしたとき こちらですが、ログインした時というのは、PCを立ち上げてログイン画面にてパスワードを入力し、ホーム画面が表示された際のことでしょうか...?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問