Closed12
学習記録#6 250603

226ページから

240ページまで

シェルの種類とか覚えんといけんのかな、、

環境変数の種類とか、昨日のディレクトリ構成のやつは覚えた方が良さそう

ディレクトリ構成のやつ
→FHS(ファイルシステムヒエラルキースタンダード)

関係ないけど、関数と言語構造の違いをChatGPTに聞いてみたのでメモ
(shellで実行できるechoコマンドとPHPで実行できるechoって何か関係があったりするかな〜っていうのを聞いたら、言語構造っていうキーワードが出てきたので聞いてみた)
関数:ユーザー定義や組み込みに関係なく呼び出される処理
言語構造:言語自体に組み込まれている処理。なので、関数のルールに従わない特別な振る舞いをする

PHPの言語構造とshellのコマンドで名前が同じものがあってもそれらは直接的には関係してなくて、強いていうなら両方ともUnix系の共通の表現に倣った結果同じ名前で同じ挙動になったって感じらしい

PHP の(PHPに限らずだけど)変数の頭に$がつくのもUnix系の文化か!

シェル変数と環境変数は、入力時は$なし、出力時には$あり
うっかりがありそうなのでメモ

セキュリティ上の理由で、環境変数PATHにはカレントディレクトリを含まない。
セキュリティ上の理由って何だ?

カレントディレクトリは.
のこと

理由
.
を含めると、意図しないor悪意あるコマンドを実行してしまう可能性がある
例:
以下のような設定があるとき、ls
を実行すると、カレントディレクトリにls
という偽のコマンドが設定されていたらそちらが優先して実行されてしまう
PATH=".:/usr/bin:/bin"
このスクラップは3ヶ月前にクローズされました