- Значение тильды в Linux bash (не домашний каталог)
- Когда я должен использовать
- 2 ответа
- Эта проблема
- Что ты должен был сделать
- Более формальное и глубокое объяснение
- Забавный факт
- Что значит тильда linux
- уПЪДБОЙЕ ЙНЕОЙ РПМШЪПЧБФЕМС
- чИПД Ч УЙУФЕНХ
- чЙТФХБМШОБС ЛПОУПМШ
- пВПМПЮЛЙ Й ЛПНБОДЩ
- чЩИПД ЙЪ УЙУФЕНЩ
- йЪНЕОЕОЙЕ РБТПМС
- жБКМЩ Й ЛБФБМПЗЙ
- дЕТЕЧП ЛБФБМПЗПЧ
- фЕЛХЭЙК ЛБФБМПЗ
- пВТБЭЕОЙЕ Л ДПНБЫОЕНХ ЛБФБМПЗХ
Значение тильды в Linux bash (не домашний каталог)
Во-первых, я знаю, что
/ это домашний каталог. Компакт-диск
/ переносит меня в домашний каталог.
X переносит меня в особое место, где X вроде бы что угодно.
В bash, если я нажимаю » cd
» и нажимаю вкладку, появляется множество возможных
X вариантов, таких как
ssh . Переход к этим папкам и выполнение операций pwd показывает мне, что этих папок нет в домашнем каталоге; они повсюду.
Это не псевдонимы. Я проверил. Они не являются env. переменными, иначе они потребовали бы $ .
Что устанавливает эти ссылки и где я могу найти, где они устанавливаются?
X просто возвращает литерал «
возвращает $ HOME, а
+ возвращает $ PWD — они не являются специальными, за исключением того, что они выбирают переменные оболочки. т.е. они не хранят значения и не выполняют команду для их поиска. Они уже определены. Вы пробовали
-? Я не могу придумать, как ему использовать, но опять же, он возвращает переменную оболочки $ OLDPWD
Это функция Bash, которая называется « тильда». ». Это функция оболочки, а не ОС. Например, вы получите другое поведение с csh.
Чтобы ответить на ваш вопрос о том, откуда берется информация: ваш домашний каталог берется из переменной $HOME (независимо от того, что вы там храните), в то время как дома других пользователей извлекаются в реальном времени с использованием getpwent() . Эта функция обычно контролируется NSS ; поэтому по умолчанию значения извлекаются /etc/passwd , хотя его можно настроить для получения информации из любого желаемого источника, такого как NIS, LDAP или база данных SQL.
Расширение тильды — это больше, чем поиск в домашнем каталоге. Вот краткое изложение:
-1 и т.д., используются вместе с pushd и popd .
+ примерно то же самое, что. Однако, чтобы использовать что-то вроде ./file, он должен перейти в файловую систему и выяснить, где. находится — проходит несколько циклов. Использование
+ сохраняет его работу, просто возвращая содержимое переменной оболочки $ PWD, которая уже определена при просмотре файловой системы.
Это домашние каталоги пользователей. Попробуйте cd
(your username) , например.
Это домашние каталоги пользователей /etc/passwd ? Такие службы, как postgres, sendmail, apache и т. Д., Создают пользователей системы, у которых есть домашние каталоги, как и у обычных пользователей.
имя пользователя — это домашний каталог указанного пользователя
Это пользователи. Проверьте свой /etc/passwd .
username перенесет вас в домашний каталог этого пользователя.
На моей машине, из-за того, как я все настроил, делаю:
Первый обращает внимание на значение переменной окружения $HOME ; Я намеренно установил $HOME локальную файловую систему, а не файловую систему, смонтированную по NFS. Второй читает из файла паролей (примерно; NIS немного усложняет ситуацию) и обнаруживает, что в файле паролей указано, что мой домашний каталог находится, /u/jleffler и переходит в этот каталог.
Раздражает то, что большая часть программного обеспечения ведет себя так, как указано выше (и спецификация POSIX для оболочки требует такого поведения). Я использую некоторое программное обеспечение (и у меня нет особого выбора), которое обрабатывает информацию из файла паролей как текущее значение $ HOME, что неверно.
Применяя это к вопросу — как указывали другие, ‘ cd
x ‘ переходит в домашний каталог пользователя ‘x’ и, в более общем смысле, всякий раз, когда выполняется расширение тильды,
x означает домашний каталог пользователя ‘x’ (и это ошибка если пользователь ‘x’ не существует).
Возможно, стоит упомянуть следующее:
Я не могу сразу найти применение для ‘
+ ‘, если только вы не сделаете какие-то странные вещи с перемещением символических ссылок по пути, ведущему к текущему каталогу.
Источник
Когда я должен использовать
(тильда) во время навигации по командной строке?
Довольно глупо, когда дело доходит до Linux, и я пытаюсь понять навигацию с помощью командной строки. Я могу легко перемещаться из моей домашней папки и папок внутри с помощью этого:
но когда я иду, чтобы открыть папку в документах, я получаю сообщение об ошибке, подобное этому:
Я в замешательстве, потому что мне нужно использовать «
» для доступа к документам, но я не могу перейти в следующую папку, находясь в документах.
2 ответа
- путь читается слева направо, с указанием крайнего левого каталога, являющегося вершиной дерева каталогов, которое вы пересекаете
- ведущий
/ в пути означает вашу домашнюю папку
имеет значение только в командной строке, а не в графическом интерфейсе (как указано в комментариях).
Ответ отредактирован, чтобы включить более формальное объяснение расширения тильды и соответствовать новому отредактированному названию вопроса, поэтому, пожалуйста, прочитайте более формальное объяснение ниже. Первые два раздела — более или менее мягкие объяснения того, что ОП делал и чего не делал.
Эта проблема
(тильда), сопровождаемая косой чертой в пути, понимается как ссылка на домашний каталог вашего пользователя, т.е.
/Documents всегда значит /home/chance/Documents , (Существуют исключения и особые случаи, но с целью объяснения основ давайте пока все упростим; более подробное объяснение см. Ниже).
Итак, когда вы делаете cd
/xmr-stak-cpu-1.3.0-1.5.0 говоришь, возьми меня к xmr-stak-cpu-1.3.0-1.5.0 каталог, который находится в моей домашней папке. Также важно отметить, что путь всегда читается слева направо, разделенный косыми чертами, причем крайний левый угол является вершиной дерева каталогов, на которое вы ссылаетесь. Поэтому, если вы хотите спуститься из дома, в Документы, в вашу папку, все части должны присутствовать в пути, разделенные косой чертой, и папка, в которую вы хотите попасть, конечно, должна быть самой подходящей.
Посмотрите на сообщение об ошибке внимательно:
Оболочка правильно расширена
быть /home/chance и присоединился к тому, что ты дал. Конечно, поскольку указанный вами каталог не существует, вы получили соответствующее сообщение об ошибке.
Что ты должен был сделать
Вы можете сделать это одним из двух способов — дать полный путь или прыгнуть в
/Documents Сначала перейдите в каталог, который вы хотите. Когда ты cd
/Documents и вы хотите перейти к папке, которая находится внутри текущего каталога, в котором вы находитесь, вы можете использовать ./ нотации. Итак, вы бы сделали:
Конечно, вам не нужно добавлять это ./ когда вы просто делаете cd xmr-stak-cpu-1.3.0-1.5.0 автоматически заглянет в ваш текущий рабочий каталог. Тем не менее, лучше быть явным, и к тому же ./ помогает избежать проблем с именами файлов, которые могут начинаться с — (это совсем другой пакет проблем и тема для другого дня).
В качестве альтернативы вы можете указать полный путь:
Обратите внимание, что вы также можете использовать $HOME переменная вместо
, что по сути одинаково, однако они различаются по своей природе и дополнительным вещам, которые вы можете делать с
, Смотрите мой ответ на разницу CD и CD
Более формальное и глубокое объяснение
Хорошо, до сих пор мы держали вещи довольно просто с целью объяснения основ для новых пользователей. Но есть гораздо больше, чем тильда, косая черта и навигация по дереву каталогов. Вопросы становятся более сложными, если учесть, что тильда и cd ведут себя по-разному в других оболочках, и если мы также рассмотрим стандарт POSIX. Некоторые из вещей, о которых я здесь уже упоминал, в своем ответе по Unix и Linux, так что обязательно проверьте это.
В борновоподобных оболочках (то есть bash , ksh , ksh связанные реализации, такие как mksh и Ubuntu по умолчанию /bin/sh что на самом деле dash ) ведущая тильда без кавычек означает расширение тильды, которое фактически определяется как стандартное поведение POSIX. В зависимости от того, что следует за ведущей тильдой без кавычек, она имеет разные эффекты:
с не цитируемой лидирующей
, если после него нет символов (или если между
и следующий без кавычек / т. е. пустая строка) расширяется до того же значения, что и $HOME переменная окружения, т.е. ваша домашняя папка. Так cd
/ значит смени каталог на свою домашнюю папку. Обратите внимание, что
а также / должно быть без кавычек:
с не цитируемой лидирующей
Коллекция символов, которые следуют за ним, считаются возможным именем входа. Так cd
testuser или же cd
testuser/ будет означать, что вы хотите прыгнуть в testuser текущий рабочий каталог. Опять же, цитирование имеет значение:
Это все стандартное поведение и работает по всем направлениям в dash , ksh и конечно bash , Однако есть несколько вещей, которые оболочки делают по-другому. Особенно, bash имеет дополнительные расширения, которые вы можете выполнить с тильдой, и обрабатывает неустановленные HOME иначе, чем другие оболочки. Вот дополнительные расширения, которые вы можете сделать в bash :
+ ссылается на ваш текущий рабочий каталог, так же, как PWD переменная. Это также работает в ksh но нет dash ,
— ссылается на ваш предыдущий рабочий каталог, так же, как OLDPWD переменная. Также работает в ksh но нет dash ,
В bash вы можете перемещаться и записывать, где вы были, помещая определенные каталоги в стек каталогов (или массив), и вы можете ссылаться на них с помощью
[+-] , где + будет означать, что смотреть слева от массива, и — справа Это bash конкретные и не работают, работают в ksh ни dash ,
Смотрите диаграмму в ответе Муру на связанный вопрос, который показывает, как использовать индексы для
Еще одна вещь, на которую я уже намекал, это HOME переменная окружения. Тот факт, что она является переменной и может быть неустановленной, создает проблему — как указано в стандарте POSIX, расширение тильды зависит от переменных среды, но в соответствии со стандартом «[i] HOME не установлен, результаты не определены». В этом случае, ksh а также dash просто сломать
Фактически это соответствует стандарту cd также:
- Если операнд каталога не задан, а переменная среды HOME пуста или не определена, поведение по умолчанию определяется реализацией, и дальнейшие действия не предпринимаются.
В отличие от bash , обрабатывает вещи по-разному. Согласно руководству по bash:
Если HOME не установлен, вместо него подставляется домашний каталог пользователя, выполняющего оболочку. В противном случае префикс тильды заменяется домашним каталогом, связанным с указанным именем входа.
Другими словами, когда дом не установлен, bash не сломается, но если HOME устанавливается в нулевую строку, она будет ломаться:
Забавный факт
был выбран для представления домашнего каталога пользователя, потому что один раз
а также HOME клавиши, используемые на той же клавиатуре на терминале Lier-Siegler ADM-3A. ( источник)
Источник
Что значит тильда linux
уЙУФЕНБ Linux СЧМСЕФУС НОПЗПЪБДБЮОПК НОПЗПРПМШЪПЧБФЕМШУЛПК ПРЕТБГЙПООПК УЙУФЕНПК. ьФП ПЪОБЮБЕФ, ЮФП НОПЗП МАДЕК НПЗХФ ПДОПЧТЕНЕООП ЪБРХУЛБФШ РП НОПЗХ ТБЪМЙЮОЩИ РТЙМПЦЕОЙК ПДОПЧТЕНЕООП ОБ ПДОПН Й ФПН ЦЕ ЛПНРШАФЕТЕ. ьФЙН УЙУФЕНБ Linux ПФМЙЮБЕФУС ПФ УЙУФЕНЩ MS-DOS, ЗДЕ Ч ПДОП Й ФП ЦЕ ЧТЕНС ОБ ЛПНРШАФЕТЕ НПЦЕФ ТБВПФБФШ ФПМШЛП ПДЙО ЮЕМПЧЕЛ. юФПВЩ УЙУФЕНБ Linux УНПЗМБ « ХЪОБФШ » РПМШЪПЧБФЕМС, ПО ДПМЦЕО ЧПКФЙ Ч УЙУФЕНХ (log in), ЮФП ФТЕВХЕФ ЧЧЕДЕОЙС ЙНЕОЙ РПМШЪПЧБФЕМС (login name) Й РБТПМС (password). рП РЕТЧПНХ ЙЪ ОЙИ УЙУФЕНБ ТБЪМЙЮБЕФ РПМШЪПЧБФЕМС, Б ЧФПТПК УМХЦЙФ РЕТУПОБМШОЩН « ЛМАЮПН » ДМС ЧИПДБ Ч УЙУФЕНХ; ЬФПФ ЛМАЮ РТЕДХУНПФТЕО ДМС ФПЗП, ЮФПВЩ ОЙЛБЛПК ДТХЗПК ЮЕМПЧЕЛ ОЕ УНПЗ ЧПКФЙ Ч УЙУФЕНХ РПД ЧБЫЙН ЙНЕОЕН.
оБ ФТБДЙГЙПООЩИ УЙУФЕНБИ UNIX ЙНС Й ОБЮБМШОЩК РБТПМШ ЧБН ДБЈФ УЙУФЕНОЩК БДНЙОЙУФТБФПТ, ЛПФПТЩК ПФЧЕЮБЕФ ЪБ ТБВПФХ ДБООПК УЙУФЕНЩ. оП ЕУМЙ ЧЩљ— ФПФ РПМШЪПЧБФЕМШ Linux, ОБ ЛПФПТПЗП МПЦБФУС ПВСЪБООПУФЙ УЙУФЕНОПЗП БДНЙОЙУФТБФПТБ, ФП РЕТЕД ЧИПДПН Ч УЙУФЕНХ ЧБН ФТЕВХЕФУС УПЪДБФШ УЕВЕ ЙНС РПМШЪПЧБФЕМС. ч ДБМШОЕКЫЕН ВХДЕФ ТБУУНБФТЙЧБФШУС ХУМПЧОЩК РПМШЪПЧБФЕМШ РП ЙНЕОЙ мБТТЙ, ОБ ЛПФПТПЗП Ч УЙУФЕНЕ ЪБЧЕДЕОП ЙНС РПМШЪПЧБФЕМС larry.
лТПНЕ ФПЗП, ЛБЦДПНХ ЛПНРШАФЕТХ РТЙУЧПЕОП ЙНС ЛПНРШАФЕТБ (ИПУФБ). рП ЬФПНХ ЙНЕОЙ (host name) ЛПНРШАФЕТЩ ТБУРПЪОБАФУС Ч УЕФЙ. пДОБЛП ДБЦЕ ЕУМЙ ЛПНРШАФЕТ ОЕ РПДЛМАЮЈО Л УЕФЙ, ПО ДПМЦЕО ЙНЕФШ ЙНС. дМС ЧУЕИ РТЙНЕТПЧ, РТЙЧПДЙНЩИ ОЙЦЕ, ЙНЕОЕН ЛПНРШАФЕТБ ВХДЕФ mousehouse.
уПЪДБОЙЕ ЙНЕОЙ РПМШЪПЧБФЕМС
рТЕЦДЕ ЮЕН ОБЮБФШ ТБВПФХ Ч ФПМШЛП ЮФП ХУФБОПЧМЕООПК УЙУФЕНЕ Linux, ОХЦОП УПЪДБФШ УЕВЕ ЙНС РПМШЪПЧБФЕМС ДМС РПЧУЕДОЕЧОПК ТБВПФЩ. вХДЕФ ОЕРТБЧЙМШОЩН ДМС ЬФПЗП ЙУРПМШЪПЧБФШ ЙНС root, РПФПНХ ЮФП ЬФП ЙНС ТЕЪЕТЧЙТХЕФУС ДМС ЧЩРПМОЕОЙС ПУПВЩИ ЛПНБОД Й ДМС ТБВПФ РП РПДДЕТЦБОЙА ТБВПФПУРПУПВОПУФЙ УЙУФЕНЩ. ьФЙ ЧПРТПУЩ ПВУХЦДБАФУС ОЙЦЕ.
дМС ФПЗП, ЮФПВЩ УПЪДБФШ УЕВЕ ЙНС РПМШЪПЧБФЕМС, УМЕДХЕФ ЧПКФЙ Ч УЙУФЕНХ ЛБЛ РПМШЪПЧБФЕМШ root Й ЙУРПМШЪПЧБФШ ЛПНБОДХ useradd ЙМЙ adduser . рПДТПВОЕЕ П ЬФПН НПЦОП РТПЮЙФБФШ Ч ТБЪДЕМЕ ТХЛПЧПДУФЧБ.
чИПД Ч УЙУФЕНХ
пВЩЮОП РТЙ ЧИПДЕ Ч УЙУФЕНХ ЧЩ ЧЙДЙФЕ ОБ ЬЛТБОЕ РТЙНЕТОП УМЕДХАЭЕЕ РТЙЗМБЫЕОЙЕ:
дБМЕЕ УМЕДХЕФ ЧЧЕУФЙ ЧБЫ РБТПМШ. оБВЙТБЕНЩЕ РТЙ ЬФПН УЙНЧПМЩ ОЕ ВХДХФ РПСЧМСФШУС ОБ ЬЛТБОЕ, ФБЛ ЮФП ОБВЙТБКФЕ БЛЛХТБФОП. еУМЙ РБТПМШ ВХДЕФ ОБВТБО ОЕЧЕТОП, ЧЩ ХЧЙДЙФЕ ОБ ЬЛТБОЕ УМЕДХАЭЕЕ УППВЭЕОЙЕ:
(ОЕРТБЧЙМШОП ЧЧЕДЕОП ЙНС РПМШЪПЧБФЕМС), Й РТПГЕДХТХ ЧИПДБ Ч УЙУФЕНХ РТЙДЈФУС РПЧФПТЙФШ.
рПУМЕ ФПЗП, ЛБЛ ЙНС РПМШЪПЧБФЕМС Й РБТПМШ ЧЧЕДЕОЩ РТБЧЙМШОП, НПЦОП УЮЙФБФШ, ЮФП УПУФПСМУС «ПЖЙГЙБМШОЩК» ЧИПД Ч УЙУФЕНХ, Й РТЙУФХРБФШ Л ТБВПФЕ.
чЙТФХБМШОБС ЛПОУПМШ
лПОУПМШ УЙУФЕНЩ РТЕДУФБЧМСЕФ УПВПК НПОЙФПТ Й ЛМБЧЙБФХТХ, ОЕРПУТЕДУФЧЕООП РПДЛМАЮЈООЩЕ Л ЛПНРШАФЕТХ. рПУЛПМШЛХ УЙУФЕНБ Linux СЧМСЕФУС НОПЗПРПМШЪПЧБФЕМШУЛПК ПРЕТБГЙПООПК УЙУФЕНПК, Л ЛПНРШАФЕТХ ЮЕТЕЪ РПУМЕДПЧБФЕМШОЩЕ РПТФЩ НПЗХФ ВЩФШ РПДЛМАЮЕОЩ ДТХЗЙЕ ФЕТНЙОБМЩ, ОП ПОЙ ОЕ ВХДХФ ЛПОУПМСНЙ. уЙУФЕНБ Linux, РПДПВОП ДТХЗЙН ЧЕТУЙСН УЙУФЕНЩ UNIX, РТЕДПУФБЧМСЕФ ДПУФХР Л ЧЙТФХБМШОЩН ЛПОУПМСН (ДБМЕЕљ— чл), У ЛПФПТЩИ НПЦОП ПУХЭЕУФЧМСФШ ПДОПЧТЕНЕООП ОЕУЛПМШЛП УЕБОУПЧ ТБВПФЩ Ч УЙУФЕНЕ (login session).
дМС ДЕНПОУФТБГЙЙ ЬФПЗП ЧПКДЙФЕ Ч УЙУФЕНХ. дБМШЫЕ ОБЦНЙФЕ ЛПНВЙОБГЙА ЛМБЧЙЫ Alt — F2 . чЩ УОПЧБ ХЧЙДЙФЕ РТЙЗМБЫЕОЙЕ login:. рТЙ ЬФПН РЕТЕД ЧБНЙ ЧФПТБС ЧЙТФХБМШОБС ЛПОУПМШ. юФПВЩ ЧЕТОХФШУС Л РЕТЧПК ЧЙТФХБМШОПК ЛПОУПМЙ, ОБЦНЙФЕ ЛПНВЙОБГЙА ЛМБЧЙЫ Alt — F1 . пЮЕЧЙДОП, ЮФП ЧЩ ЧЕТОХМЙУШ Ч ХЦЕ ОБЮБФЩК УЕБОУ ТБВПФЩ.
фПМШЛП ЮФП ХУФБОПЧМЕООБС УЙУФЕНБ Linux, ЧПЪНПЦОП, РТЕДПУФБЧМСЕФ ДПУФХР ФПМШЛП Л РЕТЧЩН ЫЕУФЙ (ЙМЙ ПЛПМП ФПЗП) чл, Л ЛПФПТЩН НПЦОП ПВТБЭБФШУС, ОБЦЙНБС ЛПНВЙОБГЙЙ ЛМБЧЙЫ Alt — F1 љ— Alt — F6 љ— ЙљФ.љД. лБЛ ЧЙДОП, чл љ— ПЮЕОШ НПЭОПЕ УТЕДУФЧП, РПУЛПМШЛХ РПЪЧПМСЕФ ТБВПФБФШ УТБЪХ Ч ОЕУЛПМШЛЙИ УЕБОУБИ Ч ПДОП Й ФП ЦЕ ЧТЕНС.
рТЙ ФПН, ЮФП РТЙНЕОЕОЙЕ чл ПФЮБУФЙ ПЗТБОЙЮЕОП (Ч ЛПОГЕ ЛПОГПЧ, РЕТЕД ЗМБЪБНЙ Х РПМШЪПЧБФЕМС ЧУЕЗДБ ФПМШЛП ПДОБ чл), ЬФБ ДЕНПОУФТБГЙС ДПМЦОБ УПЪДБФШ Х ЧБУ ЧРЕЮБФМЕОЙЕ П ЧПЪНПЦОПУФСИ НОПЗПРПМШЪПЧБФЕМШУЛПЗП ТЕЦЙНБ УЙУФЕНЩ Linux. ч ФП ЧТЕНС, ЛБЛ РТПЙУИПДЙФ ОЕЛПФПТБС ТБВПФБ ОБ РЕТЧПК чл, ЧЩ НПЦЕФЕ РЕТЕЛМАЮЙФШУС ОБ ЧФПТХА чл Й ТБВПФБФШ ОБД ЮЕН-ОЙВХДШ ДТХЗЙН.
пВПМПЮЛЙ Й ЛПНБОДЩ
вПМШЫБС ЮБУФШ ПВЭЕОЙС У УЙУФЕНПК Linux РТПЙУИПДЙФ ЮЕТЕЪ РПУТЕДУФЧП ЛПНБОДОЩИ ПВПМПЮЕЛ (shell). лПНБОДОБС ПВПМПЮЛБљ— ЬФП РТПЗТБННБ, ЛПФПТБС ЧПУРТЙОЙНБЕФ ЛПНБОДЩ, ЧЧПДЙНЩЕ У ЛМБЧЙБФХТЩ, Й РТЕПВТБЪХЕФ ЙИ Ч ЙОУФТХЛГЙЙ ПРЕТБГЙПООПК УЙУФЕНЕ. бОБМПЗЙЮОЩЕ ЖХОЛГЙЙ ЙУРПМОСЕФ РТПЗТБННБ COMMAND.COM
рПУМЕ ФПЗП, ЛБЛ ЧЩ ЧПЫМЙ Ч УЙУФЕНХ, ПРЕТБГЙПООБС УЙУФЕНБ ЪБРХУЛБЕФ ЛПНБОДОХА ПВПМПЮЛХ, Й ЧЩ НПЦЕФЕ ЧЧПДЙФШ ЛПНБОДЩ. рТЙЧЕДЈН РТПУФПК РТЙНЕТ. рХУФШ мБТТЙ ЧИПДЙФ Ч УЙУФЕНХ Й ПЦЙДБЕФ РТЙЗМБЫЕОЙС (prompt) УЙУФЕНЩ.
б ФЕРЕТШ РПРТПВХЕН ЪБУФБЧЙФШ УЙУФЕНХ УДЕМБФШ ЛПЕ-ЮФП ЪБВБЧОПЕ:
лБЛ ПЛБЪЩЧБЕФУС, make СЧМСЕФУС ЙНЕОЕН ОЕЛПФПТПК УЙУФЕНОПК РТПЗТБННЩ, Й ПВПМПЮЛБ ЙУРПМОЙМБ ЬФХ РТПЗТБННХ, ЛПЗДБ ЕК ДБМЙ ФБЛХА ЛПНБОДХ. л УПЦБМЕОЙА, Ч ЬФПФ ТБЪ ПРЕТБГЙПООПК УЙУФЕНЕ ОЕ ЧУЕ Ч ЬФПК ЛПНБОДЕ РПОТБЧЙМПУШ.
йФБЛ, ЮФП ЦЕ ФБЛПЕ ЛПНБОДБ? пВТБФЙНУС Л РТЙЧЕДЈООПНХ ЧЩЫЕ РТЙНЕТХ. лПНБОДПК СЧМСЕФУС РЕТЧПЕ УМПЧП Ч ЛПНБОДОПК УФТПЛЕљ— make ; ЬФП ОБЪЩЧБЕФУС ЙНЕОЕН ЛПНБОДЩ. чУЕ ПУФБМШОПЕ Ч ЛПНБОДОПК УФТПЛЕ ЧПУРТЙОЙНБЕФУС Ч ЛБЮЕУФЧЕ БТЗХНЕОФПЧ ЬФПК ЛПНБОДЩ. ч УМЕДХАЭЕН РТЙНЕТЕ:
ЙНС ЛПНБОДЩљ— cp , Б БТЗХНЕОФЩљ— foo Й bar.
лПЗДБ ЧЩ ЧЧПДЙФЕ ЛПНБОДХ, ПВПМПЮЛБ РТПЙЪЧПДЙФ ОЕУЛПМШЛП ДЕКУФЧЙК. чП-РЕТЧЩИ, ПОБ РТПЧЕТСЕФ, СЧМСЕФУС МЙ ЛПНБОДБ ЧОХФТЕООЕК ДМС ПВПМПЮЛЙ. чОХФТЕООЕК ЛПНБОДПК ОБЪЩЧБЕФУС ЛПНБОДБ, РТП ЛПФПТХА ПВПМПЮЛБ УБНБ РП УЕВЕ ЪОБЕФ, ЛБЛ ЕЈ ЙУРПМОСФШ. йНЕЕФУС ОЕУЛПМШЛП ЧОХФТЕООЙИ ЛПНБОД ПВПМПЮЕЛ, Й ПОЙ ВХДХФ ТБУУНПФТЕОЩ ОЙЦЕ. фБЛЦЕ ПВПМПЮЛБ РТПЧЕТСЕФ, ОЕ СЧМСЕФУС МЙ ЛПНБОДБ РУЕЧДПОЙНПН (alias) ДТХЗПК ЛПНБОДЩ. еУМЙ ТЕЪХМШФБФ ЧУЕИ РТПЧЕТПЛ ПФТЙГБФЕМШОЩК, ФП ПВПМПЮЛБ ЙЭЕФ РТПЗТБННХ У ЬФЙН ЙНЕОЕН ОБ ДЙУЛЕ. еУМЙ РТПЗТБННБ ОБИПДЙФУС, ПВПМПЮЛБ ЕЈ ЙУРПМОСЕФ, РЕТЕДБЧБС ЕК БТЗХНЕОФЩ, ЧЧЕДЈООЩЕ Ч ЛПНБОДОПК УФТПЛЕ.
ч РЕТЧПН ЙЪ ОБЫЙИ РТЙНЕТПЧ ПВПМПЮЛБ ЙУЛБМБ РТПЗТБННХ РПД ОБЪЧБОЙЕН make , ОБЫМБ ЕЈ Й ЪБРХУФЙМБ У БТЗХНЕОФПН cake. оБ УБНПН ДЕМЕ make љ— ЬФП РТПЗТБННБ, ЛПФПТБС ЮБУФП ЙУРПМШЪХЕФУС ДМС ЛПНРЙМЙТПЧБОЙС ЛТХРОЩИ РТПЗТБНН, Й Ч ЛБЮЕУФЧЕ БТЗХНЕОФБ Х ОЕЈ ЙУРПМШЪХЕФУС ЙНС РТПЗТБННЩ, ЛПФПТХА ОХЦОП ЛПНРЙМЙТПЧБФШ. ч ДБООПН УМХЮБЕ, ПФДБЧБС ЛПНБОДХ make cake , НЩ ПФДБМЙ РТЙЛБЪ ЛПНРЙМСФПТХ make ЛПНРЙМЙТПЧБФШ РТПЗТБННХ cake . рПУЛПМШЛХ ЛПНРЙМСФПТ make ОЕ ОБЫЈМ РТПЗТБННХ У ФБЛЙН ЙНЕОЕН, ПО ЧЩДБМ УППВЭЕОЙЕ ПВ ПЫЙВЛЕ (ЛПФПТПЕ ОБН НПЦЕФ РПЛБЪБФШУС УНЕЫОЩН) Й ЧЕТОХМ ОБУ Л РТЙЗМБЫЕОЙА ПВПМПЮЛЙ.
рПУНПФТЙН ФЕРЕТШ, ЮФП ВХДЕФ, ЕУМЙ ПВПМПЮЛБ ОЕ УНПЦЕФ ОБКФЙ РТПЗТБННХ У ЧЧЕДЈООЩН ОБНЙ ЙНЕОЕН. чЧЕДЈН УМЕДХАЭХА ЛПНБОДХ:
чУЕ ПЮЕЧЙДОП: ПВПМПЮЛБ ОЕ УНПЗМБ ОБКФЙ РТПЗТБННХ У ДБООЩН ЕК ЙНЕОЕН (ЪДЕУШљ— eat ) Й ЧЩДБМБ УППВЭЕОЙЕ ПВ ПЫЙВЛЕ. ьФП УППВЭЕОЙЕ ВХДЕФ ЮБУФП РПСЧМСФШУС, ЕУМЙ ЧЩ ВХДЕФЕ ОЕРТБЧЙМШОП ЧЧПДЙФШ ЛПНБОДХ У ЛМБЧЙБФХТЩ (ОБРТЙНЕТ, ЕУМЙ ВЩ Ч УБНПН РЕТЧПН РТЙНЕТЕ ЧЩ ОБВТБМЙ mkae love ЧНЕУФП make love ).
чЩИПД ЙЪ УЙУФЕНЩ
рТЕЦДЕ, ЮЕН ЙДФЙ ДБМШЫЕ, УМЕДХЕФ УЛБЪБФШ, ЛБЛ ЧЩИПДЙФШ ЙЪ УЙУФЕНЩ. дМС ЧЩИПДБ ЙЪ УЙУФЕНЩ ОХЦОП РПУМЕ РТЙЗМБЫЕОЙС ПВПМПЮЛЙ ЧЧЕУФЙ ЛПНБОДХ
уХЭЕУФЧХАФ Й ДТХЗЙЕ УРПУПВЩ ЧЩКФЙ ЙЪ УЙУФЕНЩ, ОП ЬФПФ СЧМСЕФУС УБНЩН ОБДЈЦОЩН.
йЪНЕОЕОЙЕ РБТПМС
уМЕДХЕФ ФБЛЦЕ ЪОБФШ, ЛБЛ ЙЪНЕОСФШ РБТПМШ. дМС ЬФПЗП ОХЦОП ЧЧЕУФЙ ЛПНБОДХ passwd . уОБЮБМБ ЬФБ ЛПНБОДБ РТЕДМПЦЙФ ЧЧЕУФЙ УФБТЩК РБТПМШ, Б РПФПН љ— ОПЧЩК РБТПМШ. ьФБ ЛПНБОДБ РПРТПУЙФ ЧБУ ЪБФЕН ЕЭЈ ТБЪ ЧЧЕУФЙ ОПЧЩК РБТПМШ ДМС РПДФЧЕТЦДЕОЙС. у РБТПМЕН ОХЦОП ПВТБЭБФШУС БЛЛХТБФОП Й ОЕ ЪБВЩЧБФШ ЕЗП, РПУЛПМШЛХ, ЕУМЙ ЧЩ ЪБВХДЕФЕ УЧПК РБТПМШ, ЧБН РТЙДЈФУС РТПУЙФШ УЙУФЕНОПЗП БДНЙОЙУФТБФПТБ УОСФШ РБТПМШ У ЧБЫЕЗП ЙНЕОЙ. еУМЙ ЧЩ љ— УБНЙ УЕВЕ УЙУФЕНОЩК БДНЙОЙУФТБФПТ, ФП ХЛБЪБОЙС РП УНЕОЕ РБТПМС ЧЩ НПЦЕФЕ ОБКФЙ Ч ТБЪДЕМЕ « хРТБЧМЕОЙЕ РПМШЪПЧБФЕМСНЙ » Ч ТХЛПЧПДУФЧЕ РП ДЙУФТЙВХФЙЧХ.
жБКМЩ Й ЛБФБМПЗЙ
ч ВПМШЫЙОУФЧЕ ПРЕТБГЙПООЩИ УЙУФЕН (ЧЛМАЮБС УЙУФЕНХ Linux) ЙУРПМШЪХЕФУС РПОСФЙЕ ЖБКМБ (file). жБКМ љ— ЬФП ОЕЛПФПТЩК « ЛХУПЛ » ЙОЖПТНБГЙЙ, ЛПФПТПНХ ДБОП ЙНС, ОБЪЩЧБЕНПЕ ЙНЕОЕН ЖБКМБ (filename). рТЙНЕТБНЙ ЖБКМПЧ НПЗХФ УМХЦЙФШ ТБВПФБ РП ЙУФПТЙЙ, РПУМБОЙЕ, РТЙЫЕДЫЕЕ РП ЬМЕЛФТПООПК РПЮФЕ, Б ФБЛЦЕ ЙУРПМОСЕНБС РТПЗТБННБ. оХЦОП ЪОБФШ, ЮФП ОБ ДЙУЛЕ ЙОЖПТНБГЙС УПИТБОСЕФУС ФПМШЛП Ч ЧЙДЕ ПФДЕМШОЩИ ЖБКМПЧ.
жБКМЩ ТБЪМЙЮБАФУС РП УЧПЙН ЙНЕОБН. оБРТЙНЕТ, УЧПК ЖБКМ У ТБВПФПК РП ЙУФПТЙЙ ЧЩ НПЦЕФЕ ОБЪЧБФШ history-paper. ч ЬФЙИ УМХЮБСИ ЙНС ЖБКМБ ЧЩВЙТБЕФУС ФБЛЙН, ЮФПВЩ ПОП ЛБЛЙН-ФП ПВТБЪПН ИБТБЛФЕТЙЪПЧБМП УПДЕТЦЙНПЕ ДБООПЗП ЖБКМБ. дМС ЙНЈО ЖБКМПЧ ОЕФ ФБЛПЗП УФБОДБТФОПЗП ЖПТНБФБ, ЛБЛПК ЕУФШ Ч УЙУФЕНЕ MS-DOS Й Ч ОЕЛПФПТЩИ ДТХЗЙИ ПРЕТБГЙПООЩИ УЙУФЕНБИ. ч РТЙОГЙРЕ, ЙНС ЖБКМБ НПЦЕФ УПДЕТЦБФШ МАВЩЕ УЙНЧПМЩ (ЪБ ЙУЛМАЮЕОЙЕН УЙНЧПМБ / љ— УНЩУМ ЬФПЗП УЙНЧПМБ ВХДЕФ ТБЪЯСУОЈО ОЙЦЕ). дМЙОБ ЙНЕОЙ ЖБКМБ ПЗТБОЙЮЕОБ 256 ЪОБЛБНЙ.
рПОСФЙЕ ЖБКМБ ФЕУОП УЧСЪБОП У РПОСФЙЕН ЛБФБМПЗБ (directory). лБФБМПЗ љ— ЬФП ОБВПТ ЖБКМПЧ. йОПЗДБ ЛБФБМПЗ ОБЪЩЧБАФ « РБРЛБ », РП БОБМПЗЙЙ У РБРЛПК, Ч ЛПФПТПК УПДЕТЦЙФУС НОПЗП ТБЪМЙЮОЩИ МЙУФПЧ. пДОБЛП ЬФБ БОБМПЗЙС ОЕ ЧРПМОЕ ФПЮОБ, РПУЛПМШЛХ ЛБФБМПЗ УПДЕТЦЙФ ОЕ УПВУФЧЕООП ЖБКМЩ, Б УУЩМЛЙ ОБ ЖБКМЩ, Б ФБЛЦЕ Й ОБ ДТХЗЙЕ ЛБФБМПЗЙ. вПМЕЕ РПДИПДСЭБС БОБМПЗЙСљ— ВЙВМЙПФЕЮОЩК ЛБФБМПЗ ЙМЙ ЛБТФПФЕЛБ. лБФБМПЗБН ДБАФУС ЙНЕОБ, РП ЛПФПТЩН ЙИ НПЦОП ТБУРПЪОБЧБФШ. лТПНЕ ЬФПЗП, ЛБФБМПЗЙ ПВТБЪХАФ УФТХЛФХТХ ФЙРБ ДЕТЕЧБ; ЙОЩНЙ УМПЧБНЙ, УХЭЕУФЧХЕФ ЕДЙОУФЧЕООЩК ЛПТОЕЧПК ЛБФБМПЗ, ЛПФПТЩК УПДЕТЦЙФ ЧОХФТЙ УЕВС ЧУЕ ПУФБМШОЩЕ ЛБФБМПЗЙ.
лБЛ УМЕДУФЧЙЕ, Л ЖБКМХ НПЦОП ПВТБЭБФШУС, ХЛБЪЩЧБС РХФШ (path) Л ЬФПНХ ЖБКМХ. рХФШ УПУФПЙФ ЙЪ ЙНЕОЙ ЛБФБМПЗБ, ЪБ ЛПФПТЩН РЙЫЕФУС ЙНС ЖБКМБ. рХУФШ, ОБРТЙНЕТ, Х РПМШЪПЧБФЕМС мБТТЙ ЕУФШ ЛБФБМПЗ papers, Ч ЛПФПТПН УПДЕТЦЙФУС ФТЙ ЖБКМБ: history-final, english-lit, masters-thesis. лБЦДЩК ЙЪ ЬФЙИ ФТЈИ ЖБКМПЧ УПДЕТЦЙФ ЙОЖПТНБГЙА П ФТЈИ ТБВПФБИ, ЛПФПТЩНЙ Ч ДБООЩК НПНЕОФ ЪБОЙНБЕФУС мБТТЙ. юФПВЩ ПВТБФЙФШУС Л ЖБКМХ english-lit, мБТТЙ НПЦЕФ ХЛБЪБФШ РХФШ Л ЖБКМХ, ОБРТЙНЕТ, УМЕДХАЭЙН ПВТБЪПН:
рТЙ ХЛБЪБОЙЙ РХФЙ, ЛБЛ НПЦОП ХЧЙДЕФШ, ЙНЕОБ ЛБФБМПЗБ Й ЖБКМБ ТБЪДЕМСАФУС УЙНЧПМПН /. рП ЬФПК РТЙЮЙОЕ ЙНЕОБ ЖБКМПЧ ОЕ НПЗХФ УПДЕТЦБФШ ЬФПФ УЙНЧПМ. рПМШЪПЧБФЕМСН УЙУФЕНЩ MS-DOS ВХДЕФ ЪОБЛПНБ ЬФБ УЙУФЕНБ ПВПЪОБЮЕОЙК, ИПФС Ч УЙУФЕНЕ MS-DOS ЧНЕУФП УЙНЧПМБ / ЙУРПМШЪХЕФУС ФБЛ ОБЪЩЧБЕНЩК « ПВТБФОЩК УМЬЫ » ( \).
лБЛ ХЛБЪЩЧБМПУШ ЧЩЫЕ, ЛБФБМПЗЙ НПЗХФ ВЩФШ ЧМПЦЕОЩ ДТХЗ Ч ДТХЗБ. рХУФШ, ОБРТЙНЕТ, Ч ПДОПН ЛБФБМПЗЕ papers ЙНЕЕФУС ДТХЗПК ЛБФБМПЗ У ЙНЕОЕН notes. лБФБМПЗ notes УПДЕТЦЙФ ЖБКМЩ math-notes Й cheat-sheet. рХФШ Л ЖБКМХ cheat-sheet РТЕДУФБЧМСЕФУС УМЕДХАЭЙН ПВТБЪПН:
нЩ ЧЙДЙН, ЮФП РХФШ Л ЖБКМХ ОБРПНЙОБЕФ ПРЙУБОЙЕ РХФЙ Ч МБВЙТЙОФЕ. лБФБМПЗ, ЛПФПТЩК УПДЕТЦЙФ ДБООЩК РПДЛБФБМПЗ, ПВЩЮОП ОБЪЩЧБЕФУС ТПДЙФЕМШУЛЙН ЛБФБМПЗПН (parent directory). ч ДБООПН РТЙНЕТЕ ЛБФБМПЗ papers СЧМСЕФУС ТПДЙФЕМШУЛЙН ДМС ЛБФБМПЗБ notes.
дЕТЕЧП ЛБФБМПЗПЧ
ч ВПМШЫЙОУФЧЕ УЙУФЕН Linux ЙУРПМШЪХЕФУС УФБОДБТФОПЕ ТБУРПМПЦЕОЙЕ ЖБКМПЧ, ФБЛ ЮФП НЕУФПРПМПЦЕОЙЕ ПУОПЧОЩИ УЙУФЕНОЩИ ЖБКМПЧ Й РТПЗТБНН МЕЗЛП ОБКФЙ. лБФБМПЗЙ ПВТБЪХАФ УФТХЛФХТХ Ч ЧЙДЕ ДЕТЕЧБ, ЛПФПТПЕ ОБЮЙОБЕФУС У ЛБФБМПЗБ /. ьФПФ ЛБФБМПЗ ОБЪЩЧБЕФУС ФБЛЦЕ ЛПТОЕЧЩН ЛБФБМПЗПН (root directory). оЕРПУТЕДУФЧЕООП Л ЛБФБМПЗХ / РТЙНЩЛБАФ ЧБЦОЩЕ РПДЛБФБМПЗЙ /bin, /etc, /dev, /usr Й ДТХЗЙЕ. ч УЧПА ПЮЕТЕДШ ЬФЙ ЛБФБМПЗЙ УПДЕТЦБФ ДТХЗЙЕ ЛБФБМПЗЙ, Ч ЛПФПТЩИ ОБИПДСФУС ЛПОЖЙЗХТБГЙПООЩЕ ЖБКМЩ УЙУФЕНЩ, РТПЗТБННЩ ЙљФ.љД.
лБЦДЩК РПМШЪПЧБФЕМШ ЙНЕЕФ УЧПК ДПНБЫОЙК ЛБФБМПЗ (home directory). ьФПФ ЛБФБМПЗ ЧЩДЕМЕО РПМШЪПЧБФЕМА ДМС ИТБОЕОЙС Ч ОЕН УЧПЙИ ЖБКМПЧ. ч РТЙЧЕДЈООЩИ ЧЩЫЕ РТЙНЕТБИ ЧУЕ ЖБКМЩ, ЛПФПТЩЕ УПЪДБМ мБТТЙ (ОБРТЙНЕТ, ЖБКМЩ cheat-sheet Й history-final), УПДЕТЦБФУС Ч ДПНБЫОЕН ЛБФБМПЗЕ РПМШЪПЧБФЕМС larry. пВЩЮОП УПВУФЧЕООЩЕ ЛБФБМПЗЙ РПМШЪПЧБФЕМЕК УПДЕТЦБФУС Ч ЛБФБМПЗЕ /home, Й ОБЪЧБОЙС ЬФЙИ ЛБФБМПЗПЧ УПЧРБДБАФ У ЙНЕОБНЙ РПМШЪПЧБФЕМЕК. фБЛЙН ПВТБЪПН, УПВУФЧЕООЩК ЛБФБМПЗ РПМШЪПЧБФЕМС larry ОБЪЩЧБЕФУС /home/larry.
фЕЛХЭЙК ЛБФБМПЗ
ч МАВПК НПНЕОФ ЧТЕНЕОЙ ПФДБЧБЕНБС ЛПНБОДБ ПФОПУЙФУС Л ФЕЛХЭЕНХ ЛБФБМПЗХ (current directory). рТЙ ЧИПДЕ Ч УЙУФЕНХ ФЕЛХЭЙН ЛБФБМПЗПН ОБЪОБЮБЕФУС ЧБЫ ДПНБЫОЙК ЛБФБМПЗ (Ч ОБЫЕН УМХЮБЕ /home/larry). пВТБЭБСУШ Л ЖБКМХ, НПЦОП ХЛБЪЩЧБФШ ЛБЛ РПМОЩК РХФШ Л ЬФПНХ ЖБКМХ, ФБЛ Й ФПМШЛП РХФШ ПФ ФЕЛХЭЕЗП ЛБФБМПЗБ.
рТЙЧЕДЈН РТЙНЕТ. х РПМШЪПЧБФЕМС larry ЕУФШ ЛБФБМПЗ papers, Й Ч ОЕН ЕУФШ ЖБКМ history-final. еУМЙ мБТТЙ ИПЮЕФ ЧЪЗМСОХФШ, ЮФП ЪБРЙУБОП Ч ЬФПН ЖБКМЕ, ПО НПЦЕФ ЙУРПМШЪПЧБФШ ЛПНБОДХ
лПНБОДБ more РТПУФП ЧЩЧПДЙФ УПДЕТЦЙНПЕ ЖБКМБ ОБ ЬЛТБО РП ПДОПНХ ЬЛТБОХ ЪБ ПДЙО ТБЪ. ч ДБООПН УМХЮБЕ, РПУЛПМШЛХ ФЕЛХЭЙН ЛБФБМПЗПН СЧМСЕФУС /home/larry, РПМШЪПЧБФЕМШ НПЦЕФ ПВТБФЙФШУС Л ЖБКМХ ПФОПУЙФЕМШОП ФЕЛХЭЕЗП ЛБФБМПЗБ Й ПФДБФШ УМЕДХАЭХА ЛПНБОДХ:
еУМЙ ЙНС ЖБКМБ (ОБРТЙНЕТ, papers/final) ОБЮЙОБЕФУС У УЙНЧПМБ, ПФМЙЮОПЗП ПФ /, ФП ЬФП ЪОБЮЙФ, ЮФП Л ЖБКМХ ПВТБЭБАФУС ПФОПУЙФЕМШОП ФЕЛХЭЕЗП ЛБФБМПЗБ. фБЛПК УРПУПВ ПВТБЭЕОЙС ОБЪЩЧБЕФУС ПФОПУЙФЕМШОЩН РХФЈН (relative path).
оБПВПТПФ, ЕУМЙ ЙНС ЖБКМБ ОБЮЙОБЕФУС УП ЪОБЛБ /, ФП УЙУФЕНБ ЙОФЕТРТЕФЙТХЕФ ЬФП ЛБЛ РПМОЩК РХФШ (full path), Ф.љЕ. РХФШ, ЛПФПТЩК ЧЕДЈФ Л ЖБКМХ, ОБЮЙОБС У ЛПТОЕЧПЗП ЛБФБМПЗБ /. ьФП ЕЭЈ ОБЪЩЧБАФ БВУПМАФОЩН РХФЈН (absolute path).
пВТБЭЕОЙЕ Л ДПНБЫОЕНХ ЛБФБМПЗХ
ч ЛПНБОДОЩИ ПВПМПЮЛБИ tcsh Й bash [4] ДПНБЫОЙК ЛБФБМПЗ НПЦОП ПВПЪОБЮБФШ УЙНЧПМПН
ЬЛЧЙЧБМЕОФОБ ФБЛПК ЛПНБОДЕ:
лПНБОДОБС ПВПМПЮЛБ ЪБНЕОСЕФ УЙНЧПМ
ЙНЕОЕН ЧБЫЕЗП ДПНБЫОЕЗП ЛБФБМПЗБ.
) НПЦОП ФБЛЦЕ ПВПЪОБЮБФШ ДПНБЫОЙЕ ЛБФБМПЗЙ ДТХЗЙИ РПМШЪПЧБФЕМЕК. фБЛ, РХФШ
karl/letters ВХДЕФ РТЕПВТБЪПЧБО ПВПМПЮЛПК Ч РХФШ /home/karl/letters, ЕУМЙ /home/karl СЧМСЕФУС ДПНБЫОЙН ЛБФБМПЗПН РПМШЪПЧБФЕМС karl. фБЛЙН ПВТБЪПН, УЙНЧПМ
љ— ЬФП РТПУФП УПЛТБЭЕОЙЕ. оЙ ПДЙО ЛБФБМПЗ ОЕ ОБЪЩЧБЕФУС
[4] ъДЕУШ ЗПЧПТЙФУС П ЛПНБОДОЩИ ПВПМПЮЛБИ tcsh Й bash . ч УЙУФЕНЕ Linux ЛПНБОДОЩЕ ПВПМПЮЛЙљ— ЬФП РТПЗТБННЩ, ЛПФПТЩЕ ЮЙФБАФ ЛПНБОДЩ, ПФДБЧБЕНЩЕ ЙН РПМШЪПЧБФЕМЕН, Й ЧЩРПМОСАФ ЙИ. вПМШЫЙОУФЧП ЧБТЙБОФПЧ УЙУФЕНЩ Linux ДМС ОПЧЩИ РПМШЪПЧБФЕМЕК ЪБРХУЛБАФ ПДОХ ЙЪ ЬФЙИ ДЧХИ ЛПНБОДОЩИ ПВПМПЮЕЛ: bash ЙМЙ tcsh .
Источник