Краткое введение в программирование на Bash [заметки]
1
слова «сценарий» и «скрипт» обычно являются синонимами (прим. перев).
2
намного медленнее (прим. перев)
3
естественно при наличии интерпретатора для этой операционной системы (прим. перев)
4
автор еще забыл nano, который лучше всего подходит начинающим, если не учитывать еще и mcedit. (прим. перев.)
5
для новичков - этот пример работать не будет. (прим. перев.)
6
В примере, приведенном в оригинале автор показывает, что не зря рекомендовал делать приведенные упражнения под специально созданным пользователем. Результатом выполнения данной последовательности команд будет чистый каталог, в котором вы работаете. Скорее всего это будет ваша домашняя директория. Поэтому, если вы НЕ хотите удаления всех файлов в ней - НЕ выполняйте команды из оригинала статьи. А лучше последуйте совету автора и создайте отдельного пользователя специально для тренировки написания скриптов. Этот пример я немного расширил и теперь он не такой опасный. (прим. перев.)
7
Не стоит пытаться запомнить их все, т.к. это все равно нереально. Его всегда можно посмотреть в руководстве команды test - man test. (Прим. перев.)
8
Наличие пробелов объясняется просто: открывающая квадратная скобка - это команда оболочки. В этом можно легко убедиться набрав в консоли команду which [ . А раз это отдельная команда, то ее нужно отделить пробелами от остальных опций. (прим. перев.)
9
Полный список приведен в man test. (прим. перев.)
10
Этот скрипт реально так поступает и вам возможно это не нужно. Поэтому все-таки создайте отдельного пользователя, если вы еще до сих пор этого не сделали, и экспериментируйте под ним. (прим. перев.)
11
находятся слева от клавиши 1. (прим. перев.)
12
Главным образом, дело в том, что bash воспринимает пробел как разделитель всего, что только можно - опций, аргументов, отдельных команд. Внутри двойных кавычек пробел теряет свое специальное значение. (прим. перев.)
13
На мой взгляд, лучше использовать именно запись типа $(...), потому что запись в обратных кавычках и одинарных можно легко перепутать при наборе кода и при его чтении. (прим. перев.)
14
надеюсь со временем, как только текст появится, осилить и его перевод. (прим. перев.)
15
При работе с булевыми переменными ИСТИНА и ЛОЖЬ (True и False), bash ведет себя отлично от других языков программирования. В других языках 0 соответствует False (Ложь), а 1 — True (Истина). В bash все наоборот. Связано это с такой вещью, как коды завершения программ (см. ниже).
16
В переменной $$ обычно хранится следующий свободный PID. Именно поэтому использование такой переменной гарантирует уникальные имена для вновь создаваемых файлов.(Примечание переводчика)
17
На самом деле все работает так: Конструкция вида 2>&1 перенаправляет вывод ошибок (дескриптор 2) на стандартный вывод (дескриптор 1). Знак «загогулины» — & — тут нужен для того, чтобы пояснить bash, что вы имеете в виду не файл с именем 1, а именно файл с дескриптором 1, т. е. стандартный вывод. Если вы укажете что-то вроде:
>$ команда 2>1
то стандартный вывод ошибок пойдет в файл с именем 1. Конструкцией 2>&1 мы «сцепляем» вывод команды и вывод ошибок вместе. А первым перенаправлением (первым символом > в коментируемой команде) мы отправляем весь вывод команды в /dev/null. Чтобы дополнительно понять, как все работает, можете поэкспериментировать, убрав 2>&1 из команды и перезапустив ее.(Примечание переводчика)
18
И что более важно, будет ли она там работать также, как на вашей Linux системе. (Примечание переводчика)
19
Для проверки наличия в скрипте команд и функций специфичных для bash в ALT Linux есть пакет checkbashisms, который взят из пакета devscripts Debian.(Примечание переводчика)
20
Очень полезно также on-line руководство Advanced Bash-Scripting Guide (Примечание редактора)
После ночи, проведённой с незнакомцем, жизнь Эмили круто меняется. Болезненная привязанность и странности окружают девушку со всех сторон и не дают спокойно жить. Тайны затягивают всё глубже, и уже нет возможности вырваться из западни. Кому верить: незнакомцу, после ночи с которым осталось непонятное, практически невозможное побороть притяжение или мужчине, что готов помочь разобраться во всех тайнах и странностях, творящихся в жизни Эмили? Неправильный выбор может стать роковым. Привычный мир рухнет в одночасье, когда раскроются тайны и станут известны истинные мотивы.
Соединенные Штаты, Китай, Великобритания, Россия, Европейский Союз. Больше этих некогда влиятельных сверхдержав не найти ни на одной карте мира. Много лет назад само существование жизни на планете было поставлено под угрозу. Города исчезали один за другим, становились историей, а цивилизованный мир таял. Так продолжалось, пока ученые не создали оружие, способное остановить нашествие врагов из параллельной вселенной, прозванных пожирателями. С тех пор на планете уцелели только три города.
Продолжение супергеройского романа «Психокинетики». Враг повержен, но враг — ложный. Теперь героям предстоит разобраться в хитросплетениях глобального заговора, частью которого они стали, и в себе самих. Очередные опасности. Новые способности. И одна угроза на всех.
Потомки библейских исполинов расселились по земле и живут среди нас. Постепенно, создавая семьи с обычными людьми, они измельчали до человеческих размеров. Борьба полов в семействах исполинов за право властвовать на планете не прекращалась и в двадцать первом веке. В их отношения вмешались силы небесные, пригрозив запустить программу перерождения человека в бесполое существо, способное рождаться на свет с эмбрионом своего единственного будущего ребёнка внутри. Когда и эта угроза не вразумила их, то силы небесные, под предлогом надвигающейся глобальной катастрофы на Земле, решили переселить их на антиземлю — планету Антихтон, движущуюся по одной орбите с Землёй, по другую сторону Солнца.
Что бы стало, если роман «Лисья тропа» пошел по другому сценарию? Не окончательный раскол между невольницей и эльфийским князем, а их единство? Такое невозможно в мире Фейри, где сила и магия затмевают все остальное. Но в мире людей, смертных, совсем другие правила. И оказавшись на Земле по воле судьбы, превратившись в таких же смертных людей, Скайлер и Анкалион встречаются вновь… Для Скайлер прошло десять лет с тех пор, как она покинула мир Фейри. Как ей казалось, навсегда. Но прошлое отказывается так просто ее отпускать.