С помощью CTRL + R мы можем искать в предыдущих командах (в терминале Debian). Я всегда предполагал, что он искал мою .bash_history, но, похоже, это не так - сейчас моя .bash_history полностью отключена, но ctrl + r все еще работает нормально. Это поиск файла где-то, что я не рассмотрел, или откуда он получает данные?
command-line
bash
some1
источник
источник
~/.bash_history
и сохраняет ее снова, когда оболочка закрыта. Но в то же время история просто хранится в массиве где-то в оперативной памяти. Подумайте об установке переменных на любом языке программирования - они не затрагивают файловую систему, реальную или виртуальную.Ctrl + R не ищет файл. Он ищет историю, хранящуюся в памяти вашей текущей оболочки.
источник
/dev
,/proc
и/sys
файловые системы. Существуют функции, которые позволяют считывать сигналы или другие события через дескриптор открытого файла, как если бы он читал файл. (Linux получил вдохновение для / proc из Plan9, производного Unix, который поднял это на гораздо более высокий уровень.) Но в целом, «все это файл» слишком широк; например, вы не можете получить доступ к DBus или TCP как к файлам; вы даже не можете открывать сокеты Unix, используя файловые функции.