Unixプログラミング環境で次の質問に出会ったばかりです。KernighanとPikeのUnixに関する古典的な本(1984年版の79ページ、ISBN:0-13-937699-2で以下のテキストを見つけました):
演習3-6。(トリックの質問)ファイル名に/をどのように入力しますか(つまり、パスのコンポーネントを分離しない/ですか?
私はエンドユーザーおよびプログラマーとしてLinuxを長年使用していますが、この質問に答えることはできません。ファイル名にスラッシュを入れる方法はありません。カーネルによって絶対に禁止されています。ブロックデバイスアクセスを介してファイルシステムにパッチを当てたり、ユニコードの似たような文字を使用したりできますが、それらは解決策ではありません。
Linux≠Unixであることは理解していますが、システムはパスからディレクトリ階層を明確に抽出できる必要があるため、同じ原則を適用する必要があります。
この質問をする際に、カーニガンとパイクが正確に何を考えていたか、誰かが知っていますか?想定される答えは何でしたか?「トリック」とは正確には何ですか?それとも、元のUnixシステムでは、このスラッシュをどうにかしてエスケープできるのでしょうか。
UPD:
私は質問についてブライアン・カーニガンに連絡しました、そして、それは彼が答えたものです:
答えは「できない」です。
したがって、ティモシーマーティンは正しかったので、緑色のチェックマークが付きます。
a
システムがEBCDICロケールにあるとシステムに判断させることができますか?ASCIIは、a
に相当の0x61である/
(コード・ページ37)EBCDICに