Тут довга історія, коли мова йде про загальний випадок "точкових файлів", але каталоги $HOME/.configта $HOME/.localкаталоги, які ви конкретно згадуєте, мають походження в специфікації базового каталогу XDG .
$HOME/.config- куди йдуть файли конфігурації користувача, якщо таких немає $XDG_CONFIG_HOME.
$HOME/.cache- куди йдуть файли кешу користувача, якщо таких немає $XDG_CACHE_HOME.
$HOME/.local/share- куди йдуть файли даних для кожного користувача, якщо таких немає $XDG_DATA_HOME.
Користувачі Windows можуть розпізнати це як паралель тому, що Microsoft мав у Windows NT після версії 4 (хоча імена змінилися у версії 6.0):
%USERPROFILE%/AppData/Local/aka %LOCALAPPDATA%- куди йдуть файли даних для користувачів цієї машини
%USERPROFILE%/AppData/Roaming/aka %APPDATA%- куди йдуть файли даних для кожного користувача, до яких користувач роумінгу може отримати доступ з декількох машин
%USERPROFILE%/AppData/Local/Temp/aka %TEMP%- куди йдуть тимчасові файли для кожного користувача
Ідея полягає в тому, що файли для кожного користувача можуть бути (серед багатьох інших речей) файлами даних програм (специфічними для машини або роумінгом), файлами конфігурації додатків , кешованими файлами та тимчасовими файлами , а програми розміщують їх у підрядках, укорінених у цих конкретні каталоги.
(MacOS має подібну систему , в якій користувачі отримують індивідуальний для кожного користувача «користувача місцевих» поддерева під /var/foldersз Cі Tпідкаталогами для кеша і тимчасових файлів.)
Як зазначають люди Arch, є деякі "крапкові" файли та каталоги, які стали широко використовуватися декількома додатками і навряд чи згодяться з XDG в осяжному майбутньому, наприклад, $HOME/.sshта $HOME/.netrc.
Подальше читання