Що ~
означає абсолютний шлях до файлу?
Я бачу це у висновку таких речей, як сценарії побудови, але шлях не існує.
Що ~
означає абсолютний шлях до файлу?
Я бачу це у висновку таких речей, як сценарії побудови, але шлях не існує.
Відповіді:
Зазвичай це означає домашній каталог користувача, наприклад, ~mike/
це буде mike
домашній каталог користувача, ~/
це буде ваш власний домашній каталог. Тим НЕ менше, залишається неясним , чи мені ~/
і ~mike/
слід вважати абсолютним або відносним; це, мабуть, залежить від даного визначення (якщо хтось може придумати авторське посилання, будь ласка, опублікуйте коментар).
Зауважте, що я говорю про системи на базі Unix.
/etc/login
файлу. Розширення традиційно виконується оболонкою, але будь-яка мова, яка має претензії бути "сценарієм", зробить це також.
~username/
.
~
як синонім домашньої дирекції користувача.
Насправді обидві відповіді Адріана Муата та студхака правдиві.
В операційних системах з обмеженою умовою іменування (старіша версія Windows / DOS тощо) це означає довге ім'я.
e.g. "c:\program files\" is equivalent to "c:\progra~1\"
У деяких операційних системах (а саме Unix) це означає home-dir (і може розглядатися як абсолютний, але не канонічний шлях).
e.g."/a/vol01/usr/mike/" might be shortened to "~/mike/"
* де 'usr' - домашній реж.
У багатьох файлових системах ім'я файлу буде містити тильду (~) у кожному компоненті імені, який занадто довгий, щоб відповідати 8.3 правилам іменування.
Джерело: Іменування файлів, шляхів та просторів імен - короткі та довгі імена - MSDN
(Частина сторінки вниз ...)
192.168.1.1
або somefile.namewithdot
)
А якщо ви займаєтесь програмуванням ASP.NET, це означає верхній рівень веб-сайту; замість навігації за допомогою ../../images/some_image.jpg (і неправильний рівень гніздування!) ви можете просто сказати ~ / images / some_image.jpg
/images/some_image.jpg
має перенести вас до кореня будь-якого веб-сайту. Яку додаткову функціональність забезпечує тильда в ASP.NET?
Ось пара підказок, які можуть допомогти вам зрозуміти це краще:
$ readlink -f ~
$ echo $HOME
Примітка: $
це умова, що визначає командний рядок користувача, не є частиною команд.
Докладніше про Windows:
Якщо приховане ім'я файлу починається з '~', то Windows Explorer обробляє його як прихований системний файл. Більше інформації в Чому приховані файли з провідним тильдом трактуються як супер приховані?
Якщо коротке ім'я файлу / каталогу містить '~' (наприклад, "c: \ ololoo ~ 1"), то відповідне довге ім'я цього файлу / каталогу може перевищувати максимальну довжину (MAX_PATH = 260). Розробники повинні вирішити це за допомогою префіксу "\\? \" (Навіть у новіших Windows 10, оскільки користувач може відключити "> 260" підтримку довгих шляхів за допомогою LongPathsEnabled
параметра реєстру або з груповою політикою "Увімкнути довгі шляхи NTFS"). Приклад цього вирішення за допомогою C # можна знайти в джерелах бібліотеки ZetaLongPaths .