Зворотний нахил поза лапками означає "інтерпретувати наступний символ буквально під час розбору". Так .
як це звичайний символ для синтаксичного \.
аналізу, розбирається так само, як .
і викликає вбудований .
(який source
є синонімом у bash).
Є один випадок, коли це може змінити ситуацію в цьому контексті. Якщо користувач визначив псевдонім, який називався .
раніше .profile
, і .profile
читається в оболонці, яка розширює псевдоніми (що bash виконує за замовчуванням лише тоді, коли його викликають інтерактивно), то він .
би викликав псевдонім, але \.
все-таки запускав би вбудований, оскільки оболонка не намагається розширити псевдонім на слова, які цитуються будь-яким чином.
Я підозрюю, що це .
було змінено, \.
оскільки користувач скаржився після того, як зробив псевдонім для .
.
Зверніть увагу, що \.
викликає функцію, яка називається .
. Імовірно, користувачі, які пишуть функції, більш обізнані, ніж користувачі, які пишуть псевдоніми, і знають, що переосмислити стандартну команду .profile
- це погана ідея, якщо ви збираєтесь включити код від третіх сторін. Але якщо ви хотіли обійти псевдоніми та функції, можете написати command .
. Автор цього фрагмента цього не робив, бо піклувався про антикварні оболонки, у яких не було command
вбудованого, або, скоріше, тому, що про нього не знали.
До речі, визначення будь-якого псевдоніму .profile
- це погана ідея, оскільки .profile
це сценарій ініціалізації сеансу , а не скрипт ініціалізації оболонки . Псевдоніми на баш належать в .bashrc
.