Linux memo 2020/07/01

● ~(Tilde, チルダ)って何?
たぶんちゃんとしたUNIX規格とかあるんだろうけど、現状のLinuxとしては、
- 「~」(※\0含む)や「~/」はホームディレクトリを表す
- 「~strings/」は、/があるとこまでをユーザ名とみなして、そのユーザのホームディレクトリを表す
となる(bashのtilde.cあたり)
bashのいうホームディレクトリとは、
- 環境変数$HOMEのこと
- $HOMEが空のときは、getpwuid()とかで取れるやつ(==つまり/etc/passwdに書いてあるもの)
- bashはログインシェルとして振る舞うとき、起動時にgetpwuid()で取得したやつを$HOMEに設定する
となる。つまりすべてシェルのお仕事。
このため、自作プログラムとかにおもむろに「~rarul/memo.txt」とか書いても何もしてくれない。
あとこんなことができる
[rarul@tina bash-4.4.18]$ echo ~
/home/rarul
[rarul@tina bash-4.4.18]$ export HOME=hogehoge
[rarul@tina bash-4.4.18]$ echo ~
hogehoge

● ヌル島 (Null Island)
ヌル島 - Wikipedia
緯度0経度0はアフリカギニア湾の沖合いになるが、実装の都合上そこに何かがあったほうがいいということで設定された島。
ヌルオブジェクトパターンのようなイメージなのかな。
現在位置がここになっている技術者は世界中にたくさんいると思われる。

このブログ記事について

このページは、らるるが2020年7月 1日 01:38に書いたブログ記事です。

ひとつ前のブログ記事は「Linux memo 2020/04/14」です。

次のブログ記事は「Linux memo 2020/07/26」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

月別 アーカイブ

ウェブページ

Powered by Movable Type 7.9.0