Closed12

学習記録#6 250603

ろみぃ(konatsu)ろみぃ(konatsu)

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

ろみぃ(konatsu)ろみぃ(konatsu)

関係ないけど、関数と言語構造の違いをChatGPTに聞いてみたのでメモ
(shellで実行できるechoコマンドとPHPで実行できるechoって何か関係があったりするかな〜っていうのを聞いたら、言語構造っていうキーワードが出てきたので聞いてみた)

関数:ユーザー定義や組み込みに関係なく呼び出される処理
言語構造:言語自体に組み込まれている処理。なので、関数のルールに従わない特別な振る舞いをする

ろみぃ(konatsu)ろみぃ(konatsu)

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

ろみぃ(konatsu)ろみぃ(konatsu)

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

ろみぃ(konatsu)ろみぃ(konatsu)

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

ろみぃ(konatsu)ろみぃ(konatsu)

理由

.を含めると、意図しないor悪意あるコマンドを実行してしまう可能性がある

例:
以下のような設定があるとき、lsを実行すると、カレントディレクトリにlsという偽のコマンドが設定されていたらそちらが優先して実行されてしまう

PATH=".:/usr/bin:/bin"
このスクラップは3ヶ月前にクローズされました