Разное

Самоучитель линукс: Осваиваем Linux за три недели / Блог компании Stepik.org / Хабр

Содержание

Осваиваем Linux за три недели / Блог компании Stepik.org / Хабр

Идея вводного курса по работе с Linux возникла у нас с коллегами довольно давно. Я с 2011 года занимаюсь биоинформатикой в Лаборатории алгоритмической биологии СПбАУ РАН (тут и тут мой напарник писал про то, чем мы занимаемся). Сразу нужно сказать, что работа биоинформатика без Linux практически невозможна, поскольку большинство биоинформатических программ созданы именно под эту операционную систему и работают только на ней.

В силу того, что это область на стыке наук, мы постоянно общаемся с биологами. Биологам же сейчас приходится работать с очень большими объемами данных, поэтому умение использовать Linux, оптимальную для подобных задач операционную систему, становится необходимым навыком. На самом деле, речь не только об умении обращаться с Linux, а в целом о компьютерной грамотности: какие существуют правила работы на сервере, как загружать и эффективно хранить файлы с данными, какие программы запускать для их обработки и как это сделать и т.

д. — все те вещи, которые как упрощают и ускоряют вашу работу, так и значительно облегчают совместную деятельность с коллегам. Несмотря на то, что разобраться с Linux можно и самостоятельно, почитав умные книжки и сайты, для людей из не технической среды это часто вызывает определенные сложности и многие сдаются на начальных этапах освоения этой ОС (например, на знакомстве с командной строкой).

На основе нашего опыта я и мой коллега Андрей Пржибельский (@andrewprzh) изначально собирались провести несколько занятий для биологов по компьютерной грамотности. А потом эта идея выросла в трехнедельный открытый онлайн-курс (MOOC) Института биоинформатики на русском языке, который позже был сужен до именно введения в Linux, как отправной точки, — поскольку вместить все в три недели оказалось очень и очень трудно. Курс уже начался и оказался достаточно популярен (на данный момент на него записалось более пяти тысяч человек), но первый дедлайн по заданиям — 24 ноября, поэтому еще можно присоединиться без потери баллов или просто изучать курс в свободном режиме (все материалы останутся открытыми).



Про саму подготовку первого в нашей жизни онлайн-курса, если сообществу интересно, мы напишем отдельный пост — это совсем не так просто и быстро, как может показаться на первый взгляд.

Но сначала хотелось бы остановиться на ответах на вопросы, которые нам задавали чаще всего. При подготовке курса мы общались с самыми разными людьми и столкнулись с тем, что многие совсем не понимают, где используется Linux, и не догадывались, что система может быть им полезна. Итак:

Зачем сейчас нужно уметь обращаться с Linux?

Многие не замечают, но Linux уже вокруг нас. Все Android устройства работают на Linux, большинства серверов в Интернете также используют эту операционную систему и есть множество других примеров. Конечно, можно продолжать пользоваться всеми этими вещами и не зная Linux, но освоив основы этой системы, можно лучше понять поведение окружающих вас вещей. Кроме того, при работе с большим объемом данных, Linux просто необходим, ведь большинство сложных вычислений над огромными массивами данных выполняются именно на компьютерах под управлением Linux.
И это не случайный выбор: большинство вычислительных задач выполняются на Linux гораздо быстрее, чем на Windows или Mac OS X.
Как Linux связан с освоением других дисциплин?

Огромная доля научного ПО, особенно программ для обработки больших данных (например, в области биоинформатики) разработана специально под Linux. Это значит, что эти приложения просто не могут быть запущены под Windows или Mac OS X. Так что если вы не умеете работать в Linux, то автоматически лишаетесь возможности использовать самые современные научные наработки. Кроме того, изучая Linux, вы лучше понимаете как работает компьютер, ведь вы сможете отдавать ему команды практически напрямую.
Почему для этого нужен отдельный курс?

У Linux очень много возможностей, которые полезно знать и, конечно же, уметь ими воспользоваться в нужный момент. К счастью, современные версии Linux гораздо более дружелюбны к пользователям, чем их собратья еще 5-6 лет назад. Сейчас можно не мучиться часами и даже днями ночами после установки системы, чтобы настроить себе выход в Интернет, печать на принтере, раскладки клавиатуры и так далее. Любой желающий сможет начать использовать Linux так же, как он использовал Windows или Mac OS X уже после минимального знакомства с этой системой, которое будет исчисляться минутами. Однако возможности Linux гораздо шире «повседневного» использования. Рассказать обо всей функциональности Linux просто невозможно даже за трехнедельный курс. Однако мы стараемся научить слушателей использовать большинство базовых возможностей Linux, а самое главное, надеемся, что прошедшие курс смогут успешно продолжить освоение Linux самостоятельно.
Что в Linux интересного?

Для нас Linux похож на очень интересную книгу, которую вы прочитали и с удовольствием рекомендуете своим друзьям и даже чувствуете зависть от того, что у них знакомство с этим произведением еще впереди. Единственная разница в том, что хоть мы и знакомы с Linux уже почти по 10 лет, не можем сказать, что «прочитали» его целиком. В нем постоянно можно найти что-то новое для себя, узнать что многие вещи, которые ты привык делать одним способом, можно сделать совершенно по-другому — гораздо проще и быстрее.

Чем больше знакомишься с Linux, тем он становится интереснее. И от первоначального желания «поскорее бы выключить и перезагрузиться в родную и знакомую Windows (Mac OS X)» вы вскоре переходите в состояние «хм, а тут не так и плохо» и еще немного позже в «как я вообще мог работать в этой Windows?!». А еще изучая Linux вы порою можете почувствовать себя немного хакером или героем фильма про программистов =)

Наш курс состоит из краткого обзора основных возможностей Linux, однако для начинающих пользователей этого должно быть вполне достаточно, чтобы заинтересоваться Linux и немного погрузиться в его философию. Например, большую часть курса мы будем проводить за работой в терминале, так что у новичков должно возникнуть и привыкание и понимание преимуществ такого подхода к управлению компьютером. Для более продвинутых пользователей могут представлять интерес отдельные занятия курса — например, про работу с удаленным сервером или программирование на языке bash. Полная программа онлайн-курса доступна здесь.

Как проверять решение задач на курсе по Linux? Это вообще возможно?

Ответ на этот вопрос был нетривиальным — мы долго думали, как проверять задания (например, что пользователь установил Linux себе на компьютер или отредактировал файл в определенном редакторе) и как придумать интересные задачи, чтобы действительно показать реальную работу с Linux. Для каких-то тем получились довольно любопытные подходы. Например, специально для курса был добавлен новый тип задач на платформе Stepic — подключение к удалённому серверу (и открытие «терминала») прямо в окне браузера — по отзывам первых пользователей, им понравилось. Конечно, в первый раз не обошлось без шероховатостей, но, в целом, всё работает довольно хорошо. Про техническую сторону этого вопроса скоро появится отдельный пост от разработчиков. Пример такого задания (для просмотра вживую можно записаться на курс):

Нужно сказать, что не все пользователи воспринимали задачи с юмором. Например, мы проверяли навык установки программ на Linux на примере программы VLC. Нужно было установить ее в свою систему одним из рассказанных способов, потом открыть справку о программе, найти фамилию первого автора и ввести ее в форму для проверки. Каких только комментариев мы не наслушались про это задание 🙂 А ошибались люди в основном в том, что вводили имя и фамилию, или только имя, или часть фамилии (а она там двойная, через дефис!). В общем, если решитесь проходить курс, то читайте условия задач внимательнее и это сэкономит много времени и нервов! Правда с тем же автором было замечание и по делу, оказалось что в старых версиях VLC он идет аж на 14 месте, так что добавили в проверку еще одного автора, который первый среди «старого» списка (и, кстати, третий в «новом»).

А почему всё-таки Linux так хорош?

Вопрос, конечно, неоднозначный. На мой взгляд одним из ключевых преимуществ Linux перед Windows или Mac OS X является то, что эта операционная система разрабатывается огромным сообществом программистов по всему миру, а не в двух, пусть и очень больших компаниях (Microsoft и Apple). Исходный код этой системы открыт, и каждый может познакомится с внутренним устройством Linux или поучаствовать в его развитии. Разработчики развивают его не только для пользователей-покупателей, но и для самих себя, с чем и связан такой большой прогресс в развитии и многие другие его преимущества. В качестве «бонусов» для обычных пользователей: Linux бесплатный, на Linux практически нет вирусов (а сами разработчики вирусов зачастую сидят под Linux!), существую огромное число версий этой системы и каждый может выбрать понравившуюся именно ему!

И напоследок хотелось бы рассказать о своем первом знакомстве с Linux именно в рабочем процессе (до этого был еще отдельный курс по учебе, но из него я не очень много вынес, к сожалению). Этот случай меня так впечатлил, что помню его до сих пор. Когда я работал на кафедре в Политехе на 3-ем курсе мне понадобилось запускать одну программу для обработки данных. Программа была написана на С++, а работали мы тогда в Windows XP. Запусков нужно было сделать много, были они довольно однотипные и занимали обычно пару минут.
За это время ничего другого сделать на компьютере было нельзя — он полностью «подвисал», так что можно было поболтать с другими сотрудниками или просто прогуляться по кабинету. Примерно через пару недель таких запусков, мой научный руководитель посоветовал попробовать мне сделать всё тоже самое, но не в Windows, а в Linux. Я тогда подумал «ну какая разница», но так руководителя уважал, то программу перекомпилировал и его совет исполнил. Какового же было моё удивление, когда я запустил ту же самую программу на тех же самых данных и получил результат (естественно, точно такой же) за несколько секунд! Я даже со стула встать не успел, не то что прогуляться…



Кстати, помимо нашего русскоязычного онлайн-курса по Linux, существует хороший англоязычный вводный курс от Linux Foundation, про который уже писали на хабре. Судя по сайту, он снова начнется 5 января 2015.

Если вы знаете ещё интересные онлайн-курсы или обучающие материалы по азам Linux, будем рады увидеть ссылки на них в комментариях.

Книги о Linux

Здесь вы можете бесплатно, без регистрации и по прямой ссылке, читать онлайн и скачать в формате fb2 и txt книги по Linux (Линукс). Подборка книг включает издания рассчитанные на различную аудиторию. Здесь книги как для новичков, так и для тех, кому требуется разобраться в операционной системе Linux на совершенно ином уровне. Представлены книги в которых рассматривается эта операционная система в целом, а также по определенным дистрибутивам линукса, таким как: ubuntu, debian, fedora, gentoo и многим иным. Найдутся здесь книги и по Kali Linux.

Операционная система Linux прекрасно подходит для различной пользовательской аудитории. Пользоваться линуксом значительно легче и приятнее нежели пользоваться виндоус. Тем более Линукс бесплатен. Игры на него тоже вполне неплохо устанавливаются. Стоит учесть и тот факт, что при прочих равных Linux более хорошо защищен нежели Windows.

Книг в библиотеке пока не так и много, но и имеющиеся надеюсь вы сможете оценить по достоинству. Рекомендую воспользоваться и иными разделами моей небольшой онлайн библиотеки. В ней вы найдете литературу самых различных направлений. Скачивание всегда осуществляется по прямой ссылке (если конечно сама книга в библиотеке имеется).

Здесь книги не только о самой операционной системе Linux, но и о тех, кто стоял у ее истоков. Представлены и те книги, про которые можно с уверенностью сказать, что это лучшие книги о Linux.

Книги о UNIX тоже добавлены в список ниже и доступны для бесплатного скачивания.

Книги по Linux:

1. Котенок Дмитрий — Linux Ubuntu базовый курс
2. Линус Торвальдс и Дэвид Дэймонд — Ради удовольствия
3. Дэвид Бэндл — Защита и безопасность в сетях Linux
4. Андрей Робачевский — Операционная система UNIX
5. Денис Николаевич Колисниченко, В. Аллен — Linux полное руководство
6. Дэвид Тейнсли — Linux и Unix : программирование в shell. Руководство разработчика.
7. Эви Немет, Гарт Снайдер, Трент Р. Хейн — Руководство администратора Linux
8. Ю. Вахалия — UNIX изнутри
9. Эллен Сивер, Стивен Спейнауэр — Linux справочник
10. Брайн Керниган, Роб Пайк — Unix, программное окружение
11. Даниэл Дж. Баррет — Linux. Основные команды. Карманный справочник.
12. Марк Митчелл, Джеффри Оулдем, Алекс Самьюэл — Программирование для Linux, профессиональный подход
13. Мэтт Уэлш — ALT Linux изнутри
14. Linux для чайников
15. Таненбаум Э., Бос Х. — Современные операционные системы
16. 100 % самоучитель Linux

Если говорить о первой книге сверху, представленной на странице, то внесу некоторые уточнения. Она в первую очередь подойдет тем, кто ищет самоучитель для начинающих и по сути является первоначальным введением в мир OS Linux. В ней в основном затрагиваются вопросы установки Linux, кратко рассматривается сама операционная система и ничего больше. На это издание много времени вы не потратите, а пользу для себя получить сможете.

Лучшие учебники по Linux — Unix How

Нужно ли описывать, что такое Linux? Нет, не думаю. Потому что в мире технологий это знают все. Но почему люди не знают?

Linux является универсальной основой всего программного обеспечения и ОС. Значительная часть разработки программного обеспечения, технического образования, ОС основана на Linux. Раньше это был интерфейс командной строки, поэтому большинство пользователей не интересовались, но теперь различные дистрибутивы Linux поставляются с очень интуитивным и красивым графическим пользовательским интерфейсом, который делает его приятным для обычных людей.

Изо дня в день люди узнают о преимуществах программного обеспечения с открытым исходным кодом , безвирусных ОС и, прежде всего, применяют гибкую базу приложений, в которой возможна каждая настройка в соответствии с потребностями пользователей. Android, разработанный Google для Linux Kernel, Ubuntu, работает на canonical partners, основанных на Debian и будущих IOT (Internet Of Things), все это есть и будет только на ядре Linux. И это означает, что мы должны изучить основы Linux, чтобы извлечь из этого максимум пользы. Потому что Linux — это будущее.

Поэтому, если вы являетесь пользователем Linux, вы можете использовать Ubuntu, Arch Linux, Manjaro, Linux Mint, Elementary OS, Kali Linux или любые другие дистрибутивы, которые вы предпочитаете. В этой ситуации либо большинство пользователей являются новичками, либо обладают небольшим количеством знаний. Но чтобы получить максимальную отдачу от системы Linux, вы должны быть опытным пользователем, чтобы вы могли использовать систему Linux на самом высоком уровне, быть опытными пользователями или администратором Linux или разработчиками.

Лучшие учебники по Linux

Вот почему сегодня я собираюсь поделиться списком лучших и полезных бесплатных учебников по Linux, чтобы Вы смогли стать опытным пользователем. Все эти вечные учебные пособия по Linux и учебные электронные книги, несомненно, станут надежным местом для вашей будущей жизни на базе Linux.

Все упомянутые учебники по Linux изначально поставляются в формате PDF, и также имеется epub, Mobi и amazon kindle копия из оригинальной копии PDF. Так что, если кто-то обнаружит какие-либо проблемы с копиями epub или Mobi, я хотел бы обратиться к оригинальной версии PDF. Я надеюсь, что все копии можно читать на разных устройствах.

Перевод оглавлений старался произвести максимально правдоподобно (но, конечно порой было трудно перевести на грамотный русский язык технические термины) Но смысл не изменен.

Введение в Linux: практическое руководство

Эта книга полезна для начинающих пользователей. Содержание написано в простом и понятном формате, в основном с учетом того, что пользователи Linux новичков, которые пришли из других ОС или только что установили какие-либо дистрибутивы Linux впервые.

Первая глава этой книги была посвящена традиционной истории Unix, Linux, пользовательскому интерфейсу, функциям Linux и различным средам рабочего стола . Затем вы получите краткое руководство по начальной настройке, имени пользователя, паролю, графическому интерфейсу, интерфейсу командной строки, управлению файлами и необходимой команде Linux. В третьей главе вы сможете поиграть с файловой системой и разделами Linux.

Четвертая глава позволит вам узнать о различных задачах обработки, связанных с пользователями, загрузкой и многозадачностью.

Более того, она предоставляет подробную информацию о среде рабочего стола, графическом интерфейсе пользователя, сценарии оболочки и настройках, системе и конфигурации X Window, настройке клавиатуры, даты, языка и шрифтов, установке программного обеспечения и управлении пакетами.

Существует подробный шаг, чтобы узнать о печати. В этом разделе рассказывается о том, как форматировать и осуществлять команды для печати через CLI и GUI.

Хотя система Linux является универсальной и стабильной ОС иногда, она может сломаться из-за некоторых настроек. Поэтому важно научиться делать резервные копии системы и файлов, а также восстанавливать их после кризиса или повреждения системы. Существует отдельная глава, которая научит вас резервному копированию и восстановлению файлов и образа системы .

Сейчас мы живем в эпоху технологий и сетей. В разделе «Сеть» вы узнаете о локальном хосте и сети удаленного доступа, настройке Интернета и протоколе передачи файлов , а также о всех аспектах безопасности.

В главе о звуке и звуке рассказывается о том, как воспроизводить музыку и фильмы в вашей системе, о потоковом интернет-телевидении и немного информации об интернет-телефонии.

Оглавление

Что такое Linux?

  • Краткое руководство
  • О файлах и файловой системе
  • Системные процессы
  • Перенаправление ввода / вывода
  • Текстовые редакторы
  • Дом, милый дом
  • Принтеры и печать
  • Основные методы резервного копирования
  • сети
  • Звук и видео

Скачать

Pdf https://drive.google.com/file/d/0B9__1FPUuF29bGVMMWRKbXdJYmc/view

Azw3 https://drive.google.com/file/d/0B9__1FPUuF29bGZNUFRvamFlRG8/view

epub https://drive. google.com/file/d/0B9__1FPUuF29MlV4bzZoV0hyVEk/view

mobi https://drive.google.com/file/d/0B9__1FPUuF29WjJnUHZqX0lDVkE/view

Разработка Java-приложений на Linux

Эта книга рассказывает исключительно о разработке приложений Java в системе Linux. Она начинается с очень фундаментальной и базовой информации о системе Linux и выводит читателя на продвинутый уровень разработки программного обеспечения Java. Он описывает все наборы инструментов, которые можно использовать для активных проектов разработки, в очень простом и пошаговом руководстве.

Оглавление

  • An Embarrassment of Riches: среда Linux
  • Лучше и быть не может: редакторы
  • Введение в Java опытного программиста
  • Где я? Контекст выполнения
  • Комплект разработки программного обеспечения Sun Microsystems Java
  • IBM Developer Kit для Linux, Java 2 Technology Edition
  • Компилятор GNU для Java (gcj)
  • Знай, что у тебя есть: CVS
  • Ant: Введение
  • Интегрированные среды разработки
  • Акты балансирования: воображаемый сценарий
  • Анализ и дизайн: поиск объектов
  • JUnit: автоматизированное модульное тестирование
  • Хранение данных
  • Доступ к данным: введение в JDBC
  • Вступая в курс дела: разработка графического интерфейса для BudgetPro
  • Другие способы: альтернативы Swing
  • Servlets (Сервлеты): Java в сервисе
  • JSP: сервлеты вывернуты наизнанку
  • Серверы веб-приложений с открытым исходным кодом
  • Введение в Enterprise JavaBeans
  • Создание EJB
  • Развертывание EJB
  • Parting Shots Подводя итоги

pdf https://drive. google.com/file/d/0B9__1FPUuF29TnBEWW9ZQ0Z6TzA/view

azw3 https://drive.google.com/file/d/0B9__1FPUuF29ZUhBekRKbjhud0k/view

epub https://drive.google.com/file/d/0B9__1FPUuF29RmFtWXl4RTlxc2s/view

mobi https://drive.google.com/file/d/0B9__1FPUuF29QUZhTV93OFNNY2c/view

Руководство по Bash для начинающих

В этой книге представлены глубокие знания о bash-скриптах, среде, редакторе потоков GNU sed, языке программирования awk, переменных и так далее.

Оглавление

  • Bash и Bash скрипты
  • Написание и отладка скриптов
  • Среда Bash
  • Регулярные выражения
  • GNU sed stream editor
  • Язык программирования GNU awk
  • Условные заявления
  • Написание интерактивных сценариев
  • Повторяющиеся задачи
  • Подробнее о переменных
  • функции
  • Ловля сигналов

Скачать

PDF https://drive. google.com/file/d/0B9__1FPUuF29Tmhmb19CYVpyM3M/view

AWZ https://drive.google.com/file/d/0B9__1FPUuF29OTJTWEI1cXhoUWs/view

EPUB https://drive.google.com/file/d/0B9__1FPUuF29dGpkZVpsQU5CNDA/view

MOBI https://drive.google.com/file/d/0B0sLslilQKq0MHZiRTM5ZTExdmc/view

Linux

Выполнить команду с аргументом из предыдущей команды

команда !$

Less

Вниз — Page Down

Вверх — Page Up

Поиск вперёд — /

Поиск назад — ?

Следующий результат поиска — n

Выйти — q

О Linux

Linux — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты.

Как и ядро Linux, системы на его основе как правило создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения.

Рабочий стол Ubuntu 20.04

Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, — и имеющих свой набор системных и прикладных компонентов, как свободных, так, возможно, и собственнических.

Появившись как решения вокруг созданного в начале 1990-х годов ядра, уже с начала 2000-х годов системы Linux являются основными для суперкомпьютеров и серверов, расширяется применение их для встраиваемых систем и мобильных устройств, некоторое распространение системы получили и для персональных компьютеров.

За счёт использования свободного программного обеспечения и привлечения волонтёров каждая из систем Linux обладает значительными программными возможностями, трудно реализуемыми в прочих моделях разработки: например, в 2008 году расчёты показывали, что для того, чтобы «с нуля» разработать систему, аналогичную Fedora 9, потребовалось бы затратить $10,8 млрд, а совокупная себестоимость только ядра Linux оценивалась в сумму более $1,4 млрд, притом только за 2008 год она увеличилась на $315 млн, совокупный труд оценён в размере 73 тыс. человеко-лет.

Традиционно системами Linux считаются только те, которые включают в качестве компонентов основные программы проекта GNU, такие как bash, gcc, glibc, coreutils, GNOME и ряд других, в связи с чем часто всё семейство иногда идентифицируется как GNU/Linux, притом существует спор об именовании GNU/Linux.

Существует проект стандартизации внутренней структуры Linux-систем — Linux Standard Base, часть документов которого зарегистрирована в качестве стандартов ISO; но далеко не все системы сертифицируются по нему, и в целом для Linux-систем не существует какой-либо общепризнанной стандартной комплектации или формальных условий включения в семейство.

Однако есть ряд систем на базе ядра Linux, но не имеющих в основе зависимости от программ GNU, которые к Linux-семейству традиционно не относят, в частности таковы мобильные системы Android и FirefoxOS.

Пингвин Tux

Официальным логотипом и талисманом Linux является пингвин Tux, созданный в 1996 году Ларри Юингом.

Торговая марка «Linux» принадлежит создателю и основному разработчику ядра Линусу Торвальдсу.

При этом проект Linux в широком смысле не принадлежит какой-либо организации или частному лицу, вклад в его развитие и распространение осуществляют тысячи независимых разработчиков и компаний, одним из инструментов взаимодействия которых являются группы пользователей Linux.

Существует ряд некоммерческих объединений, ставящих основной целью развитие и продвижение Linux, наиболее крупное и влиятельное из них — основанный в 2007 году The Linux Foundation.

Существует значительный рынок коммерческой технической поддержки Linux-систем, на котором с долей свыше 70 % (2017) доминирует корпорация Red Hat.

Ранняя история

В 1991 году во время обучения в Хельсинкском университете Линус Торвальдс заинтересовался операционными системами и был разочарован лицензией MINIX, которая ограничивала её использование только образовательными целями (что исключало любое коммерческое использование), вследствие чего начал работать над своей собственной операционной системой, которая в итоге стала Linux.

Главное здание университета Хельсинки.
Фото: HeiHei.ru

Торвальдс начал разработку ядра Linux на MINIX, и перенёс на него ряд приложений.

Позже, когда Linux достиг определённой зрелости, появилась возможность продолжать разработку уже на базе самого Linux.

Приложения GNU вскоре заменили приложения MINIX, так как код GNU, находящийся в свободном доступе, был более удобен для применения в молодой операционной системе (исходный код под лицензией GNU GPL может быть использован в других проектах, если они также выпускаются под той же или совместимой лицензией, для того чтобы сделать Linux доступным для коммерческого использования, Торвальдс начал переходить от своей первоначальной лицензии на GNU GPL).

Разработчики работали над полной интеграцией компонентов GNU с Linux с целью создания полнофункциональной и свободной операционной системы (Linux).

Источник — wikipedia

НОУ ИНТУИТ | Операционная система Linux

Форма обучения:

дистанционная

Стоимость самостоятельного обучения:

бесплатно

Доступ:

свободный

Документ об окончании:

Уровень:

Для всех

Длительность:

26:36:00

Студентов:

28565

Выпускников:

5580

Качество курса:

4.27 | 3.93

В курсе даются основные понятия операционной системы Linux и важнейшие навыки работы в ней. Изложение сопровождается большим количеством практических примеров. Данный курс может рассматриваться как учебник для студентов, начинающих обучение по специальностям в области информатики и ещё не знакомых с ОС Linux.

В первой части курса вводятся основные понятия и навыки, необходимые пользователю для того, чтобы начать грамотно работать в Linux. Здесь рассмотрены: пользователи с точки зрения системы, понятие терминал и работа с командной строкой, устройство файловой системы и работа с ней, права доступа в Linux, возможности командной оболочки, текстовые редакторы. Вторая часть посвящена тем понятиям и навыкам, которые требуются для администрирования ОС Linux. Сюда входит обсуждение этапов загрузки системы, технологий работы с внешними устройствами, файловыми системами и сетью в Linux, администрирование системы посредством конфигурационных файлов, управление пакетами. В завершающей лекции курса даётся обзор истории возникновения и развития Linux. Здесь же приведён обзор социального контекста, существенного для понимания ОС Linux и работы в ней: сообщество пользователей, лицензирование свободного программного обеспечения, место свободного ПО на современном рынке, дистрибутивы Linux и решения на базе Linux.

ISBN: 978-5-9556-0029-1

Теги: apt-get, GRUB, hardlink, inittab, jabber, LILO, linux, pppd, VIM, x window, xfree86, виртуальная консоль, интерфейсы, история, каталоги, командная строка, программное обеспечение, протоколы, серверы, утилиты, файловые системы, форматы, электронная почта, ядро

Предварительные курсы

Дополнительные курсы

 

2 часа 30 минут

Сеанс работы в Linux
В лекции описан сеанс работы пользователя в Linux: от регистрации в системе до выхода. Рассмотрено понятие пользователя с точки зрения системы, процедура идентификации пользователя, обоснована многопользовательская модель разграничения доступа. Даются основы работы с интерфейсом командной строки.

Терминал и командная строка
В лекции описываетcя взаимодействие пользователя с системой посредством терминального устройства и интерпретатора командной строки. Даются основные понятия интерфейса командной строки: команда, параметр, разделитель, ключ. Кроме того, описывается устройство подсистем помощи Linux (man и info) и способы их использования.

Структура файловой системы
В лекции разбираются основные понятия файловой системы: файл, каталог, дерево каталогов. Обсуждаются принципы размещения файлов в Linux в соответствии со стандартом FHS, приводится краткий обзор стандартных каталогов файловой системы Linux.

Работа с файловой системой
Лекция посвящена практической работе с объектами файловой системы: перемещению по дереву каталогов, копированию, перемещению и удалению файлов, созданию жестких и символьных ссылок. Подробно разбираются понятия «полный путь» и «относительный путь», текущий каталог, домашний каталог.

Доступ процессов к файлам и каталогам
В лекции описываются понятия процесса в Linux, алгоритм порождения новых процессов и одно из средств межпроцессного взаимодействия – сигналы. Рассматриваются три вида доступа к ресурсам файловой системы – чтение, запись и использование, их различия для файлов и каталогов, а также команды изменения доступа.

Права доступа
В лекции вводится понятие прав доступа как отношение субъектов системы (процессов) к объектам (файлам) и описывается иерархия прав доступа в Linux. Кроме того, описывается механизм подмены идентификатора, позволяющий в некоторых случаях строго ограниченным способом обходить запреты, устанавливаемые правами доступа.

Работа с текстовыми данными
В Linux очень многие задачи использования и администрирования системы сводятся к обработке текстовых данных. В лекции описаны способы эффективной обработки текста при помощи интерфейса командной строки и набора стандартных утилит. Вводятся понятия стандартного ввода/вывода, конвейера. Последний раздел посвящен разбору типичных задач, возникающих в ходе работы с системой, и их решения при помощи стандартных утилит, объединенных в конвейере.

Возможности командной оболочки
В лекции описываются основные возможности, присущие интерпретатору командной строки — главному инструменту пользователя Linux. Рассматриваются работа с командной строкой и шаблонами, использование окружения, а также особенности программирования на shell. Приводятся примеры конфигурационных файлов bash.

Текстовые редакторы
В лекции вводится понятие «текстовый редактор». Задача лекции – познакомить читателя с двумя наиболее развитыми инструментами Linux, предназначенными для редактирования текста и решения смежных с редактированием задач: Vim/Vi и Emacs. В одной лекции невозможно дать подробное описание этих программ, поэтому изложение ограничивается основными принципами работы с этими редакторами, простейшими примерами и перечислением случаев, когда удобно и рационально использовать Vim/Vi и Emacs.

Этапы загрузки системы
В лекции рассматриваются основные этапы загрузки компьютера как до начала работы ядра Linux (системно-независимая часть), так и в процессе загрузки системы (собственно Linux). Подробно разбираются уровни выполнения и стартовые сценарии. Описаны действия, необходимые для остановки системы.

Работа с внешними устройствами
Последняя из лекций, посвященных файловым системам и способам работы с ними. В лекции рассказано о представлении внешних устройств в Linux, формате разбиения жесткого диска на разделы и доступе к ним, командах mount и umount. Описывается несколько типов файловых систем, в том числе виртуальных, и процедура проверки fsck.

Конфигурационные файлы
В лекции операционная система представлена как совокупность трех частей: неизменяемой (реализации), изменяемой (профиля) и наполнения (пользовательских файлов). Выделены характерные для Linux свойства профиля и способы работы с ним. Рассмотрено несколько примеров основных конфигурационных файлов и того, как они задают свойства соответствующих системных служб.

Управление пакетами
Лекция посвящена принципам комплектации системы в Linux: установке, удалению и обновлению программного обеспечения. Разбираются понятия «пакет», «зависимость», приводятся примеры работы с установщиками пакетов и менеджерами пакетов.

Сеть TCP/IP в Linux
В лекции кратко описано семейство протоколов TCP/IP и их реализация в Linux, обосновано разделение сетевых протоколов на уровни и выделены задачи, решаемые на каждом из них. Приведены утилиты Linux для работы с сетью. Кроме того, рассмотрена работа метадемона inetd и структура службы доменных имен в Internet.

Сетевые и серверные возможности
В первой части лекции описана настройка сетевых параметров Linux и даны примеры того, как реализованы постоянные сетевые настройки в некоторых дистрибутивах. Кроме этого, описаны основные системные службы, имеющие отношение к настройке сети: служба автоматической настройки и межсетевой экран. Вторая часть лекции представляет собой краткий обзор основных сетевых служб и описание различных серверов Linux, которые можно использовать для организации таких служб.

Графический интерфейс (X11)
В лекции рассмотрено устройство графического интерфейса в Linux. Обсуждается технология X Window System: протокол X11, X-сервер и X-клиент. Описаны основные X-приложения, функциональность диспетчеров окон и сред рабочего стола, доступных в Linux.

История созданных списков литературы | Список литературы, содержащий слова: «linux

Список литературы

Генератор кроссвордов

Генератор титульных листов

Таблица истинности ONLINE

Прочие ONLINE сервисы

 

Список литературы

1. Red Hat Linux 6.2 (с диском-дистрибутивом русифицированным) / ред. А. Пасечник. — М.: СПб: Питер, 2011. — 560 c.
2. Блам Sendmail for Linux. Система электронной почты на основе Linux / Блам, Ричард; Blum, Richard. — М.: Вильямс, 2017. — 448 c.
3. Болл Red Hat Linux 8/9 Настольная книга пользователя / Болл, Билл и др.. — М.: СПб: ДиаСофт, 2004. — 928 c.
4. Валади, Дж. 100% самоучитель Linux / Дж. Валади. — М.: Технолоджи-3000, 2006. — 336 c.
5. Колисниченко, Д.Н. Linux. Полное руководство / Д.Н. Колисниченко, Аллен, Питер В.. — М.: СПб: Наука и Техника, 2007. — 784 c.
6. Колисниченко, Д.Н. Ubuntu Linux 7.04. Руководство пользователя (+DVD) / Д.Н. Колисниченко. — М.: СПб: Питер, 2008. — 189 c.
7. Кюнель Samba: интеграция Linux/Unix-компьютеров в сети Windows / Кюнель, Йенц. — М.: Мн: Новое знание, 2003. — 399 c.
8. Лебланк Linux для чайников / Лебланк и др. — М.: Диалектика; Издание 4-е, испр. и перераб., 2004. — 336 c.
9. Ляхов Linux для начинающих / Ляхов, Дмитрий. — М.: Бестселлер; Издание 2-е, 2005. — 256 c.
10. Скловская, С.Л. Команды Linux. Справочник / С.Л. Скловская. — М.: СПб: ДиаСофт; Издание 2-е, перераб. и доп., 2002. — 720 c.
11. Старовойтов Настройка аппаратных средств в Linux / Старовойтов, Алексей. — М.: СПб: БХВ, 2006. — 304 c.
12. Фленов, М.Е. Linux глазами хакера / М.Е. Фленов. — М.: БХВ-Петербург, 2008. — 544 c.
13. Хилл Операционная система Ubuntu Linux (+ DVD-ROM) / Хилл, Б. Мако. — М.: Триумф, 2008. — 384 c.
14. Шевель, А. Linix. Обработка текстов. Специальный справочник / А. Шевель. — М.: СПб: Питер, 2010. — 384 c.
15. Шенк, Т. Red Hat Linux для системных администраторов / Т. Шенк, Д. Барбер, Э. Тернер. — К.: DiaSoft, 2011. — 672 c.


Внимание: данные, отмеченные красным цветом, являются недостоверными!

Книги, использованные при создании данного списка литературы:

ред. Пасечник, А.Red Hat Linux 6.2 (с диском-дистрибутивом русифицированным)

Блам, Ричард; Blum, RichardSendmail for Linux. Система электронной почты на основе Linux

Болл, Билл и др.Red Hat Linux 8/9 Настольная книга пользователя

Валади, Дж.100% самоучитель Linux

Колисниченко, Д.Н.; Аллен, Питер В.Linux. Полное руководство

Колисниченко, Д.Н.Ubuntu Linux 7.04. Руководство пользователя (+DVD)

Кюнель, ЙенцSamba: интеграция Linux/Unix-компьютеров в сети Windows

Лебланк, Ди-Анн; Хоуг, Мелани; Бломквист, ЭванLinux для чайников

Ляхов, ДмитрийLinux для начинающих

Скловская, С.Л.Команды Linux. Справочник

Старовойтов, АлексейНастройка аппаратных средств в Linux

Фленов, М.Е.Linux глазами хакера

Хилл, Б. МакоОперационная система Ubuntu Linux (+ DVD-ROM)

Шевель, А.Linix. Обработка текстов. Специальный справочник

Шенк, Т.; Барбер, Д.; Тернер, Э.Red Hat Linux для системных администраторов

В нашем каталоге

Околостуденческое

Основы работы в терминале Linux

Общие сведения о командной оболочке.

Получение подсказок по командам Linux

Общие рекомендации для начинающих работать с командной строкой Linux

Выключение и перезагрузка.

Управление процессами в Linux.

Наиболее часто используемые команды Linux.

Общие сведения о работе в командной оболочке Linux

    Командная строка, оболочка, консоль — эти термины используются для обозначения взаимодействия человека-оператора с операционной системой с применением стандартных устройств ввода-вывода, обеспечивающих ввод команд и получение результатов их выполнения. В операционных системах семейства Linux подобное взаимодействие обеспечивается специальным программным продуктом — оболочкой ( shell ) . Наиболее распространенной из них, является оболочка проекта GNU bash ( Bourne Again SHell ). bash основывается на оболочке Bourne ( sh ) созданной Стефеном Борном и включает в себя свойства множества других оболочек — C ( csh ) , Korn ( ksh ), tc ( tcsh ) . bash была написана Брайаном Фоксом (Brian Fox ) и в настоящее время поддерживается Четом Рейми ( Chet Ramey ).

    Свойства оболочки bash делают ее наиболее универсальным и удобным средством взаимодействия с ОС Linux:

bash обеспечивает редактирование командной строки. Курсор может быть перемещен в любую позицию команды для изменения ее содержания.

bash поддерживает режим истории команд, позволяя отображать и изменять ранее введенные команды. Оболочка bash также имеет несколько переменных, значения которых влияют на сохранение и повторный вызов ранее введенных команд.

bash обеспечивает завершение частично введенных слов для имен переменных, пользователей, хостов, команд и файлов.

bash обеспечивает гибкое управление процессами, позволяя приостанавливать их, перезапускать, переключаться между задачами переднего плана и фоновыми, и даже продолжать выполнение задачи при завершении родительского процесса.

bash позволяет использовать функции и псевдонимы, выполнять арифметические операции и вводить арифметические выражения в качестве команд.

bash позволяет создавать целые наборы последовательно выполняемых команд (сценарии или скрипты) с использованием гибкого и функционального языка программирования данной оболочки.

bash имеет гибкие настройки, обеспечивающие изменение внешнего вида командной строки.

Оболочка bash может выполняться как в интерактивном, так и в неинтерактивном режимах. В первом случае программа bash взаимодействует с пользователем, во втором — используется для выполнения скриптов ( специально подготовленных текстовых файлов с последовательностью команд) .

    Команда оболочки Linux — это строка символов из имени команды и аргументов, разделенных пробелами. Аргументы предоставляют команде дополнительные параметры, определяющие ее поведение. Например, команда
echo 12345
выведет на экран строку символов 12345, введенных в качестве аргумента команды.

Команды, являющиеся частью оболочки называются встроенными. Естественно, они могут отличаться для различных оболочек. Кроме того, в качестве команд используются имена исполняемых файлов. В качестве аргументов, командам передаются ключи или опции, состоящие из тире и одного или нескольких символов. Пример такой команды:

ls -l

ls — команда для отображения информации о файлах.. При вводе без аргументов, эта команда просто отобразит список файлов в текущем каталоге. При вводе с параметром -l — список в длинном формате — с отображением атрибутов, владельцев, даты и времени.

При использовании нескольких ключей, их можно объединить. Ниже приведенные варианты команд идентичны :

ls -l -d

ls -ld

Как получить подсказку по использованию команды Linux

При работе в командной оболочке Linux, в большинстве случаев, можно получить справочную информацию по использованию конкретной команды, введя ее имя с параметром —help:

ls —help — отобразить справку для команды ls. В большинстве случаев, для получения справочной информации, допускается использование ключа -h

ls -h В операционных системах семейства Linux, более подробную справочную информацию можно получить из комплекта документации, известного как man-страницы, поскольку он доступен по команде man. Этот комплект включает в себя 8 разделов, содержащих справочную информацию, которую можно вывести на экран с использованием команды man

Перечень разделов man-страниц:

1 — Команды уровня пользователя.

2 — Системные вызовы. Документация о библиотечных системных вызовах, как open, read, exec и т. п. Данный раздел обычно используется программистами.

3 — Библиотеки. Этот раздел также предназначен для программистов и содержит справочную информацию о библиотеках прикладных программ ( abs, rint и т.п.)

4 и 5 — Форматы системных и пользовательских файлов. Содержит документацию о различных форматах файлов, как например, файл passwd

6 — Игры. Описание игр, поставляемых с установленной системой.

7— Драйверы. Документация к драйверам, как например ip или ipv6

8 — Поддержка системы. Документация с информацией о командах для системного администрирования ( init, fdisk, ifconfig и т.п.).

Примеры:

man 1 ls — отобразить справку для команды ls из первого раздела документации ( в нем хранится информация о командах уровня пользователя ).

На практике, если требуется справка именно о команде, номер раздела опускают. В таком случае, поиск будет выполнен по всем разделам, начиная с первого до совпадения с аргументом, заданным в команде man:

man ls — отобразить справку для команды ls из первого раздела документации, где она будет найдена.

Иногда отсутствие номера раздела в команде man даже предпочтительнее. Например, справка по команде

man 1 init — отобразить справку для команды init из первого раздела документации, завершится сообщением об отсутствии справочной информации, потому, что данная команда относится к командам поддержки системы и информация о ней содержится в 8-м разделе.

Для поиска справочной документации во всех разделах, используется опция -a:

man -a passwd — отобразить справку для аргумента passwd из всех разделов, где она будет найдена: В результате, отобразится справка по команде passwd из первого раздела и описание формата файла паролей passwd из пятого.

В качестве аргумента для строки поиска в команде man можно использовать шаблон:

man -a ip* — отобразить справку для всех параметров, начинающихся с ip из всех разделов справочной документации.

При просмотре справочной документации, отображаемой по команде man используются клавиши:

стрелка вверх/вниз — переход на строку вверх/вниз.

PgUp/PgDown — переход на страницу вверх/вниз.

Enter — переход на строку вниз.

Пробел — переход на страницу вниз

Q — выход из справки.

Также, удобным средством поиска справочной информации являются утилиты apropos и whatis , позволяющие выполнить поиск по ключевому слову в базе данных документации. Первая из них выводит те строки, которые содержат строку поиска в в именах справочных страниц и кратких описаниях, а вторая – показывает однострочные описания справочных страниц, которые имеются в начале каждой страницы. С параметрами по умолчанию команды выдадут различающуюся информацию. Например, команда whatis tar , выдаст информацию имеющую отношение к утилите архивирования tar, а команда apropos tar — выдаст информацию и об утилите tar, и, кроме этого, справочные данные, где строка “tar” является частью слова, например “start”. Использование утилиты apropos на первый взгляд кажется не очень эффективным, однако, это не так. Например, команда apropos net позволит быстро получить краткую справку по сетевым утилитам, присутствующим в данной системе. В данных командах можно использовать параметр -s указывающий номер раздела справочной системы, в котором будет выполняться поиск:

apropos –s 1 net — выполнить поиск только в первом разделе man.

При поиске обе утилиты используют индексные базы данных, которые обновляются с помощью программы mandb ( или традиционной текстовой базы данных, создаваемой программой makewhatis), поэтому поиск выполняется очень быстро. Дополнительные параметры командной строки, используемые apropos и whatis можно получить с помощью команды man .

Общие рекомендации для начинающих работать с командной строкой.

    Работа в командной строке Linux имеет некоторые принципиальные отличия по сравнению с работой в среде Windows.

    Во-первых, не забывайте, что строчные и заглавные буквы для Linux — это разные символы. В операционной системе Windows каталог TEMP и каталог Temp — это один и тот же каталог, в Linux — это два разных. То же самое касается команд, их ключей, имен пользователей ,паролей и т.п.

&nbsp &nbsp Во-вторых, справка по команде с параметром —help и справка из man-страницы различаются. Последняя, как правило, более подробная, с примерами и ссылкой на связанные разделы документации.

В-третьих, доступный список команд и результат их выполнения зависит от ваших прав в системе. Как правило, потенциально опасные для целостности системы команды, и команды, влияющие на работу других пользователей, не доступны обычному пользователю. Полными правами по отношению к системе имеет только один пользователь ( суперпользователь )- root. Обычно, учетная запись данного пользователя используется только для изменения настроек системы, и в большинстве дистрибутивов Linux, после установки системы, нет возможности работать под root‘ом в графической среде, в сеансах удаленного подключения, или даже при локальном входе в систему, как это сделано в Ubuntu . Такой подход позволяет предотвратить разрушение системы при ошибках пользователя, и вполне оправдан, однако существуют случаи, когда без прав root не обойтись. Для получения прав пользователя root ( суперпользователя, superuser ) , которому доступны все возможные команды, используйте команду su. Она позволяет сменить текущего пользователя. Если пользователь не задан, то подразумевается root..

Для выполнения отдельно взятой команды от имени суперпользователя root или другого пользователя используется команда sudo:

sudo ifconfig — выполнить команду ifconfig от имени суперпользователя root

sudo su — Комбинация sudo и su — выполнить команду su от имени суперпользователя root. Данный вариант команды позволяет пользователю перейти в учетную запись root без сохранения текущей пользовательской среды (знак «-«).

Обычно, использование команды sudo предпочтительнее, чем использование su и, при дополнительных настройках системы, позволяет легко отдавать отдельным пользователям только строго необходимые привилегии. Основная часть настроек sudo хранится в файле /etc/sudoers и задает правила, определяющие, какие пользователи, каких компьютеров, какие команды могут выполнять с вводом или без ввода пароля. Администратор системы может даже на какое-то время передать полномочия суперпользователя root любому пользователю, не передавая ему пароль от учетной записи root.

Отдельная статья по настройкам и использованию команды sudo

    Начинающих пользователей Linux обычно пугает работа в командной оболочке из-за необходимости набирать слишком длинные строки команд, имен каталогов или файлов. Однако, очень часто в таком наборе нет необходимости. При работе в среде командной оболочки очень удобно использовать режим подстановки имен с помощью клавиши Tab. Например, для получения списка файлов каталога /home/everyone пользователю необходимо набрать команду

ls /home/everyone

Однако, оболочка позволяет обойтись без полного набора пути. Если после набора ls /h нажать клавишу Tab, то в командной строке будет подставлена недостающая часть имени каталога — ome, и в строке ввода отобразится

ls /home/

Аналогично, не нужно набирать полностью оставшуюся часть пути, а только e и Tab. Если существуют частично совпадающие имена файлов или каталогов, то подстановка выполняется только для общей части имени. Если в каталоге /home имеются подкаталоги everyone1 и everyone2 то после нажатия клавиши Tab выполнится подстановка общей части everyone и на экране отобразится список из возможных вариантов ввода — everyone1 и everyone2. Остается только ввести недостающую часть имени ( 1 или 2 ). Тот же прием используется и при наборе команд. Например, если набрать в качестве команды символ e и нажать Tab то отобразится список всех доступных команд, начинающихся с буквы e, если затем набрать символ c и снова нажать Tab, то будет выставлена подстановка имени до echo, или если есть другие варианты — подстановка общей части и возможные варианты имени.

Как управлять выводом на экран.

&nbsp Для просмотра текста, ушедшего за пределы видимости экрана используются комбинации клавиш SHIFT и PAGE UP или PAGE DOWN (в зависимости от направления просмотра).
Для приостановки вывода на экран — CTRL-S, отмена приостановки — CTRL-Q

&nbspДля вывода большого объема текста на экран в постраничном режиме используется команда less, в цепочке с основной командой. Объясню на примере. Пусть у нас есть текстовый файл mytxt размером на 10 экранов. Для вывода текста на экран (стандартный вывод) можно воспользоваться командой cat имя файла
cat mytxt
После выполнения этой команды вы увидите быстро промелькнувший текст и последний (десятый) экран вывода. Можно, конечно, воспользоваться комбинациями клавиш SHIFT-PAGEDOUN или SHIFT-PAGEUP для просмотра текста, но существует возможеость воспользоваться и командой less.
cat mytxt | less
Символ | означает объединение в цепочку выполнения команды выдачи текста cat и команды управления постраничным выводом less. В результате, после отображения на экране первой страницы текста , вывод будет приостановлен до нажатия
PAGE DOWN
или ENTER (построчное перемещение). Для завершения постраничного вывода нажмите клавишу Q.
&nbsp В цепочки можно объединять несколько команд. Например, вам понадобилось вывести на экран в постраничном режиме все строки, содержащие слово mail. Для поиска можно воспользоваться командой
grep
Итоговая цепочка из трех команд:
cat mytxt | grep mail | less

&nbsp Для большинства дистрибутивов Linux вместо less можно использовать more.

Иногда удобно использовать одновременно несколько терминалов, переключаясь между ними (например, когда необходимо смотреть информацию журнала в одном окне и управлять процессами и настройками в другом).

Для переключения используется комбинация клавиш CTRL — ALT — F1…F6 (от первого терминала до 6-го или далее). Для переключения в графическую оболочку используется одна из комбинаций, которая может отличаться для разных дистрибутивов. Например, CTRL-ALT-F7.

Чтобы запустить еще один графический сервер на этом же компьютере, используйте команду startx 1 — :1. У вас добавится новый графический терминал. Чтобы перейти во второй графический терминал, нажмите Alt+F8., а чтобы вернуться в первый — Alt+F7. Таким образом можно открывать до 64 графических терминалов. (startx 2 — :2 и т.д).

Для завершения сеанса работы в командной оболочке используется команда exit.

    Вы можете создать журнал своей консольной сессии, в котором будет отображено все, что вы вводили с клавиатуры, и все, что выдавалось на экран терминала.
Для этого используется команда

script имя файла журнала

Например:

script /home/user/mysession.log

Чтобы прекратить запись в журнал введите команду exit.

Для просмотра истории ранее введенных команд используются стрелки Вверх/Вниз. При вводе набранной или вызванной из истории команды положение курсора относительно строки ввода значения не имеет.

Кроме того, в домашнем каталоге пользователя, имеется файл истории вводимых команд для данной оболочки, например .bash_history . Для отображения его содержимого на экране можно воспользоваться командой history.

Для просмотра информации в конечной части файлов ( например, журналов ) используется команда tail:

tail /var/log/mrssages — отобразить последние 10 строк ( значение по умолчанию ) из файла журнала /var/log/messages.

tail –n 100 /var/log/mrssages — отобразить последние 100 строк из файла журнала /var/log/messages.


Как перезагрузить или выключить компьютер.

&nbsp Одно и то же действие в Linux очень часто можно выполнить несколькими способами. Стандартно для перезагрузки или выключения компьютера используется shutdown. Команда имеет много опций, позволяющих выполнить перезагрузку в определенное время, быструю перезагрузку без проверки файловой системы, имитировать и отменять уже запущенный (ждущий своего времени) процесс перезагрузки.

Полный список опций можно получить по shutdown —help

Для немедленной перезагрузки (restart) команда будет выглядеть так:
shutdown -r now
&nbsp Для выключения питания (halt):
shutdown -h now

В большинстве дистрибутивов можно использовать короткие команды:
reboot — перезагрузка
halt — выключение

Можно также воспользоваться изменением уровня запуска системы командой init , позволяющей управлять запуском и завершением процессов в системе с использованием скриптов, хранящихся в /etc/inittab. Уровень 0 — выключение, уровень 6 — перезагрузка. Соответственно
для выключения:
init 0

для перезагрузки:
init 6

Команду init можно использовать для изменения уровней запуска системы.
Уровни:
1 — Однопользовательский режим. Доступ разрешен пользователю root.
2 — Многопользовательский режим без поддержки сетевых функций.
3 — С поддержкой сети.
4 — Зарезервировано.
5 — С использованием графической оболочки.

    Если вам нужно завершить графическую оболочку (например, когда инсталляция некоторых приложений требует ее закрытия) введите:

init 3

    Графическая оболочка закроется, и система перейдет на уровень запуска 3. Для возврата на уровень 5 введите:

init 5

    Уровень запуска системы по умолчанию определяется значением initdefault из файла /etc/inittab. Для запуска системы с поддержкой графической оболочки она выглядит так:

id:5:initdefault:

Если 5 заменить на 3, то графическая оболочка при старте системы запускаться не будет.

Все выше сказанное относится к системам инициализации SysV (SystemV), которая много лет использовалась во всех дистрибутивах Linux для загрузки рабочей среды с помощью скриптов init. Однако, начиная с 2012г, наметился постепенный переход на systemd новую систему инициализации, изначально разработанную для дистрибутива Fedora, начиная с Fedora 148 . Попросту говоря, systemd — это демон инициализации других демонов в Linux, пришедший на замену используемому ранее скрипту инициализации (/sbin/init). Главная его особенность — распараллеливание запуска служб в процессе загрузки системы, что позволяет существенно ускорить запуск операционной системы. Реализация systemd значительно отличается не только логикой, но и принципами управления процессом запуска, набором программных модулей и конфигурационных файлов. Файла /etc/initd больше нет, и для определения уровня запуска в systemd используются символические ссылки, например:

— для состояния init 3
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

— для состояния init 5
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target

Команды init N в дистрибутивах с использованием systemd пока поддерживаются, но очевидно, что ее время заканчивается.

Документация systemd для администраторов ( перевод на русский язык, ноябрь 2014г.)


Управление процессами в Linux.
    Посмотреть список процессов в Linux можно с помощью команды ps. Если ее запустить без всяких параметров, то она выдает список процессов, запущенных в текущем сеансе пользователя. Полный список опций можно получить стандартно — выполнив

ps —help

Примеры использования:

  • Список всех процессов, запущенных в системе:
    ps -e — выдаст список процессов с идентификаторами ( PID ) и их именами
    или:
    ps -eF — выдаст тот же список процессов, но с полной строкой запуска
  • список задач, порожденных пользователем user:
    ps -U user
  • список задач, связанных с текущим терминалом:
    ps -T
  • список задач, связанных с терминалом N:
    ps t ttyN
  • Если список задач большой, а нас интересует состояние одной или нескольких задач, можно воспользоваться grep:
    ps -U root | grep ppp — выдать список задач, содержащих «ppp» в имени

        Для получения сведений об использовании ресурсов компьютера можно воспользоваться командой top

    В верхней части окна выводятся суммарные данные о состоянии системы - текущее время, время с момента загрузки системы, число пользователей в системе, число процессов в разных состояниях, данные об использовании процессора и памяти.

    Ниже выводится таблица, характеризующая отдельные процессы. Число строк, отображаемых в этой таблице, определяется размером окна. Содержимое окна обновляется каждые 3 секунды. Нажатие клавиши h выводит справку по командам, которые позволяют изменить формат отображаемых данных и управлять некоторыми параметрами процессов в системе:

  • s или d — изменить интервал обновления окна.
  • z — цветное/черно-белое отображение
  • n или # — количество отображаемых процессов
  • Можно отсортировать список процессов по использованию ресурсов процессора (P), памяти (M), времени выполнения (T) и т.п.

        В среде утилиты top также существуют подкоманды, которые позволяют управлять процессами в интерактивном режиме:

  • k — снять ( kill ) задачу. По этой команде будет запрошен идентификатор процесса ( PID ), после ввода которого, процесс будет завершен.
  • r — изменить текущий приоритет задачи (renice). Как и при выполнении предыдущей команды, будет запрошен PID, и затем, новое значение приоритета (отображается в колонке NI). Диапазон значений приоритетов — от минус 20 (наивысший) до плюс 19. Отрицательные значения и 0 может устанавливать только пользователь root.
        Для выхода из top нажмите q


    Команда kill
        Эти же действия (принудительное завершение процесса и изменение его приоритета) можно выполнить и без команды top.

        Процессы в Linux имеют возможность обмениваться так называемыми «сигналами» с ядром и другими процессами. При получении сигнала процессом, управление передается подпрограмме его обработки или ядру, если такой подпрограммы не существует. В Linux имеется команда kill, которая позволяет послать заданному процессу любой сигнал. Список сигналов можно получить по команде:
    kill -l
    В результате выполнения этой команды вы увидите список номеров и названий сигналов. Для того, чтобы послать определенный сигнал выбранному процессу, нужно ввести:
    kill номер PID выбранного процесса
    Например, нам нужно завершить работу приложения Midnight Commander (mc).

  • Определим идентификатор процесса mc:
    ps -e | grep mc
    Пусть PID= 11597.
  • Посылаем сигнал SIGQUIT (номер 3):
    kill -3 11597
    После чего процесс mc обработает сигнал GIGQUIT и выполнит завершение работы. Однако, если mc «завис», то, естественно, завершиться он не сможет, поскольку подпрограмма обработки сигнала SIGQUIT не получит управления. В таких случаях используется сигнал под номером 9 (SIGKILL), обрабатываемый ядром операционной системы, и принудительно завершающий указанный процесс:
    kill -9 11597

    Если в команде kill номер сигнала не задан, то используется значение SIGKILL, т.е предыдущую команду можно было ввести как kill PID:
    kill 11597

        При завершении процесса завершаются и порожденные им процессы.

        Для завершения процесса по его имени используется команда killall:
    killall mc — завершить процесс, в имени которого есть «mc»
    killall -u user — завершить процессы, порожденные пользователем user


    Изменение приоритетов — команды nice и renice
        Для изменения приоритета процессов используются команды nice и renice. При запуске процесса, его приоритет задается значением родительского процесса, например, терминала xterm или командной оболочки ( shell ) . Команда nice позволяет запустить процесс с приоритетом, равным сумме родительского (например 8) и числа, задаваемого в качестве опции команды nice:
    nice — команда
    nice -4 mc — запустит mc с приоритетом = 8+4=12

    Команда renice используется для изменения приоритета уже запущенного процесса:
    renice -p PID
    renice 4 -p 11597 — установить значение приоритета для процесса mc (PID=11597) равным 4.
    После выполнения, renice выдаст строку результата:
    11597: old priority 12, new priority 4 — старый приоритет 12, новый приоритет 4
    Задание нулевого и отрицательного числа приоритета возможно только с правами root.

    Перечень наиболее часто используемых команд:


    Команды для работы с файлами и каталогами:

    pwd – отобразить путь текущего каталога
    cd – перейти в указанный каталог
    ls – отобразить список файлов каталога, с ключом -l показывает дополнительные сведения о файлах.
    cp – копирование файлов/папок
    mv – перемещение файлов/папок
    mkdir – создать папку
    rm – удалить файлы/папки, с ключом -r удаляет и все вложенные папки, с ключом -f — удаляет открытые файлы или каталоги
    rmdir – удаление пустой папки
    chmod – изменить права доступа к файлу
    chown — сменить владельца файла или каталога
    find — найти файл. Задается исходный путь для поиска и шаблон поиска, find / -name .X* — искать от корневого каталога файлы, содержащие в имени символы .X
    which — отобразить полный путь исполняемого файла, доступного в данной оболочке, например which ifconfig
    touch — изменить временные отметки файла. Удобно использовать для создания пустых файлов – touch myfile создаст пустой файл myfile .

    Системные команды

    Эти команды обычно используется от имени суперпользователя ( с командой sudo ).

    reboot – перезагрузка системы
    poweroff – выключение компьютера
    reset – очищает окно терминала
    passwd – сменить свой пароль, а суперпользователю — поменять пароль любого пользователя
    users — отобразить список пользователей, вошедших в систему.
    yum — установка, удаление или обновление программного обеспечения в дистрибутивах Fedora, RedHat и т.п.
    dpkg — установка, удаление или обновление программного обеспечения в дистрибутивах Debian, Ubuntu и т.п.
    apt-get — установка, удаление или обновление программного обеспечения в дистрибутивах на основе Debian (Ubuntu, Mint и т.п.)

    Управление процессами

    ps – отобразить список текущих активных процессов
    lsof — отобразить список открытых файлов процесса или пользователя
    strace — отобразить список системных вызовов
    last — отобразить историю перезагрузок и регистраций пользователей в системе
    kill – послать сигнал процессу, обычно используется для принудительного завершения работы процесса.
    killall – завершение работы всех процессов, имена которых заданы параметром командной строки
    top – отображение списка текущих процессов и интерактивное управление ими.

    Сетевые команды

    ifconfig – конфигурация сетевых интерфейсов
    route — таблица маршрутизации
    ifup / ifdown — включить /выключить сетевой интерфейс
    ip — просмотр или изменение параметров конфигурации протокола IP
    netstat — отобразить состояние сетевых соединений
    arp, ping, nslookup, traceroute — наиболее часто используемые команды сетевой диагностики.

    Статьи по теме:

    Оболочка пользователя (shell) Linux.

    Перечень наиболее часто используемых команд Linux с примерами.

    Если вы желаете помочь развитию проекта, можете воспользоваться кнопкой «Поделиться» для своей социальной сети

    В начало страницы     |     На главную страницу сайта.

  • Учебное пособие по

    Linux — Шпаргалка

    Эта шпаргалка предназначена для быстрого напоминания основных концепций, связанных с использованием командной строки, и предполагает, что вы уже понимаете их использование. Если вы новичок в командной строке Linux, мы настоятельно рекомендуем вам с самого начала изучить руководство по Linux.

    Щелкните заголовок раздела, чтобы перейти на соответствующую страницу руководства, чтобы узнать больше об этих концепциях.

    [что-то] указывает необязательное значение. <что-то> указывает на обязательное значение.

    В обоих случаях окружающие символы [или <не должны включаться при замене значения в.

    Базовая навигация
    pwd
    Где я в системе.
    ls [путь]
    Выполнить перечисление данного пути или вашего текущего каталога.
    Общие параметры: -l, -h, -a
    cd [путь]
    Перейдите по указанному пути или в ваш домашний каталог.
    Путь
    Описание того, где находится файл или каталог в файловой системе.
    Абсолютный путь
    Один, начиная с корня файловой системы (например, / etc / sysconfig).
    Относительный путь
    Один относительно того, где вы в настоящее время находитесь в системе (например, документы / музыка).
    ~ (тильда)
    Используется в путях как ссылка на ваш домашний каталог (например,~ / Документы).
    . (точка)
    Используется в путях как ссылка на ваш текущий каталог (например ./bin).
    .. (точка)
    Используется в путях как ссылка на родительский каталог текущего каталога (например, ../bin).
    Завершение вкладки
    Начните печатать и нажмите TAB. Система автоматически завершит путь. Дважды нажмите TAB, и он покажет вам ваши альтернативы.
    Подробнее о файлах
    файл [путь]
    Узнайте, к какому типу относится файл или каталог.
    Пробелы в именах
    Поместите весь путь в кавычки («) или обратную косую черту (\) перед пробелами.
    Скрытые файлы и каталоги
    Имя, начинающееся с. (точка) считается скрытым.
    Страницы руководства
    человек <команда>
    Просмотрите страницу руководства для команды.
    man -k <поисковый запрос>
    Искать страницы руководства, содержащие поисковый запрос.
    Нажмите q для выхода из справочных страниц
    Манипуляции с файлами
    mkdir <имя каталога>
    Создать каталог
    rmdir <имя каталога>
    Удалить каталог (только если он пуст).
    коснитесь <имя файла>
    Создайте пустой файл.
    cp <источник> <назначение>
    Скопируйте исходный файл в место назначения.
    mv <источник> <назначение>
    Переместите исходный файл в место назначения.
    Может также использоваться для переименования файлов или каталогов.
    rm <путь>
    Удалить файл или каталог.
    Общие параметры: -r -f
    Подстановочные знаки
    Можно использовать где угодно и где угодно.
    *
    Ноль или более символов (например,б *).
    ?
    Одиночный символ (например, файл. ???).
    []
    Диапазон (например, b [aio] t).
    Разрешения
    r (чтение) w (запись) x (выполнение)
    Владелец или пользователь, группа и другие лица
    ls -l [путь]
    Просмотр разрешений файла или всех элементов в каталоге.
    chmod <разрешения> <путь>
    Изменить разрешения.Разрешения могут быть сокращенными (например, 754) или длинными (например, g + x).
    Фильтры
    голова
    Показать первые n строк.
    хвост
    Показать последние n строк.
    сорт
    Сортировка строк заданным способом.
    туалет
    Сколько слов, знаков и строк.
    grep
    Поиск заданного шаблона.
    См. Дополнительную информацию в нашей шпаргалке по Grep
    Больше фильтров можно найти здесь.
    Трубопровод и перенаправление
    >
    Перенаправить STDOUT в файл.
    >>
    Добавить STDOUT в конец файла.
    2>
    Перенаправить STDERR в файл.
    <
    Передать содержимое файла программе как STDIN.
    |
    Подайте STDOUT программы слева как STDIN программе справа.
    Управление процессами
    CTRL + C
    Отменить текущий запущенный процесс.
    kill <идентификатор процесса>
    Отменить данный процесс.
    Включите опцию -9, чтобы убить упорный процесс.
    л.с.
    Получить список процессов и их идентификаторов.
    Включение опции aux покажет все процессы.
    CTRL + Z
    Приостановить текущий запущенный процесс и перевести его в фоновый режим.
    вакансий
    Просмотреть список текущих процессов в фоновом режиме.
    fg <номер работы>
    Переместить данный процесс с заднего на передний план.
    Полезные команды
    дю-ш./ *
    Найдите размер каждого каталога в вашем текущем каталоге.
    df -h
    Показать, сколько места на диске используется, а также сколько свободного места.
    basename -s .jpg -a * .jpg | xargs -n1 -i cp {} .jpg {} _original.jpg
    Сделайте копию каждого файла изображения jpg в текущем каталоге и переименуйте, добавив _original.
    найти / домой -mtime -1
    Найти все файлы в данном каталоге (и подкаталогах), которые были изменены за последние 24 часа.
    выключение -ч сейчас
    Выключите систему. (Замените -h на -r для перезагрузки.)

    Управление терминалом с помощью команд компакт-диска

    Наиболее частые задачи, которые вы выполняете на своем ПК, — это создание, перемещение или удаление файлов. Давайте посмотрим на различные варианты управления файлами.

    Для управления файлами вы можете использовать терминал

    1. (интерфейс командной строки — CLI)
    2. Диспетчер файлов (графический интерфейс пользователя)

    В этом руководстве вы узнаете:


    Нажмите вот если видео недоступно

    Зачем изучать интерфейс командной строки?

    Несмотря на то, что мир движется к системам на основе графического интерфейса пользователя, интерфейс командной строки имеет свое специфическое применение и широко используется для создания сценариев и администрирования серверов.Давайте посмотрим на некоторые убедительные примеры использования —
    • Для сравнения, команды предлагают больше возможностей и гибки. Трубопровод и stdin / stdout чрезвычайно мощны, недоступны в графическом интерфейсе пользователя
    • Некоторые конфигурации в графическом интерфейсе пользователя занимают до 5 экранов, в то время как в интерфейсе командной строки это всего лишь одна команда
    • Перемещение, переименование тысяч файлов в графическом интерфейсе потребует много времени (Используя Control / Shift для выбора нескольких файлов), в то время как в CLI, используя регулярные выражения, можно выполнять ту же задачу с помощью одной команды.
    • Интерфейс командной строки загружается быстрее и не потребляет оперативную память по сравнению с графическим интерфейсом. В сценариях кризиса это имеет значение.

    И графический интерфейс, и интерфейс командной строки имеют свое конкретное применение. Например, в графическом интерфейсе пользователя, графики мониторинга производительности дают мгновенную визуальную обратную связь о состоянии системы, в то время как просмотр сотен строк журналов в интерфейсе командной строки вызывает утомление.

    Вы должны научиться использовать как графический интерфейс (файловый менеджер), так и интерфейс командной строки (терминал).

    Графический интерфейс операционной системы на базе Linux аналогичен графическому интерфейсу любой другой ОС.Следовательно, мы сосредоточимся на CLI и изучим некоторые полезные команды.

    Запуск интерфейса командной строки в Ubuntu

    Есть два способа запустить терминал.

    1) Перейдите в Dash и введите terminal

    2) Или вы можете нажать CTRL + Alt + T , чтобы запустить Терминал

    После того, как вы запустите CLI (Терминал), вы найдете что-то вроде guru99 @ VirtualBox ( см. изображение) написано на нем.

    1) Первая часть этой строки — это имя пользователя (bob, tom, ubuntu, home…)

    2) Вторая часть — это имя компьютера или имя хоста. Имя хоста помогает идентифицировать компьютер в сети. В серверной среде имя хоста становится важным.

    3) ‘:’ — простой разделитель

    4) Знак тильды ‘~’ показывает, что пользователь работает в домашнем каталоге . Если вы смените каталог, этот знак исчезнет.

    На приведенной выше иллюстрации мы переместились из каталога / home в / bin с помощью команды ‘cd’ .Знак ~ не отображается при работе в каталоге / bin. Он появляется при возврате в домашний каталог.

    5) Знак «$» означает, что вы работаете в Linux как обычный пользователь. При работе от имени пользователя root отображается ‘#’.

    Текущий рабочий каталог

    Каталог, который вы в настоящее время просматриваете, называется текущим рабочим каталогом. Вы входите в домашний каталог при загрузке компьютера. Если вы хотите определить каталог, над которым вы сейчас работаете, используйте команду —

     pwd 

    Команда pwd означает p rint w orking d irectory

    На рисунке выше показано, что / home / guru99 является каталог, над которым мы сейчас работаем.

    Изменение каталогов

    Если вы хотите изменить текущий каталог, используйте команду « cd ».

     кд / темп 

    Рассмотрим следующий пример.

    Здесь мы перешли из каталога / tmp в / bin в / usr, а затем обратно в / tmp.

    Переход в домашний каталог

    Если вы хотите перейти в домашний каталог, введите cd .

     cd 

    Вы также можете использовать команду cd ~ .

     cd ~ 

    Переход в корневой каталог

    Корень файловой системы в Linux обозначается символом ‘/’. Аналогично «c: \» в Windows.

    Примечание. В Windows используется обратная косая черта «\», а в UNIX / Linux — прямая косая черта «/»

    Введите «cd /» для перехода в корневой каталог.

     cd / 

    СОВЕТ : Не забывайте промежуток между cd и /. В противном случае вы получите ошибку.

    Навигация по нескольким каталогам

    Вы можете перемещаться по нескольким каталогам одновременно, указав полный путь к ним.

    Пример: Если вы хотите переместить каталог / cpu в / dev, нам не нужно разбивать эту операцию на две части.

    Вместо этого мы можем набрать ‘/ dev / cpu’ для прямого доступа к каталогу.

     cd / dev / cpu 

    Переход на один уровень каталогов

    Для перехода на один уровень каталогов попробуйте.

     cd .. 

    Здесь с помощью команды ‘cd ..’ мы переместились на один каталог вверх с ‘/ dev / cpu’ в ‘/ dev’.

    Затем, снова используя ту же команду, мы перешли из ‘/ dev’ в корневой каталог ‘/’.

    Относительный и абсолютный пути

    Путь в вычислениях — это адрес файла или папки.

    Пример — В Windows

     C: \ documentsandsettings \ user \ downloads 
    В Linux
     / home / user / downloads 

    Есть два вида путей:

    1. Абсолютный путь:

    Скажем вам необходимо просмотреть изображения, хранящиеся в каталоге изображений домашней папки guru99.

    Абсолютный путь к файлу каталога изображений / home / guru99 / Pictures

    Для перехода в этот каталог вы можете использовать команду.

     cd / home / guru99 / Pictures 

    Это называется абсолютным путем, поскольку вы указываете полный путь для доступа к файлу.

    2. Относительный путь:

    Относительный путь удобен, когда вам нужно просмотреть другой подкаталог в данном каталоге.

    Это избавляет вас от необходимости постоянно вводить полные пути.

    Предположим, вы находитесь в своем домашнем каталоге. Вы хотите перейти в каталог загрузок.

    Вам не нужно вводить абсолютный путь

     cd / home / guru99 / Downloads 

    Вместо этого вы можете просто ввести ‘cd Downloads’ , и вы перейдете в каталог загрузок, поскольку вы уже присутствуете в ‘/ home / guru99’ Каталог .

     cd Загрузки 

    Таким образом, вам не нужно указывать полный путь для достижения определенного места в том же каталоге в файловой системе.

    Описание:

    • Для управления файлами вы можете использовать графический интерфейс (диспетчер файлов) или интерфейс командной строки (терминал) в Linux. У обоих есть свои относительные преимущества. В этой серии руководств мы сосредоточимся на интерфейсе командной строки, также известном как Терминал
    • Вы можете запустить терминал с панели управления или использовать комбинацию клавиш Cntrl + Alt + T
    • Команда pwd предоставляет текущий рабочий каталог.
    • Вы можете использовать команду cd для изменения каталогов
    • Абсолютный путь — это полный адрес файла или каталога
    • Относительный путь — это относительное расположение файла в каталоге относительно текущего каталога
    • Относительный путь помогает избежать ввода полных путей все время.

    Командная строка Linux для начинающих

    В этом разделе мы собираемся создать несколько реальных файлов для работы. Чтобы избежать случайного захвата любых ваших реальных файлов, мы собираемся начать с создания нового каталога, вдали от вашей домашней папки, который будет служить более безопасной средой для экспериментов:

      mkdir / tmp / tutorial
    cd / tmp / учебник
      

    Обратите внимание на использование абсолютного пути, чтобы убедиться, что мы создаем каталог tutorial внутри / tmp .Без косой черты в начале команда mkdir попытается найти каталог tmp внутри текущего рабочего каталога, а затем попытается создать внутри него каталог tutorial . Если он не сможет найти каталог tmp , команда завершится ошибкой.

    Если вы не догадались, mkdir — это сокращение от « m a k e dir ectory». Теперь, когда мы в безопасности в нашей тестовой области (дважды проверьте с помощью pwd , если вы не уверены), давайте создадим несколько подкаталогов:

      mkdir dir1 dir2 dir3
      

    Эта команда немного отличается.До сих пор мы видели только команды, которые работают сами по себе ( cd , pwd ) или имеют один элемент после ( cd / , cd ~ / Desktop ). Но на этот раз мы добавили три вещи после команды mkdir . Эти вещи называются параметрами или аргументами , и разные команды могут принимать разное количество аргументов. Команда mkdir ожидает по крайней мере один аргумент, тогда как команда cd может работать с нулем или единицей, но не более.Посмотрите, что произойдет, если вы попытаетесь передать команде неправильное количество параметров:

      mkdir
    cd / etc ~ / Рабочий стол
      

    Вернуться в наши новые каталоги. Приведенная выше команда создаст три новых подкаталога внутри нашей папки. Давайте посмотрим на них с помощью команды ls ( l i s t):

      ls
      

    Если вы выполнили несколько последних команд, ваш терминал должен выглядеть примерно так:

    Обратите внимание, что mkdir создал все папки в одном каталоге. не создавал dir3 внутри dir2 внутри dir1 или любую другую вложенную структуру. Но иногда бывает удобно сделать именно это, и у mkdir есть способ:

      mkdir -p dir4 / dir5 / dir6
    ls
      

    На этот раз вы увидите, что только dir4 был добавлен в список, потому что dir5 находится внутри него, а dir6 находится внутри него.Позже мы установим полезный инструмент для визуализации структуры, но у вас уже есть достаточно знаний, чтобы это подтвердить:

      cd dir4
    ls
    cd dir5
    ls
    CD ../..
      

    Используемый нами «-p» называется опцией или переключателем (в данном случае это означает «также создать каталоги p arent»). Параметры используются для изменения способа работы команды, позволяя одной команде вести себя по-разному.К сожалению, из-за причуд истории и человеческой природы параметры могут принимать разные формы в разных командах. Вы часто будете видеть их как отдельные символы, которым предшествует дефис (как в этом случае), или как более длинные слова, которым предшествуют два дефиса. Односимвольная форма позволяет комбинировать несколько параметров, хотя не все команды допускают это. И что еще больше запутывает ситуацию, некоторые команды вообще не идентифицируют свои параметры четко, независимо от того, является ли что-то опцией, определяется исключительно порядком аргументов! Вам не нужно беспокоиться обо всех возможностях, просто знайте, что варианты существуют, и они могут принимать разные формы.Например, все следующие слова означают одно и то же:

      # Не вводите их, они здесь только для демонстрационных целей.
    mkdir --parents --verbose dir4 / dir5
    mkdir -p --verbose dir4 / dir5
    mkdir -p -v каталог4 / каталог5
    mkdir -pv dir4 / dir5
      

    Теперь мы знаем, как создать несколько каталогов, просто передав их в качестве отдельных аргументов команде mkdir . Но предположим, что мы хотим создать каталог с пробелом в имени? Давайте попробуем:

      mkdir другая папка
    ls
      

    Вам, вероятно, даже не нужно было вводить ее, чтобы угадать, что произойдет: две новые папки, одна называется , другая , а третья — папка .Если вы хотите работать с пробелами в именах каталогов или файлов, вам нужно экранировать их. Не волнуйтесь, из тюрьмы никто не вырвется; экранирование — это вычислительный термин, который относится к использованию специальных кодов, чтобы указать компьютеру обрабатывать определенные символы иначе, чем обычно. Введите следующие команды, чтобы опробовать различные способы создания папок с пробелами в имени:

      mkdir "папка 1"
    mkdir 'папка 2'
    папка mkdir \ 3
    mkdir "папка 4" "папка 5"
    mkdir -p "папка 6" / "папка 7"
    ls
      

    Хотя командная строка может использоваться для работы с файлами и папками с пробелами в их именах, необходимость экранировать их кавычками или обратной косой чертой немного усложняет задачу.Часто можно сказать человеку, который использует командную строку, просто по именам файлов: они, как правило, используют буквы и цифры и используют символы подчеркивания («_») или дефисы («-») вместо пробелов.

    Создание файлов с использованием перенаправления

    Наша демонстрационная папка начинает наполняться каталогами, но в них не хватает файлов. Давайте исправим это, перенаправив вывод команды так, чтобы он не выводился на экран, а попал в новый файл. Во-первых, напомните себе, что сейчас показывает команда ls :

      ls
      

    Предположим, мы хотим записать вывод этой команды в виде текстового файла, который мы можем просматривать или обрабатывать дальше.Все, что нам нужно сделать, это добавить символ «больше» («>») в конец нашей командной строки, за которым следует имя файла для записи:

      ls> output.txt
      

    На этот раз на экран ничего не выводится, потому что вместо этого вывод перенаправляется в наш файл. Если вы просто запустите ls самостоятельно, вы увидите, что был создан файл output.txt . Мы можем использовать команду cat , чтобы посмотреть ее содержимое:

      cat output.текст
      

    Хорошо, значит, это не точно то, что отображалось на экране ранее, но оно содержит все те же данные и в более удобном формате для дальнейшей обработки. Давайте посмотрим на другую команду, echo :

      echo "Это тест"
      

    Да, echo просто снова выводит свои аргументы (отсюда и название). Но совместите это с переадресацией, и вы получите способ легко создавать небольшие тестовые файлы:

      echo "This is a test"> test_1.текст
    echo "Это второй тест"> test_2.txt
    echo "Это третий тест"> test_3.txt
    ls
      

    Вы должны cat каждый из этих файлов, чтобы проверить их содержимое. Но cat — это больше, чем просто программа для просмотра файлов — его название происходит от «con cat enate», что означает «связывать вместе». Если вы передадите более одного файла в cat , он выведет каждое из них, одно за другим, в виде одного блока текста:

      cat test_1.txt test_2.txt test_3.текст
      

    Если вы хотите передать несколько имен файлов одной команде, есть несколько полезных ярлыков, которые могут сэкономить вам много времени при вводе, если файлы имеют похожие имена. Вопросительный знак («?») Может использоваться для обозначения «любого отдельного символа» в имени файла. Звездочка («*») может использоваться для обозначения «нуля или более символов». Иногда их называют «подстановочными знаками». Несколько примеров могут помочь, все следующие команды делают одно и то же:

      cat test_1.txt test_2.txt test_3.txt
    cat test _ ?. txt
    кошка test_ *
      

    Требуется больше экранирования
    Как вы могли догадаться, эта возможность также означает, что вам нужно экранировать имена файлов с помощью? или символы * в них тоже. Обычно лучше избегать любых знаков препинания в именах файлов, если вы хотите управлять ими из командной строки.

    Если вы посмотрите на вывод команды ls , вы заметите, что единственные файлы или папки, начинающиеся с буквы «t», — это три тестовых файла, которые мы только что создали, так что вы можете даже упростить эту последнюю команду до cat t * , что означает «объединить все файлы, имена которых начинаются с t и за которыми следует ноль или более других символов».Давайте воспользуемся этой возможностью, чтобы объединить все наши файлы в один новый файл, а затем просмотрим его:

      cat t *> Commander.txt
    кот комбинированный.txt
      

    Как вы думаете, что произойдет, если мы выполним эти две команды во второй раз? Будет ли компьютер жаловаться, потому что файл уже существует? Добавит ли он текст в файл, чтобы он содержал две копии? Или полностью заменит? Попробуйте посмотреть, что произойдет, но чтобы не вводить команды снова, вы можете использовать клавиши со стрелкой вверх, и со стрелкой вниз, , чтобы перемещаться вперед и назад по истории команд, которые вы использовали.Нажмите Стрелка вверх пару раз, чтобы перейти к первому cat и нажмите Введите , чтобы запустить его, затем повторите то же самое еще раз, чтобы перейти ко второму.

    Как видите, файл выглядит так же. Это не потому, что его оставили нетронутым, а потому, что оболочка очищает все содержимое файла перед записью в него вывода вашей команды cat . По этой причине следует проявлять особую осторожность при использовании перенаправления, чтобы случайно не перезаписать нужный файл.Если вы хотите добавить, а не заменить содержимое файлов, удвойте знак «больше»:

      cat t * >> Commander.txt
    echo "Я добавил строку!" >> Combined.txt
    кот комбинированный.txt
      

    Повторите первый cat еще несколько раз, используя для удобства Стрелку вверх и, возможно, добавьте еще несколько произвольных команд echo , пока ваш текстовый документ не станет настолько большим, что он не поместится полностью. терминал сразу, когда вы используете cat для его отображения.Чтобы увидеть весь файл, нам теперь нужно использовать другую программу, которая называется пейджером (потому что он отображает ваш файл по одной «странице»). Старый стандартный пейджер назывался или , потому что он помещал строку текста внизу каждой страницы с надписью «-More-», чтобы указать, что вы еще не прочитали все. В наши дни есть гораздо лучший пейджер, который вы должны использовать вместо этого: поскольку он заменяет на , программисты решили назвать его минус .

      без учета Commander.txt
      

    При просмотре файла через минус вы можете использовать клавиши Стрелка вверх , Стрелка вниз , Page Up , Page Down , Home и End для перемещения по файлу. Попробуйте увидеть разницу между ними. По окончании просмотра файла нажмите q q uit минус и вернитесь в командную строку.

    Примечание о регистре

    Системы Unix чувствительны к регистру, то есть они учитывают «A.txt »и« a.txt »как два разных файла. Если бы вы запустили следующие строки, вы бы получили три файла:

      echo "Нижний регистр"> a.txt
    echo "Верхний регистр"> A.TXT
    echo "Смешанный регистр"> A.txt
      

    Как правило, следует избегать создания файлов и папок, имена которых зависят только от регистра. Это не только поможет избежать путаницы, но и предотвратит проблемы при работе с разными операционными системами. Windows, например, нечувствительна к регистру , поэтому она будет рассматривать все три имени файла, указанные выше, как один файл, что может вызвать потерю данных или другие проблемы.

    У вас может возникнуть соблазн просто нажать клавишу Caps Lock и использовать заглавные буквы для всех имен файлов. Но подавляющее большинство команд оболочки пишутся в нижнем регистре, поэтому вам часто придется включать и выключать его по мере ввода. Большинство опытных пользователей командной строки, как правило, в основном придерживаются строчных имен для своих файлов и каталогов, чтобы им редко приходилось беспокоиться о конфликтах имен файлов или о том, какой регистр использовать для каждой буквы в имени.

    Хорошая практика именования
    Если вы учитываете как чувствительность к регистру, так и экранирование, хорошее практическое правило — использовать в именах файлов только строчные буквы, только буквы, цифры, подчеркивания и дефисы.Для файлов обычно также есть точка и несколько символов в конце, чтобы указать тип файла (называемое «расширением файла»). Это руководство может показаться ограничительным, но если вы в конечном итоге будете использовать командную строку с какой-либо частотой, вы будете рады, что придерживались этого шаблона.

    Лучшие учебники по Linux

    Linux — это имя, которое в широком смысле обозначает семейство бесплатных и открытых программных дистрибутивов операционных систем, построенных на основе ядра Linux.

    Ядро Linux, ядро ​​операционной системы, которое используют все дистрибутивы Linux, было впервые выпущено 17 сентября 1991 года компанией Linux Torvalds.

    Многие дистрибутивы Linux используют слово «Linux» в своем названии. Фонд свободного программного обеспечения использует название GNU / Linux для обозначения семейства операционных систем, а также конкретных дистрибутивов, чтобы подчеркнуть, что большинство дистрибутивов Linux являются не только ядром Linux, и что у них есть общее не только ядро, но и многочисленные утилиты и библиотеки, большая часть которых принадлежит проекту GNU.

    Разработка Linux — один из самых ярких примеров сотрудничества в области бесплатного программного обеспечения с открытым исходным кодом. Базовый исходный код может использоваться, изменяться и распространяться в коммерческих или некоммерческих целях любым лицом в соответствии с условиями соответствующих лицензий, таких как Стандартная общественная лицензия GNU.

    Linux сначала был запущен как клон операционной системы MINIX. Участники с открытым исходным кодом добавили ядро ​​и расширили его совместимость с оборудованием. Аппаратная поддержка Linux и бесплатное лицензирование сделали Linux популярным выбором для настольных и серверных вычислений в середине 90-х годов.Сегодня Linux — самая популярная операционная система в мире. Он поддерживает 90% серверов в мире и является основой популярной операционной системы Android от Google.

    Существует также множество версий Linux, предназначенных для работы на персональных компьютерах, таких как Debian или Ubuntu. Что еще более важно, эти различные версии Linux (называемые дистрибутивами) позволяют пользователю различную степень персонализации и контроля над операционной системой. Это означает, что пользователи могут выбирать свои дистрибутивы Linux в зависимости от своих желаний и потребностей.

    Существует также Kali Linux, который используется для расширенного тестирования и аудита на проникновение. В нем более 700 инструментов, и для того, чтобы использовать его эффективно, вам необходимо знать, как использовать командную строку. Не рекомендуется для новичков.

    Популярные дистрибутивы Linux включают:

    • Ubuntu
    • Linux Mint
    • CentOS
    • RHEL
    • Arch Linux

    Типы пакетов разделены между дистрибутивами более высокого уровня, с Debian (.deb) и Red Hat (.rpm) являются двумя наиболее часто используемыми. Однако есть и другие, включая Pacman (используется для Arch Linux) и PetGet (Puppy Linux).

    Дистрибутивы Linux также бывают всех форм и размеров, и большинство, если не все, предлагают возможность запуска напрямую через CD / DVD в так называемой среде «Live CD» или даже напрямую через USB, если ваша материнская плата поддерживает загрузку с USB.

    Чтобы узнать больше о Linux, прочитайте статью основателя freeCodeCamp Куинси Ларсона Linux is 25.Ура! Давайте отметим 25 интересных фактов о Linux.

    Некоторые из лучших учебных пособий по Linux

    Вы можете посмотреть этот ускоренный курс командной строки, который охватывает многие из наиболее распространенных команд.

    Или учебник Briana’s Bash, который охватывает широкий спектр инструментов и команд командной строки.

    Некоторые преимущества Linux

    Постоянные и эффективные улучшения.

    Обновления Linux происходят благодаря глобальному сотрудничеству разработчиков. С помощью этого типа поддержки ошибки документируются и решаются намного быстрее.Кроме того, поскольку разработчики также являются конечными пользователями, у них есть надлежащая мотивация, чтобы убедиться, что он соответствует потребностям пользователя и разработан для правильной работы.

    Меньше риска.

    Качество программного обеспечения зависит от предоставляемой поддержки. Представьте себе: часть программного обеспечения создается компанией XYZ, а позже в будущем они обанкротятся или будут куплены другой компанией, которая решит сократить свою поддержку. Программное обеспечение никогда не получит улучшений или исправлений, и поэтому его полезность неизбежно исчезнет.

    Linux не принадлежит и не управляется ни одной организацией или компанией, поэтому такой ситуации не может быть. Более того, каждый волен взять его в руки и внести свой вклад. Риск потерять поддержку Linux очень маловероятен из-за его огромной популярности и использования.

    Легкий.

    Требования Linux для работы в системе намного ниже, чем у Windows или Mac. С правильным дистрибутивом Linux пользователь может иметь скромные настройки, и Linux предоставит системное значение.Дисковое пространство и объем памяти также могут быть меньше. Некоторые дистрибутивы подходят для процессоров, относящихся к семейству Pentium, другие требуют всего 128 МБ ОЗУ и примерно столько же места на диске!

    Сильно задокументировано как для начинающих, так и для опытных пользователей.

    Linux имеет активное сообщество тех, кто желает поделиться своими знаниями и помочь (как и FreeCodeCamp!). В Linux есть встроенные утилиты командной строки, которые предоставляют документацию по командам, библиотекам, стандартам и т. Д.(Страницы руководства и страницы информации), и в Интернете доступна документация в различных форматах, включая The Linux Documentation Project, LinuxQuestions, ServerFault и Arch Wiki.

    Помимо документации, существует множество полезных и приветливых сообществ, где новички могут задавать вопросы, такие как Ask Ubuntu и r / linuxquestions от Reddit.

    Существуют индивидуальные сертификаты, признанные в ИТ-индустрии (тесты CompTIA Linux + и LPI LPIC).Хотя это и не обязательно, изучение C дает пользователю возможность просматривать код Linux, чтобы увидеть, что они запускают.

    Деловая поддержка.

    Мир зависит от поддержки критически важных систем Linux, поэтому спрос никуда не денется. Это важно не только для тех, кто способствует развитию Linux, но и для тех, кто поддерживает его (Джобс!). Поддержка Linux становится все более важной для ИТ, но наличие этих знаний в качестве разработчика сделает их более универсальными и полезными (например, разработчиков полного стека).

    Взаимодействие с другими операционными системами.

    Linux имеет поддержку драйверов для файловых систем NTFS и HFS + (используемых в Windows и Mac), а также Samba для поддержки файловых служб / служб печати на компьютерах с Windows.

    Улучшенная поддержка оборудования.

    Для других ОС обычно пользователю необходимо перейти на веб-сайт производителя, чтобы получить поддержку драйверов для различных типов оборудования. Ядро Linux поддерживает большую часть оборудования автоматически через plug-and-play (отчасти благодаря сообществу открытого исходного кода).Некоторые производители также разрабатывают версии своих проприетарных драйверов для Linux, которые можно легко установить через программный репозиторий дистрибутива или вручную установить предоставленные двоичные файлы.

    Доступность / совместимость программного обеспечения.

    Linux имеет богатый набор доступных приложений. В нем есть офисные приложения, веб-браузеры (Google Chrome и Mozilla Firefox), медиаплееры, обработка изображений / видео и т. Д. Для видеоигр Steam работает под управлением Linux, в котором есть много поддерживаемых игр.Приложения Windows также могут работать в Linux (подробности см. В Wine).

    Создан для разработки.

    Поскольку Linux изначально создавался разработчиками для разработчиков, они потратили много времени и усилий на совершенствование инструментов, которые они собирались использовать.

    Он имеет мощную оболочку, которая может использоваться для множества задач как программирования, так и администрирования (Bash является наиболее популярным выбором по умолчанию для Linux).

    Хотя Linux имеет аналог «блокнота» в gedit, он также предоставляет более мощные и настраиваемые текстовые редакторы, такие как Vim и Emacs (рекомендуется, чтобы пользователи Linux знали хотя бы один из этих редакторов).

    Также доступны IDE для веб-разработки, такие как Atom, Aptana / Eclipse, Sublime, KomodoIDE и многие другие. Linux также может использовать программное обеспечение, такое как Apache, для настройки локального веб-сервера для тестирования, Git для контроля версий и другие инструменты / языки, такие как Node.js / Ruby / SaSS / Heroku, все они поддерживают Linux и имеют инструменты командной строки, которые могут использоваться вместо графического интерфейса.

    Настраиваемый.

    Linux позволяет пользователям изменять дизайн и темы рабочего стола, добавлять виджеты и многое другое.Эти изменения можно сделать с помощью окружения рабочего стола. Разные среды имеют разный набор опций. Некоторые популярные: KDE, GNOME, XFCE, Pantheon.

    Это бесплатно.

    Трудно превзойти это!

    Начало работы с Linux

    Выбор дистрибутива

    В настоящее время существуют различные типы дистрибутивов Linux, и выбор одного из них является серьезной проблемой в мире Linux. Принимая во внимание простые в использовании ОС, лучшими собаками в этой категории являются:

    • Ubuntu — производная от стабильной системы Debian, Ubuntu процветает в простой в использовании и современной среде.
    • Mint — Основанная на Ubuntu и Debian, эта ОС имеет замечательные функции, такие как совместимость с PPA Ubuntu и менеджер пакетов apt. Базовый дистрибутив mint напоминает вам Windows, что может быть хорошей характеристикой для пользователей, работающих с Windows.
    • Trisquel — Дистрибутив, производный от Ubuntu, ориентированный на использование только полностью бесплатного программного обеспечения, избегая проприетарного программного обеспечения. Trisquel одобрен Фондом свободного программного обеспечения (FSF).

    Установка

    Большинство дистрибутивов Linux чрезвычайно легко установить, так как вся информация отображается между каждым шагом установки.

    Один из важных шагов, на который следует обратить внимание, — это решить, где установить новый дистрибутив Linux. Первым пользователям лучше выбрать вариант «Управляемый», так как он сделает всю работу за вас.

    Не забудьте внимательно прочитать все шаги и оставить немного места на жестком диске для нового дистрибутива — я бы сказал, что минимум 30 ГБ — это неплохо.

    Ужасный Терминал

    Терминал Linux не стоит бояться, на самом деле его довольно легко использовать с некоторой практикой, и он может значительно автоматизировать ваши повседневные задачи.

    В Debian / Ubuntu и производных версиях ярлык для открытия CLI (интерфейс командной строки) — «Ctrl + Alt + T». Давайте откроем терминал и попробуем несколько команд.

    cd (Изменить каталог) — Команда cd — одна из команд, которые вы чаще всего будете использовать в командной строке Linux. Это позволяет вам изменить ваш рабочий каталог. Вы используете его для перемещения по иерархии файловой системы.

      cd  

    Использование одной только команды cd изменит текущий каталог на домашний каталог пользователя, расположенный в «/ home / username», как в «/ home / mark».

    ls (Список) — Эта команда выводит список содержимого в текущем каталоге. Его также можно использовать для вывода информации о файлах.

      ls  

    Теперь мы можем видеть наши каталоги у себя дома.

    Перечисленные здесь команды являются базовыми и помогут вам быстро приступить к работе. Но они также мощные, и они будут продолжать быть полезными по мере расширения вашего опыта в Linux.

    1. man Показывает руководство для следующей за ним команды. Это очень полезно при попытке выяснить, как работает незнакомая команда.Например, введите man ls , чтобы получить все, что вам нужно знать о команде ls . Для выхода введите q .
    2. echo Это берет текст, который вы ему даете, и отправляет его куда-нибудь — обратно на экран, в файл или другой команде. Пример: echo "привет!"
    3. cat Чтобы отобразить содержимое текстового файла, просто введите cat myfile .
    4. найти Он делает то, что говорит, и у него хорошо получается. Используйте его для поиска файлов по пути, размеру, дате, владельцу и множеству других полезных фильтров.Пример: найти. -type f -mtime -1h # Список файлов в этом каталоге, измененных за последний час .
    5. дата Просто введите дату, если хотите узнать, сколько сейчас времени. Пример: date "+ Это% l:% m% p на% A" . Используйте его в сценарии для именования файлов в соответствии с текущей датой.
    6. ls Что в этом каталоге? Объедините ls с некоторыми полезными флагами для отображения и сортировки содержимого каталога по дате и размеру. Это также дает вам множество вариантов форматирования вывода.
    7. pwd Где я? Linux может быть неумолимым, особенно когда вы что-то удаляете. Убедитесь, что вы знаете, где находитесь, прежде чем отдавать команды.
    8. rm Эта команда удаляет файлы, а не каталоги. rm file.txt удалит файл с именем «file.txt», пока он существует и находится в текущем каталоге.
    9. mv Используйте эту команду для перемещения файлов с помощью командной строки. Вы также можете использовать команду mv для переименования файла.Например, если вы хотите переименовать файл «текст» в «новый», просто запустите mv text new .
    10. mail Почтовая программа Linux не выглядит красивой, но может быть действительно полезной. Вы можете создать сообщение и добавить текст, получателей и вложения одной командой. Пример: echo «Мы отлично проводим время». | mail -s "Желаю, чтобы ты был здесь!" -A postcard.png -t [email protected]
    11. вырезать Если у вас есть строка с разделителями, используйте вырезать для фильтрации определенных полей.Пример: echo "то, то и другое" | cut -d, -f2 # "that"
    12. grep Чтобы найти строки текста, содержащие определенную строку, используйте команду grep. Пример: grep 'root' / etc / passwd # root: x: 0: 0: root: / root: / bin / bash
    13. sed Используйте sed для поиска и изменения подстроки в фрагменте текста . Пример: echo "то, то и другое" | sed 's / that / those /' # "это, те и другие"
    14. выключение Используйте выключение системы и выключение питания.Пример: shutdown -h now немедленно выключает систему. shutdown -h +5 выключает систему через пять минут.
    15. меньше Используйте меньше [имя файла] для просмотра содержимого файла и навигации по нему. По умолчанию минус будет проходить по файлу постранично.

    Используйте эти команды в сценариях и в командной строке. Все они очень мощные команды, и на главной странице Linux есть гораздо больше информации о каждой из них.


    Кроме того, системные администраторы используют следующие важные команды:

    1. время безотказной работы : показывает, как долго ваша система работает, и количество пользователей, которые в настоящее время вошли в систему. Он также отображает среднюю нагрузку для 1,5 и Интервалы 15 минут.
    2. w : отображает пользователей, которые в данный момент вошли в систему, и их процессы, а также средние значения нагрузки. Также показывает имя входа, имя tty, удаленный хост, время входа в систему, время простоя, JCPU, PCPU, команды и процессы.
    3. пользователей : отображает пользователей, вошедших в систему. У этой команды нет других параметров, кроме справки и версии.
    4. who : просто возвращает имя пользователя, дату, время и информацию о хосте. Команда who похожа на команду w. В отличие от w, который не печатает, что делают пользователи.
    5. whoami : выводит имя текущего пользователя. Вы также можете использовать «кто я» для отображения текущего пользователя. Если вы вошли в систему как root, использование команды sudo «whoami» возвращает root как текущего пользователя.Используйте «кто я», если хотите знать, какой именно пользователь вошел в систему.
    6. ls : отображает список файлов в удобочитаемом формате.
    7. crontab : перечисляет запланированные задания для текущего пользователя с помощью команды crontab и параметра -l.
    8. меньше : позволяет быстро просмотреть файл. Вы можете листать вверх и вниз. Нажмите «q», чтобы выйти из меньшего окна.
    9. подробнее : позволяет быстро просматривать файл и показывает детали в процентах. Вы можете листать вверх и вниз.Нажмите «q», чтобы выйти из дополнительного окна.
    10. cp : копирование файла из источника в место назначения с сохранением того же режима.

    Это список команд, часто используемых adiminstrator. Это не полный список, но это краткий список команд, на которые можно ссылаться при необходимости.

    • Distro: это сокращенное слово для «распространения»; а дистрибутив — это особый бренд операционной системы GNU / Linux, такой как Redhat, Fedora, Ubuntu и Debian.
    • Оболочка: это программа, которая считывает ввод вашей команды и запускает указанные команды. Знак доллара (`$’) перед курсором называется приглашением оболочки; он сообщает вам, что система готова и ожидает ввода в виде команд.
    • CLI: означает интерфейс командной строки . Это простой пользовательский интерфейс, который предоставляет услуги, необходимые пользователю для взаимодействия с ОС Linux с помощью текстовых команд.Это защищает пользователя от необходимости знать сложные детали оборудования.
    • GUI: обозначает графический интерфейс пользователя. Это часть системы Linux, которая состоит из окон, значков, изображений (графики в целом), которые позволяют указывать и щелкать мышью.
    • Терминал: — это приложение, которое используется для доступа к оболочке Linux.
    • Ядро: это ядро ​​системы Linux — то, что вы могли бы назвать «мозгом».Ядро управляет ресурсами компьютера и определяет, как они используются, напрямую взаимодействуя с аппаратным обеспечением компьютера.
    • Tux: официальный талисман Linux. Это пингвин, который обычно ассоциируется с Linux — если вы видели в сети желто-черного пингвина, значит, вы видели смокинг.
    • Корень: , также известный как суперпользователь, является именем пользователя по умолчанию для администратора Linux-машины. Обычно он отображается на терминале Linux с символом ”#” .
    • Команды: — это текстовые вводы или инструкции, данные Linux-машине (путем ввода их в терминал), чтобы сообщить ей, что делать (то есть для требуемого результата).
    • Репозиторий: Репозиторий (или для краткости «репо») — это набор пакетов программного обеспечения для дистрибутива, обычно размещенного в сети. Программное обеспечение можно устанавливать как из репозиториев по умолчанию, предоставленных дистрибутивом, так и из сторонних репозиториев, когда они добавляются в диспетчер пакетов.
    • Диспетчер пакетов: — это программа, которая позволяет искать, устанавливать, обновлять и удалять приложения, а также выполнять другие функции управления приложениями. В каждом дистрибутиве есть графика конечных менеджеров пакетов (например, Центр программного обеспечения Ubuntu) и инструменты управления пакетами командной строки, такие как «apt-get».
    • Зависимость: зависимость — это программа, которую необходимо установить программе. Когда программа устанавливается, она передает список своих зависимостей диспетчеру пакетов по умолчанию, чтобы проверить, установлены ли они уже, и загрузить их из репозитория, если это не так.

    Изучение основ Linux — Учебник по командам Bash для начинающих

    Это руководство по командам Linux будет охватывать 60 основных команд Bash, которые понадобятся вам как разработчику. Каждая команда включает пример кода и подсказки, когда ее использовать.

    Это Справочник по командам Linux следует правилу 80/20: вы выучите 80% темы примерно за 20% времени, потраченного на ее изучение.

    Я считаю, что этот подход дает вам всесторонний обзор.

    Это руководство не пытается охватить все, что связано с Linux и его командами.Он фокусируется на небольших основных командах, которые вы будете использовать 80% или 90% времени, и пытается упростить использование более сложных.

    Все эти команды работают в Linux, macOS, WSL и везде, где есть среда UNIX.

    Я надеюсь, что содержание этого руководства поможет вам достичь желаемого: освоиться с Linux .

    Вы можете добавить эту страницу в закладки в своем браузере, чтобы иметь возможность ссылаться на это руководство в будущем.

    И вы можете скачать это руководство в формате PDF / ePUB / Mobi бесплатно.

    Наслаждайтесь!

    Содержание

    Введение в Linux и оболочки

    Что такое Linux?

    Linux — это операционная система, такая же как macOS или Windows.

    Это также самая популярная операционная система с открытым исходным кодом, которая дает вам большую свободу.

    Он поддерживает подавляющее большинство серверов, составляющих Интернет. Это основа, на которой все построено. Но не только это. Android основан на (модифицированной версии) Linux.

    «Ядро» Linux (называемое ядром ) появилось в 1991 году в Финляндии и прошло очень долгий путь от своего скромного начала. Он стал ядром операционной системы GNU, создав дуэт GNU / Linux.

    В Linux есть одна вещь, которую корпорации вроде Microsoft, Apple и Google никогда не смогут предложить: свобода делать со своим компьютером все, что угодно.

    На самом деле они идут в противоположном направлении, строя огороженные сады, особенно на передвижной стороне.

    Linux — это максимальная свобода.

    Он разрабатывается добровольцами, некоторым платят компании, которые полагаются на него, а некоторые — независимо. Но нет ни одной коммерческой компании, которая могла бы определять, что входит в Linux или приоритеты проекта.

    Вы также можете использовать Linux в качестве повседневного компьютера. Я использую macOS, потому что мне очень нравятся приложения и дизайн (а еще я был разработчиком приложений для iOS и Mac). Но перед тем, как использовать macOS, я использовал Linux в качестве основной операционной системы компьютера.

    Никто не может диктовать, какие приложения вы можете запускать, или «звонить домой» с приложениями, которые отслеживают вас, ваше положение и многое другое.

    Linux также особенный, потому что существует не просто «один Linux», как в случае с Windows или macOS. Вместо этого у нас дистрибутивов .

    «Дистрибутив» производится компанией или организацией и содержит ядро ​​Linux с дополнительными программами и инструментами.

    Например, у вас есть Debian, Red Hat и Ubuntu, вероятно, самые популярные дистрибутивы.

    Но существует гораздо больше. Вы также можете создать свой собственный дистрибутив. Но, скорее всего, вы воспользуетесь популярным, у которого много пользователей и сообщество людей вокруг него. Это позволяет вам делать то, что вам нужно, не теряя слишком много времени на изобретение колеса и поиск ответов на общие проблемы.

    Некоторые настольные компьютеры и ноутбуки поставляются с предустановленной ОС Linux. Или вы можете установить его на свой компьютер под управлением Windows или на Mac.

    Но вам не нужно нарушать работу вашего существующего компьютера, чтобы получить представление о том, как работает Linux.

    У меня нет компьютера с Linux.

    Если вы используете Mac, вам просто нужно знать, что под капотом macOS находится операционная система UNIX. В нем много общих идей и программного обеспечения, которые используются в системе GNU / Linux, потому что GNU / Linux является бесплатной альтернативой UNIX.

    UNIX — это общий термин, который объединяет многие операционные системы, используемые в крупных корпорациях и учреждениях, начиная с 70-х годов

    .

    Терминал macOS дает вам доступ к тем же командам, которые я опишу в оставшейся части этого руководства.

    Microsoft имеет официальную подсистему Windows для Linux, которую вы можете (и должны!) Установить в Windows. Это даст вам возможность очень легко запускать Linux на вашем ПК.

    Но в большинстве случаев вы будете запускать компьютер с Linux в облаке через VPS (виртуальный частный сервер), такой как DigitalOcean.

    Что такое оболочка Linux?

    Оболочка — это интерпретатор команд, который предоставляет пользователю интерфейс для работы с базовой операционной системой.

    Он позволяет выполнять операции с помощью текста и команд, а также предоставляет пользователям расширенные функции, такие как возможность создавать сценарии.

    Это важно: оболочки позволяют выполнять задачи более оптимизированным образом, чем графический интерфейс пользователя (графический интерфейс пользователя), возможно, позволил бы вам сделать. Инструменты командной строки могут предлагать множество различных параметров конфигурации, не будучи слишком сложными в использовании.

    Есть много разных видов снарядов. Этот пост посвящен оболочкам Unix, которые обычно встречаются на компьютерах с Linux и macOS.

    Со временем для этих систем было создано множество различных оболочек, и некоторые из них доминируют в пространстве: Bash, Csh, Zsh, Fish и многие другие!

    Все снаряды происходят от компании Bourne Shell под названием sh . «Борн», потому что его создателем был Стив Борн.

    Bash означает оболочку Bourne-again . sh был проприетарным и не был открытым исходным кодом, а Bash был создан в 1989 году для создания бесплатной альтернативы проекту GNU и Free Software Foundation.Поскольку за использование оболочки Bourne проектам приходилось платить, Bash стал очень популярным.

    Если вы используете Mac, попробуйте открыть терминал Mac. По умолчанию он запускает ZSH (или до-Catalina, Bash).

    Вы можете настроить свою систему для запуска любой оболочки — например, я использую оболочку Fish.

    Каждая оболочка имеет свои уникальные особенности и расширенное использование, но все они имеют общие функции: они позволяют вам выполнять программы, и их можно программировать.

    В оставшейся части этого руководства мы подробно рассмотрим наиболее распространенные команды, которые вы будете использовать.

    Команда Linux

    man


    Первая команда, которую я представлю, поможет вам понять все остальные команды.

    Каждый раз, когда я не знаю, как использовать команду, я набираю man , чтобы получить руководство:

    Это страница man (из _manual_ ). Страницы руководства — важный инструмент, который нужно изучить разработчику. В них содержится столько информации, что иногда ее даже слишком много.
    Приведенный выше снимок экрана — это всего лишь 1 из 14 экранов с объяснением команды ls .

    В большинстве случаев, когда мне нужно быстро выучить команду, я использую этот сайт под названием tldr pages : https://tldr.sh. Вы можете установить эту команду и запустить ее следующим образом: tldr . Он дает вам очень быстрый обзор команды с некоторыми удобными примерами типичных сценариев использования:

    Это не замена для man , а удобный инструмент, позволяющий не потеряться в огромном количестве информации, присутствующей в man стр.Затем вы можете использовать страницу man для изучения всех различных опций и параметров, которые вы можете использовать в команде.

    Команда Linux

    ls

    Внутри папки вы можете перечислить все файлы, содержащиеся в папке, с помощью команды ls :

      лс
      

    Если вы добавите имя папки или путь, она распечатает содержимое этой папки:

      лс / бин
      

    ls допускает множество вариантов.Одна из моих любимых комбинаций — -al . Попробуйте:

      ls -al / bin
      

    По сравнению с простой командой ls , эта команда возвращает гораздо больше информации.

    У вас слева направо:

    • права доступа к файлам (и если ваша система поддерживает ACL, вы также получите флаг ACL)
    • количество ссылок на этот файл
    • владелец файла
    • группа файла
    • размер файла в байтах
    • дата и время последнего изменения файла
    • имя файла

    Этот набор данных создается опцией l .Параметр a вместо этого также показывает скрытые файлы.

    Скрытые файлы — это файлы, начинающиеся с точки (. ).

    Команда Linux

    cd

    Если у вас есть папка, вы можете перейти в нее с помощью команды cd . cd означает c hange d irectory. Вы вызываете его, указывая папку, в которую нужно перейти. Вы можете указать имя папки или весь путь.

    Пример:

      мкдир фрукты
    cd фрукты
      

    Теперь вы находитесь в папке плодов .

    Вы можете использовать специальный путь .. для указания родительской папки:

      cd .. # вернуться в домашнюю папку
      

    Символ # обозначает начало комментария, которое длится всю строку после его обнаружения.

    Вы можете использовать его для создания пути:

      мкдир фрукты
    mkdir автомобили
    cd фрукты
    cd ../cars
      

    Есть еще один специальный индикатор пути — . , и указывает текущую папку .

    Вы также можете использовать абсолютные пути, которые начинаются с корневой папки /:

      кд / и т. Д.
      

    Команда Linux

    pwd

    Всякий раз, когда вы чувствуете себя потерянным в файловой системе, вызовите команду pwd , чтобы узнать, где вы находитесь:

      pwd
      

    Будет напечатан путь к текущей папке.

    Команда Linux

    mkdir

    Папки создаются с помощью команды mkdir :

      мкдир фрукты
      

    Вы можете создать несколько папок с помощью одной команды:

      mkdir собаки тачки
      

    Вы также можете создать несколько вложенных папок, добавив параметр -p :

      mkdir -p фрукты / яблоки
      

    Параметры в командах UNIX обычно принимают эту форму.Вы добавляете их сразу после имени команды, и они изменяют поведение команды. Вы также можете часто комбинировать несколько вариантов.

    Вы можете узнать, какие параметры поддерживает команда, набрав man . Попробуйте сейчас, например, с помощью команды man mkdir (нажмите клавишу q , чтобы выйти на страницу руководства). Страницы руководства — это замечательная встроенная справка для UNIX.

    Команда Linux

    rmdir

    Так же, как вы можете создать папку с помощью mkdir , вы можете удалить папку с помощью rmdir :

      мкдир фрукты
    rmdir фрукты
      

    Вы также можете удалить сразу несколько папок:

      мкдир фрукты тачки
    rmdir фрукты автомобили
      

    Удаляемая папка должна быть пустой.

    Чтобы удалить папки с файлами в них, мы будем использовать более общую команду rm , которая удаляет файлы и папки, используя опцию -rf :

      rm -rf фрукты автомобили
      

    Будьте осторожны, поскольку эта команда не запрашивает подтверждения и немедленно удаляет все, что вы просите удалить.

    Нет bin при удалении файлов из командной строки, и восстановление потерянных файлов может быть трудным.

    Команда Linux

    mv

    Если у вас есть файл, вы можете перемещать его с помощью команды mv .Вы указываете текущий путь к файлу и его новый путь:

      сенсорный тест
    мв груша new_pear
      

    Файл pear теперь перемещен в new_pear . Вот как вы в переименуете файлов и папок.

    Если последним параметром является папка, файл, расположенный по пути первого параметра, будет перемещен в эту папку. В этом случае вы можете указать список файлов, и все они будут перемещены по пути к папке, указанному последним параметром:

      сенсорная груша
    прикоснуться к яблоку
    mkdir фрукты
    мв груша яблоко фрукты # копье и яблоко перемещены в папку с фруктами
      

    Команда Linux

    cp

    Вы можете скопировать файл с помощью команды cp :

      сенсорный тест
    cp яблоко another_apple
      

    Для копирования папок вам необходимо добавить опцию -r для рекурсивного копирования всего содержимого папки:

      мкдир фрукты
    cp -r фрукты автомобили
      

    Linux

    open команда

    Команда open позволяет открывать файл, используя следующий синтаксис:

      открыть <имя файла>
      

    Вы также можете открыть каталог, который в macOS открывает приложение Finder с открытым текущим каталогом:

      открыть <имя каталога>
      

    Я использую его постоянно, чтобы открыть текущий каталог:

      открытый. 

    Особый . Символ указывает на текущий каталог, а .. указывает на родительский каталог

    Эту же команду можно использовать для запуска приложения:

      открыть <название приложения>
      

    Команда Linux

    touch

    Вы можете создать пустой файл с помощью команды touch :

      сенсорный яблоко
      

    Если файл уже существует, он открывает файл в режиме записи, и метка времени файла обновляется.

    Команда Linux

    find

    Команда find может использоваться для поиска файлов или папок, соответствующих определенному шаблону поиска. Поиск выполняется рекурсивно.

    Давайте узнаем, как им пользоваться на примере.

    Найдите все файлы в текущем дереве с расширением .js и распечатайте относительный путь к каждому файлу, который соответствует:

      найти. -name '* .js'
      

    Важно использовать кавычки вокруг специальных символов, таких как * , чтобы оболочка не интерпретировала их.

    Найти каталоги в текущем дереве, соответствующие имени «src»:

      найти. -type d -name src
      

    Используйте -тип f для поиска только файлов или -тип l для поиска только символьных ссылок.

    -name чувствительно к регистру. используйте -iname для выполнения поиска без учета регистра.

    Вы можете искать по нескольким корневым деревьям:

      найти папку1 папка2-имя имя_файла.txt
      

    Найти каталоги в текущем дереве, соответствующие имени «node_modules» или «public»:

      найти.-type d -name node_modules -или -name public
      

    Вы также можете исключить путь, используя -not -path :

      найти. -type d -name '* .md' -not -path 'node_modules / *'
      

    Вы можете искать файлы, содержащие более 100 символов (байтов):

      найти. -тип f -размер + 100c
      

    Искать файлы размером более 100 КБ, но меньше 1 МБ:

      найти. -тип f -размер + 100k -размер -1M
      

    Найти файлы, отредактированные более 3 дней назад:

      найти.-тип f -mtime +3
      

    Искать файлы, отредактированные за последние 24 часа:

      найти. -type f -mtime -1
      

    Вы можете удалить все файлы, соответствующие поисковому запросу, добавив опцию -delete . Это удалит все файлы, отредактированные за последние 24 часа:

      найти. -type f -mtime -1 -delete
      

    Вы можете выполнить команду для каждого результата поиска. В этом примере мы запускаем cat для печати содержимого файла:

      найти.-type f -exec cat {} \;
      

    Обратите внимание на завершение \; . {} заполняется именем файла во время выполнения.

    Команда Linux

    ln

    Команда ln является частью команд файловой системы Linux.

    Используется для создания ссылок. Что такое ссылка? Это как указатель на другой файл или файл, указывающий на другой файл. Возможно, вы знакомы с ярлыками Windows. Они похожи.

    У нас есть 2 типа ссылок: жестких ссылок и мягких ссылок .

    Жесткие ссылки

    Жесткие ссылки используются редко. У них есть несколько ограничений: вы не можете ссылаться на каталоги и вы не можете ссылаться на внешние файловые системы (диски).

    Жесткая ссылка создается с использованием следующего синтаксиса:

      ln <оригинал> <ссылка>
      

    Например, у вас есть файл recipes.txt. Вы можете создать жесткую ссылку на него, используя:

      ln recipes.txt newrecipes.txt
      

    Созданная вами новая жесткая ссылка неотличима от обычного файла:

    Теперь каждый раз, когда вы редактируете любой из этих файлов, содержимое обоих файлов обновляется.

    Если вы удалите исходный файл, ссылка все равно будет содержать содержимое исходного файла, так как оно не удаляется, пока на него не будет указана одна жесткая ссылка.

    Ссылки

    Софт линки разные. Они более мощные, поскольку вы можете связываться с другими файловыми системами и каталогами. Но учтите, что при удалении оригинала ссылка будет разорвана.

    Программные ссылки создаются с помощью параметра -s из ln :

      ln -s <оригинал> <ссылка>
      

    Например, у вас есть файл рецептов.текст. Вы можете создать на него софт-ссылку, используя:

      ln -s recipes.txt newrecipes.txt
      

    В этом случае вы можете увидеть специальный флаг l , когда вы перечисляете файл с помощью ls -al . Имя файла имеет в конце @ , и он также окрашен по-разному, если у вас включены цвета:


    Теперь, если вы удалите исходный файл, ссылки будут разорваны, и оболочка сообщит вам «Нет такого файла или каталога», если вы попытаетесь получить к нему доступ:

    Команда Linux

    gzip

    Вы можете сжать файл, используя протокол сжатия gzip с именем LZ77, используя команду gzip .

    Вот простейшее использование:

      gzip имя файла
      

    Это сжимает файл и добавляет к нему расширение .gz . Исходный файл удаляется.

    Чтобы предотвратить это, вы можете использовать параметр -c и использовать перенаправление вывода для записи вывода в файл filename.gz file:

      gzip -c имя_файла> имя_файла.gz
      

    Параметр -c указывает, что вывод будет идти в стандартный поток вывода, оставляя исходный файл нетронутым.

    Или вы можете использовать опцию -k :

      gzip -k имя файла
      

    Есть разные уровни сжатия. Чем сильнее сжатие, тем больше времени потребуется для сжатия (и распаковки). Уровни варьируются от 1 (самое быстрое, худшее сжатие) до 9 (самое медленное, лучшее сжатие), по умолчанию — 6.

    Вы можете выбрать определенный уровень с помощью опции - <НОМЕР> :

      gzip -1 имя файла
      

    Вы можете сжать несколько файлов, перечислив их:

      gzip имя_файла1 имя_файла2
      

    Вы можете рекурсивно сжать все файлы в каталоге, используя параметр -r :

      gzip -r a_folder
      

    Параметр -v выводит информацию о степени сжатия.Вот пример его использования вместе с опцией -k (сохранить):


    gzip также можно использовать для распаковки файла с помощью параметра -d :

      gzip -d имя_файла.gz
      

    Команда Linux

    gunzip

    Команда gunzip в основном эквивалентна команде gzip , за исключением того, что опция -d всегда включена по умолчанию.

    Команда может быть вызвана следующим образом:

      gunzip имя файла.gz
      

    Это будет архивировать с помощью gunzip и удалить расширение .gz , поместив результат в файл filename . Если этот файл существует, он перезапишет его.

    Вы можете извлечь файл в другое имя файла, используя перенаправление вывода с помощью параметра -c :

      gunzip -c filename.gz> другое имя файла
      

    Команда Linux

    tar

    Команда tar используется для создания архива, группируя несколько файлов в один файл.

    Его название происходит из прошлого и означает ленточный архив (в те времена, когда архивы хранились на магнитных лентах).

    Эта команда создает архив с именем archive.tar с содержимым file1 и file2 :

      tar -cf archive.tar файл1 файл2
      

    Параметр c означает создать . Опция f используется для записи в файл архива.

    Для извлечения файлов из архива в текущей папке используйте:

      tar -xf архив.деготь
      

    вариант x означает экстракт .

    И чтобы извлечь их в определенный каталог, используйте:

      tar -xf archive.tar -C каталог
      

    Вы также можете просто перечислить файлы, содержащиеся в архиве:


    tar часто используется для создания сжатого архива , gzip архива.

    Это делается с помощью опции z :

      tar -czf архив.tar.gz файл1 файл2
      

    Это похоже на создание tar-архива с последующим запуском на нем gzip .

    Чтобы разархивировать gzip-архив, вы можете использовать gunzip или gzip -d , а затем разархивировать его. Но tar -xf распознает, что это сжатый архив, и сделает это за вас:

      tar -xf archive.tar.gz
      

    Linux

    псевдоним команда

    Обычно всегда запускают программу с набором параметров, которые вам нравятся.

    Например, возьмите команду ls . По умолчанию выводится очень мало информации:

    Но если вы используете параметр -al , он напечатает что-то более полезное, включая дату изменения файла, размер, владельца и разрешения. Он также перечислит скрытые файлы (файлы, начинающиеся с . ):

    Вы можете создать новую команду, например, мне нравится называть ее ll , это псевдоним ls -al .

    У вас это так:

      псевдоним ll = 'ls -al'
      

    Как только вы это сделаете, вы можете позвонить по номеру ll так же, как это была обычная команда UNIX:

    Теперь при вызове псевдонима без какой-либо опции будут перечислены определенные псевдонимы:


    Псевдоним будет работать до закрытия терминального сеанса.

    Чтобы сделать его постоянным, вам нужно добавить его в конфигурацию оболочки. Это может быть ~ / .bashrc или ~ /.profile или ~ / .bash_profile , если вы используете оболочку Bash, в зависимости от варианта использования.

    Будьте осторожны с кавычками, если у вас есть переменные в команде: если вы используете двойные кавычки, переменная разрешается во время определения. Если вы используете одинарные кавычки, это разрешается во время вызова. Эти двое разные:

      псевдоним lsthis = "ls $ PWD"
    псевдоним lscurrent = 'ls $ PWD'
      

    $ PWD относится к текущей папке, в которой находится оболочка. Если вы теперь перейдете к новой папке, lscurrent перечислит файлы в новой папке, тогда как lsthis по-прежнему перечислит файлы в папке, где вы были, когда вы определил псевдоним.

    Команда Linux

    cat

    В некотором смысле похожа на tail , у нас есть cat . Кроме cat также может добавлять контент в файл, и это делает его очень мощным.

    В простейшем случае cat выводит содержимое файла на стандартный вывод:

      cat файл
      

    Вы можете распечатать содержимое нескольких файлов:

      кошка файл1 файл2
      

    и используя оператор перенаправления вывода > , вы можете объединить содержимое нескольких файлов в новый файл:

      кошка файл1 файл2> файл3
      

    Используя >> , вы можете добавить содержимое нескольких файлов в новый файл, создав его, если он не существует:

      кошка файл1 файл2 >> файл3
      

    Когда вы просматриваете файлы исходного кода, полезно видеть номера строк.Вы можете заставить cat распечатать их, используя параметр -n :

      cat -n file1
      

    Вы можете добавить число только к непустым строкам, используя -b , или вы также можете удалить все несколько пустых строк, используя -s .

    cat часто используется в сочетании с оператором трубы | , чтобы передать содержимое файла в качестве входных данных другой команде: cat file1 | другая команда .

    Команда Linux

    меньше

    Команду меньше я часто использую.Он показывает вам контент, хранящийся внутри файла, в красивом и интерактивном пользовательском интерфейсе.

    Использование: минус <имя файла> .

    Как только вы войдете в сеанс минус , вы можете выйти, нажав q .

    Вы можете перемещаться по содержимому файла с помощью клавиш вверх, и вниз, или используя пробел , и b для перехода от страницы к странице. Вы также можете перейти к концу файла, нажав G , и вернуться к началу, нажав g .

    Вы можете искать содержимое внутри файла, нажав / и введя слово для поиска. Это ищет вперед . Вы можете искать в обратном направлении с помощью ? символ и ввод слова.

    Эта команда просто визуализирует содержимое файла. Вы можете напрямую открыть редактор, нажав v . Он будет использовать системный редактор, которым в большинстве случаев является vim .

    Нажатие клавиши F приводит к переходу в режим слежения или режим слежения .Когда файл изменяется кем-то другим, например, из другой программы, вы можете увидеть изменения live .

    По умолчанию этого не происходит, и вы видите только версию файла на момент его открытия. Вам нужно нажать ctrl-C , чтобы выйти из этого режима. В этом случае поведение аналогично запуску команды tail -f .

    Вы можете открывать несколько файлов и перемещаться по ним с помощью : n (для перехода к следующему файлу) и : p (для перехода к предыдущему).

    Linux

    tail команда

    На мой взгляд, лучший вариант использования tail — это вызов с опцией -f . Он открывает файл в конце и следит за изменениями файла.

    Каждый раз, когда в файле появляется новое содержимое, оно печатается в окне. Это отлично подходит для просмотра файлов журнала, например:

      хвост -f /var/log/system.log
      

    Для выхода нажмите ctrl-C .

    Вы можете распечатать последние 10 строк файла:

      tail -n 10 <имя файла>
      

    Вы можете распечатать все содержимое файла, начиная с определенной строки, используя + перед номером строки:

      tail -n +10 <имя файла>
      

    tail может намного больше, и, как всегда, мой совет — проверить man tail .

    Команда Linux

    wc

    Команда wc дает нам полезную информацию о файле или входных данных, которые он получает по каналам.

      эхо-тест >> test.txt
    туалет test.txt
    1 1 5 test.txt
      

    Пример через каналы, мы можем подсчитать вывод выполнения команды ls -al :

      ls -al | Туалет
    6 47 284
      

    Первый возвращаемый столбец — это количество строк. Второй — количество слов.Третий — это количество байтов.

    Мы можем сказать, что он просто считает строки:

      wc -l test.txt
      

    или просто слова:

      wc -w test.txt
      

    или просто байты:

      туалет -c test.txt
      

    байта в кодировке ASCII приравниваются к символам. Но с кодировками, отличными от ASCII, количество символов может отличаться, потому что некоторые символы могут занимать несколько байтов (например, это происходит в Unicode).

    В этом случае флаг -m поможет вам получить правильное значение:

      туалет -m test.txt
      

    Команда Linux

    grep

    Команда grep — очень полезный инструмент. Когда вы овладеете им, это очень поможет вам в повседневном программировании.

    Если вам интересно, grep означает глобальное регулярное выражение print .

    Вы можете использовать grep для поиска в файлах или объединить его с конвейерами для фильтрации вывода другой команды.

    Например, вот как мы можем найти вхождения строки document.getElementById в файле index.md :

      grep -n document.getElementById index.md
      

    Используя опцию -n , вы увидите номера строк:

      grep -n document.getElementById index.md
      

    Одна очень полезная вещь — указать grep печатать 2 строки до и 2 строки после совпадающей строки, чтобы дать вам больше контекста.Это делается с помощью параметра -C , который принимает несколько строк:

      grep -nC 2 document.getElementById index.md
      

    Поиск по умолчанию чувствителен к регистру. Используйте флаг -i , чтобы сделать его нечувствительным.

    Как уже упоминалось, вы можете использовать grep для фильтрации вывода другой команды. Мы можем воспроизвести те же функции, что и выше, используя:

      меньше index.md | grep -n document.getElementById
      

    Строка поиска может быть регулярным выражением, и это делает grep очень мощным.

    Еще одна вещь, которую вы можете найти очень полезной, — это инвертировать результат, исключив строки, соответствующие определенной строке, с помощью параметра -v :

    Команда Linux

    sort

    Предположим, у вас есть текстовый файл, содержащий имена собак:

    Этот список неупорядочен.

    Команда sort помогает отсортировать их по имени:

    Используйте опцию r , чтобы изменить порядок:

    Сортировка по умолчанию чувствительна к регистру и по алфавиту.Используйте параметр --ignore-case для сортировки без учета регистра и параметр -n для сортировки с использованием числового порядка.

    Если файл содержит повторяющиеся строки:

    Для их удаления можно использовать параметр -u :

    sort работает не только с файлами, как многие команды UNIX, но и с конвейерами. Таким образом, вы можете использовать его на выходе другой команды. Например, вы можете заказать файлы, возвращенные ls , с помощью:

      ls | Сортировать
      

    sort очень мощный и имеет гораздо больше опций, которые вы можете изучить, позвонив man sort .

    Команда Linux

    uniq

    uniq — это команда, которая помогает сортировать строки текста.

    Вы можете получить эти строки из файла или использовать каналы из вывода другой команды:

      uniq dogs.txt
    
    ls | уникальный
      

    Вы должны учитывать одну ключевую вещь: uniq будет обнаруживать только соседние повторяющиеся строки.

    Это означает, что вы, скорее всего, будете использовать его вместе с сортировкой :

      сорт собак.txt | уникальный
      

    Команда sort имеет собственный способ удаления дубликатов с параметром -u ( уникальный ). Зато у uniq мощность больше.

    По умолчанию удаляет повторяющиеся строки:

    Вы можете указать ему отображать только повторяющиеся строки, например, с помощью параметра -d :

      sort dogs.txt | uniq -d
      

    Вы можете использовать опцию -u только для отображения неповторяющихся строк:

    Вы можете подсчитать количество вхождений каждой строки с опцией -c :

    Используйте специальную комбинацию:

      сорт собак.txt | uniq -c | sort -nr
      

    , чтобы отсортировать эти строки по наиболее частому:

    Команда Linux

    diff

    diff — удобная команда. Предположим, у вас есть 2 файла, которые содержат почти одинаковую информацию, но вы не можете найти разницу между ними.

    diff обработает файлы и сообщит вам, в чем разница.

    Предположим, у вас есть 2 файла: dogs.txt, и moredogs.txt . Разница в том, что moredogs.txt содержит еще одно имя собаки:

    .

    diff dogs.txt moredogs.txt сообщит вам, что во втором файле есть еще одна строка, строка 3 с строкой Vanille :

    Если вы измените порядок файлов, он сообщит вам, что во втором файле отсутствует строка 3, содержимое которой Vanille :

    Использование параметра -y будет сравнивать 2 файла построчно:

    Параметр -u , однако, будет вам более знаком, поскольку он используется системой управления версиями Git для отображения различий между версиями:

    Сравнение каталогов работает точно так же.Вы должны использовать опцию -r для рекурсивного сравнения (переход в подкаталоги):

    Если вас интересует, какие файлы отличаются, а не их содержимое, используйте параметры r и q :

    Есть много других вариантов, которые вы можете изучить на странице руководства, запустив man diff :

    Команда Linux

    echo

    Команда echo выполняет одно простое задание: выводит на выход переданный ей аргумент.

    Этот пример:

      эхо "привет"
      

    выведет на терминал hello .

    Мы можем добавить вывод в файл:

      echo "привет" >> output.txt
      

    Мы можем интерполировать переменные среды:

      echo "Переменная пути - $ PATH"
      

    Помните, что специальные символы необходимо экранировать обратной косой чертой \ . $ например:


    Это только начало.Мы можем делать несколько приятных вещей, когда дело касается взаимодействия с функциями оболочки.

    Мы можем повторить файлы в текущей папке:

      эхо *
      

    Мы можем повторить файлы в текущей папке, которые начинаются с буквы o :

      эхо о *
      

    Здесь можно использовать любую допустимую команду и функцию Bash (или любую используемую вами оболочку).

    Вы можете распечатать путь к домашней папке:

      эхо ~
      

    Вы также можете выполнять команды и выводить результат на стандартный вывод (или в файл, как вы видели):

      эхо $ (ls -al)
      

    Обратите внимание, что по умолчанию пробелы не сохраняются.Для этого вам нужно заключить команду в двойные кавычки:

    Вы можете создать список строк, например диапазоны:

      эхо {1..5}
      

    Команда Linux

    chown

    Каждый файл / каталог в операционной системе, такой как Linux или macOS (и в каждой системе UNIX в целом), имеет владельца .

    Владелец файла может все с ним делать. Он может решить судьбу этого файла.

    Владелец (и пользователь root ) также может сменить владельца на другого пользователя, используя команду chown :

      chown <владелец> <файл>
      

    Как это:

      тест Чауна Флавио.текст
      

    Например, если у вас есть файл, который принадлежит корню , вы не можете писать в него как другой пользователь:

    Вы можете использовать chown для передачи права собственности вам:


    Довольно часто возникает необходимость изменить владельца каталога и рекурсивно всех содержащихся в нем файлов, а также всех подкаталогов и файлов, содержащихся в них.

    Это можно сделать с помощью флага -R :

      chown -R <владелец> <файл>
      

    Файлы / каталоги имеют не только владельца, но и группу .С помощью этой команды вы можете изменить это одновременно со сменой владельца:

      chown <владелец>: <группа> <файл>
      

    Пример:

      chown flavio: пользователи test.txt
      

    Вы также можете просто изменить группу файла с помощью команды chgrp :

      chgrp <группа> <имя файла>
      

    Linux

    chmod команда

    Каждый файл в операционных системах Linux / macOS (и в системах UNIX в целом) имеет 3 разрешения: чтение, запись и выполнение.

    Войдите в папку и выполните команду ls -al .


    Странные строки, которые вы видите в каждой строке файла, например drwxr-xr-x , определяют права доступа к файлу или папке.

    Давайте рассмотрим это.

    Первая буква указывает на тип файла:

    • - означает, что это обычный файл
    • d означает, что это каталог
    • л значит это ссылка

    Тогда у вас есть 3 набора значений:

    • Первый набор представляет права владельца файла
    • Второй набор представляет разрешения членов группы , с которой связан файл
    • Третий набор представляет разрешения всех остальных

    Эти наборы состоят из 3 значений. rwx означает, что конкретный персонаж имеет доступ на чтение, запись и выполнение. Все, что удаляется, заменяется на - , что позволяет формировать различные комбинации значений и относительных разрешений: rw- , r - , r-x и т. Д.

    Вы можете изменить права доступа к файлу с помощью команды chmod .

    chmod можно использовать двумя способами. Первый использует символьные аргументы, второй — числовые аргументы.Начнем сначала с символов, что более интуитивно понятно.

    Вы вводите chmod , затем пробел и букву:

    • a означает все
    • u обозначает пользователя
    • г обозначает группу
    • o означает другие

    Затем вы набираете + или - , чтобы добавить разрешение или удалить его. Затем вы вводите один или несколько символов разрешений ( r , w , x ).

    Все, за которыми следует имя файла или папки.

    Вот несколько примеров:

      chmod a + r filename # теперь все могут читать
    chmod a + rw filename # теперь все могут читать и писать
    chmod o-rwx filename # другие (не владелец, не в той же группе файла) не могут прочитать, записать или выполнить файл
      

    Вы можете применить одни и те же разрешения к нескольким лицам, добавив несколько букв перед + / - :

      chmod og-r filename # другие и группа больше не могут читать
      

    Если вы редактируете папку, вы можете применить разрешения к каждому файлу, содержащемуся в этой папке, используя флаг -r (рекурсивный).

    Числовые аргументы работают быстрее, но мне трудно их запомнить, если вы не используете их изо дня в день. Вы используете цифру, которая представляет разрешения персонажа. Это числовое значение может быть максимум 7, и оно рассчитывается следующим образом:

    .
    • 1 при наличии разрешения на выполнение
    • 2 , если есть разрешение на запись
    • 4 , если есть разрешение на чтение

    Это дает нам 4 комбинации:

    • 0 без разрешений
    • 1 может выполнить
    • 2 может писать
    • 3 может писать, выполнять
    • 4 умеет читать
    • 5 может читать, выполнять
    • 6 может читать, писать
    • 7 может читать, писать и выполнять

    Мы используем их парами по 3, чтобы установить права всех трех групп вместе:

      chmod 777 имя файла
    chmod 755 имя файла
    chmod 644 имя файла
      

    Команда Linux

    umask

    Когда вы создаете файл, вам не нужно заранее определять права доступа.У разрешений есть значения по умолчанию.

    Эти значения по умолчанию можно контролировать и изменять с помощью команды umask .

    Набрав umask без аргументов, вы увидите текущую umask, в данном случае 0022 :

    Что означает 0022 ? Это восьмеричное значение, представляющее разрешения.

    Другое распространенное значение — 0002 .

    Используйте umask -S , чтобы увидеть удобочитаемую запись:


    В этом случае пользователь ( и ), владелец файла, имеет права на чтение, запись и выполнение для файлов.

    Другие пользователи, принадлежащие к той же группе ( g ), имеют разрешение на чтение и выполнение, как и все другие пользователи ( o ).

    В числовом представлении мы обычно меняем последние 3 цифры.

    Вот список, который объясняет значение числа:

    • 0 чтение, запись, выполнение
    • 1 чтение и запись
    • 2 чтение и выполнение
    • 3 только чтение
    • 4 запись и выполнение
    • 5 только запись
    • 6 выполнить только
    • 7 без разрешений

    Обратите внимание, что это числовое обозначение отличается от того, которое мы используем в chmod .

    Мы можем установить новое значение для маски, задав значение в числовом формате:

      маска 002
      

    или вы можете изменить разрешение конкретной роли:

      маска g + r
      

    Команда Linux

    du

    Команда du вычислит размер каталога в целом:

      du
      

    Число 32 здесь представляет собой значение, выраженное в байтах.

    Запуск du * рассчитает размер каждого файла отдельно:

    Вы можете настроить du для отображения значений в мегабайтах, используя du -m , и GigaBytes, используя du -g .

    Параметр -h покажет удобочитаемое обозначение размеров, адаптированное к размеру:

    Добавление параметра -a также распечатает размер каждого файла в каталогах:

    Удобно отсортировать каталоги по размеру:

      du -h <каталог> | sort -nr
      

    , а затем трубопровод к головке , чтобы получить только первые 10 результатов:

    Команда Linux

    df

    Команда df используется для получения информации об использовании диска.

    В его основной форме будет напечатана информация о установленных томах:

    Использование параметра -h ( df -h ) покажет эти значения в удобочитаемом формате:

    Вы также можете указать имя файла или каталога, чтобы получить информацию о том, на каком конкретном томе он находится:

    Linux

    basename команда

    Предположим, у вас есть путь к файлу, например / Users / flavio / test.txt .

    Работает

      базовое имя /Users/flavio/test.txt
      

    вернет строку test.txt :

    Если вы запустите basename в строке пути, указывающей на каталог, вы получите последний сегмент пути. В этом примере / Users / flavio — это каталог:

    Команда Linux

    dirname

    Предположим, у вас есть путь к файлу, например / Users / flavio / test.txt .

    Работает

      имя каталога /Users/flavio/test.txt
      

    вернет строку / Users / flavio :

    Linux

    ps команда

    На вашем компьютере постоянно выполняется множество различных процессов.

    Вы можете проверить их все с помощью команды ps :

    Это список инициированных пользователем процессов, запущенных в текущем сеансе.

    Здесь у меня есть несколько экземпляров оболочки fish , которые в основном открываются VS Code внутри редактора, и экземпляр Hugo, запускающий предварительную версию сайта для разработки.

    Это просто команды, назначенные текущему пользователю. Чтобы отобразить всех процессов , нам нужно передать некоторые параметры в ps .

    Самый распространенный, который я использую, — ps ax :

    Параметр a также используется для вывода списка процессов других пользователей, а не только ваших собственных. x показывает процессы, не связанные с каким-либо терминалом (не инициированные пользователями через терминал).

    Как видите, более длинные команды обрезаны.Используйте команду ps axww , чтобы продолжить перечисление команд с новой строки вместо того, чтобы вырезать ее:

    Нам нужно указать w 2 раза, чтобы применить этот параметр (это не опечатка).

    Вы можете искать определенный процесс, комбинируя grep с конвейером, например:

      ps axww | grep "Код Visual Studio"
      


    Столбцы, возвращаемые командой ps , представляют некоторую ключевую информацию.

    Первая информация — это PID , идентификатор процесса.Это ключевой момент, когда вы хотите сослаться на этот процесс в другой команде, например, чтобы убить его.

    Затем у нас есть TT , который сообщает нам используемый идентификатор терминала.

    Затем STAT сообщает нам состояние процесса:

    I процесс, который бездействует (спящий более 20 секунд)
    R работающий процесс
    S процесс, который спит менее 20 секунд
    T остановленный процесс
    U процесс в непрерывном ожидании
    Z мертвый процесс ( зомби )

    Если у вас более одной буквы, вторая представляет дополнительную информацию, которая может быть очень технической.

    Обычно + означает, что процесс находится на переднем плане в своем терминале. s означает, что процесс является лидером сеанса.

    ВРЕМЯ сообщает нам, как долго выполняется процесс.

    Команда Linux

    top

    Команда top используется для отображения динамической информации в реальном времени о запущенных процессах в системе.

    Очень удобно понимать, что происходит.

    Его использовать просто — вы просто набираете top , и терминал будет полностью погружен в это новое представление:


    Процесс выполняется долго. Чтобы выйти, вы можете ввести q букву или ctrl-C .

    Нам предоставляется много информации: количество процессов, сколько запущено или спящих, загрузка системы, загрузка ЦП и многое другое.

    Ниже список процессов, занимающих больше всего памяти и ЦП, постоянно обновляется.

    По умолчанию, как видно из выделенного столбца % CPU , они сортируются по используемому процессору.

    Вы можете добавить флаг для сортировки процессов по используемой памяти:

      верх -о мем
      

    Linux

    kill команда

    Процессы Linux могут получать сигналов и реагировать на них.

    Это один из способов взаимодействия с запущенными программами.

    Программа kill может посылать программе различные сигналы.

    Он не просто используется для завершения программы, как следует из названия, но это его основная работа.

    Мы используем его так:

      убить 
      

    По умолчанию это отправляет сигнал TERM указанному идентификатору процесса.

    Мы можем использовать флаги для отправки других сигналов, в том числе:

      kill -HUP 
    kill -INT 
    kill -KILL 
    kill -TERM 
    kill -CONT 
    kill -STOP 
      

    HUP означает, что положит трубку .Он отправляется автоматически, когда окно терминала, запустившее процесс, закрывается перед завершением процесса.

    INT означает прерывание , и он отправляет тот же сигнал, который используется, когда мы нажимаем ctrl-C в терминале, что обычно завершает процесс.

    KILL отправляется не процессу, а ядру операционной системы, которое немедленно останавливает и завершает процесс.

    TERM означает, что завершает .Процесс получит его и завершится. Это сигнал по умолчанию, отправляемый командой kill .

    CONT означает продолжить . Его можно использовать для возобновления остановленного процесса.

    STOP отправляется не процессу, а ядру операционной системы, которое немедленно останавливает (но не завершает) процесс.

    Вместо этого вы можете увидеть числа, например kill -1 . В данном случае

    1 соответствует HUP .
    2 соответствует INT .
    9 соответствует KILL .
    15 соответствует TERM .
    18 соответствует CONT .
    15 соответствует STOP .

    Команда Linux

    killall

    Подобно команде kill , команда killall отправит сигнал сразу нескольким процессам вместо отправки сигнала определенному идентификатору процесса.

    Это синтаксис:

      killall <имя>
      

    , где имя — имя программы. Например, у вас может быть несколько запущенных экземпляров программы top , а killall top завершит их все.

    Вы можете указать сигнал, например, с помощью kill (и ознакомьтесь с учебником kill , чтобы узнать больше о конкретных типах сигналов, которые мы можем отправлять), например:

      killall -HUP верх
      

    Задания Linux

    команда

    Когда мы запускаем команду в Linux / macOS, мы можем настроить ее на выполнение в фоновом режиме, используя символ и после команды.

    Например, мы можем запустить top в фоновом режиме:

      верх &
      

    Это очень удобно для долго работающих программ.

    Мы можем вернуться к этой программе с помощью команды fg . Это отлично работает, если у нас есть только одно задание в фоновом режиме, в противном случае нам нужно использовать номер задания: fg 1 , fg 2 и так далее.

    Чтобы получить номер задания, мы используем команду jobs .

    Допустим, мы запускаем top и , а затем top -o mem & , поэтому у нас запущено 2 экземпляра top. вакансий сообщит нам это:


    Теперь мы можем вернуться к одному из них, используя fg . Чтобы снова остановить программу, мы можем нажать cmd-Z .

    Выполнение заданий -l также распечатает идентификатор процесса каждого задания.

    Команда Linux

    bg

    Когда команда выполняется, вы можете приостановить ее, используя ctrl-Z .

    Команда немедленно остановится, и вы вернетесь в терминал оболочки.

    Вы можете возобновить выполнение команды в фоновом режиме, чтобы она продолжала работать, но это не помешало вам выполнять другую работу в терминале.

    В этом примере у меня остановлены 2 команды:


    Я могу запустить bg 1 , чтобы возобновить в фоновом режиме выполнение задания №1.

    Я мог бы также сказать bg без какой-либо опции, поскольку по умолчанию выбирается работа №1 в списке.

    Команда Linux

    fg

    Когда команда выполняется в фоновом режиме, потому что вы запустили ее с и в конце (например: вверху и или потому что вы поместили ее в фоновый режим с помощью команды bg ), вы можете вывести его на передний план с помощью fg .

    Работает

      фг
      

    возобновит на переднем плане последнее приостановленное задание.

    Вы также можете указать, какое задание вы хотите возобновить на переднем плане, передав номер задания, который можно получить с помощью команды jobs .

    При выполнении fg 2 возобновится работа № 2:

    Linux

    type command

    Команда может быть одного из этих 4 типов:

    • исполняемый файл
    • оболочка встроенная программа
    • функция оболочки
    • псевдоним

    Команда type может помочь разобраться в этом, если мы хотим знать или нам просто любопытно.Он расскажет вам, как будет интерпретироваться команда.

    Вывод будет зависеть от используемой оболочки. Это Bash:

    Это ЗШ:

    Это рыба:


    Одна из самых интересных вещей здесь заключается в том, что для псевдонимов он скажет вам, к чему это алиасинг. Вы можете увидеть псевдоним ll в случае Bash и Zsh, но Fish предоставляет его по умолчанию, поэтому он скажет вам, что это встроенная функция оболочки.

    Linux

    which command

    Предположим, у вас есть команда, которую вы можете выполнить, потому что она находится в пути оболочки, но вы хотите знать, где она находится.

    Вы можете сделать это, используя , который . Команда вернет путь к указанной команде:


    , который будет работать только с исполняемыми файлами, хранящимися на диске, но не псевдонимами или встроенными функциями оболочки.

    Linux

    nohup команда

    Иногда вам нужно запустить долгоживущий процесс на удаленном компьютере, а затем вам нужно отключиться.

    Или вы просто хотите предотвратить остановку команды при возникновении сетевых проблем между вами и сервером.

    Чтобы запустить команду даже после выхода из системы или закрытия сеанса на сервере, используйте команду nohup .

    Используйте nohup <команда> , чтобы процесс продолжал работать даже после выхода из системы.

    Команда Linux

    xargs

    Команда xargs используется в оболочке UNIX для преобразования ввода из стандартного ввода в аргументы команды.

    Другими словами, при использовании xargs вывод команды используется как ввод другой команды.

    Вот синтаксис, который вы будете использовать:

      command1 | xargs command2
      

    Мы используем канал ( | ) для передачи вывода на xargs . Это позаботится о запуске команды command2 , используя вывод command1 в качестве аргумента (ов).

    Приведем простой пример. Вы хотите удалить определенные файлы из каталога. Эти файлы перечислены в текстовом файле.

    У нас 3 файла: файл1 , файл2 , файл3 .

    В todelete.txt у нас есть список файлов, которые мы хотим удалить, в этом примере file1 и file3 :

    Мы направим вывод cat todelete.txt команде rm через xargs .

    Таким образом:

      кот todelete.txt | xargs rm
      

    Вот результат, файлы, которые мы перечислили, теперь удалены:

    Это работает так: xargs будет запускать rm 2 раза, по одному для каждой строки, возвращаемой cat .

    Это простейшее использование xargs . Есть несколько вариантов, которые мы можем использовать.

    Один из самых полезных, на мой взгляд (особенно при изучении xargs ), это -p . Использование этой опции заставит xargs распечатать запрос подтверждения с действием, которое он собирается предпринять:

    Параметр -n позволяет указать xargs выполнять одну итерацию за раз, поэтому вы можете индивидуально подтвердить их с помощью -p .Здесь мы говорим xargs выполнять одну итерацию за раз с -n1 :

    Вариант -I — еще один широко используемый вариант. Это позволяет вам поместить вывод в заполнитель, а затем вы можете делать разные вещи.

    Один из них — запуск нескольких команд:

      command1 | xargs -I% / bin / bash -c 'command2%; command3% '
      

    Вы можете поменять местами символ % , который я использовал выше, на что-нибудь еще — это переменная.

    Команда редактора Linux

    vim

    vim очень популярный редактор файлов , особенно среди программистов. Он активно развивается и часто обновляется, и вокруг него существует большое сообщество. Есть даже конференция Vim!

    vi в современных системах — это просто псевдоним для vim , что означает vi i m .

    Вы запускаете его, запустив vi в командной строке.

    Вы можете указать имя файла во время вызова для редактирования этого конкретного файла:

      vi test.txt
      

    Вы должны знать, что у Vim есть 2 основных режима:

    • команда (или нормальный ) режим
    • вставка режим

    Когда вы запускаете редактор, вы находитесь в командном режиме. Вы не можете вводить текст, как вы ожидаете от редактора на основе графического интерфейса. Вы должны войти в режим вставки .

    Это можно сделать, нажав клавишу i . Как только вы это сделаете, в нижней части редактора появится слово - INSERT - :

    Теперь вы можете набирать текст и заполнять экран содержимым файла:

    Вы можете перемещаться по файлу с помощью клавиш со стрелками или клавиш h j k l . h-l для левого-правого, j-k для нижнего-верхнего.

    Когда вы закончите редактирование, вы можете нажать клавишу esc , чтобы выйти из режима вставки и вернуться в командный режим .


    На этом этапе вы можете перемещаться по файлу, но не можете добавлять в него содержимое (и будьте осторожны при нажатии клавиш, поскольку они могут быть командами).

    Одна вещь, которую вы можете сделать сейчас, — это сохранить файл . Вы можете сделать это, нажав : (двоеточие), затем w .

    Вы можете сохранить и выйти из , нажав : , затем w и q : : wq

    Вы можете выйти из без сохранения , нажав : , затем q и ! : : q!

    Вы можете отменить и отредактировать, перейдя в командный режим и нажав и .Вы можете повторить (отменить отмену), нажав ctrl-r .

    Это основы работы с Vim. Отсюда начинается кроличья нора, в которую мы не можем углубиться в этом небольшом введении.

    Я упомяну только те команды, которые помогут вам начать редактирование с помощью Vim:

    • нажатие клавиши x удаляет текущий выделенный символ
    • нажатие переходит в конец текущей выбранной строки
    • нажмите 0 для перехода в начало строки
    • перейдите к первому символу слова и нажмите d , а затем w , чтобы удалить это слово.Если вы последуете за ним с e вместо w , пробел перед следующим словом сохранится
    • используйте число от d до w , чтобы удалить более 1 слова, например, используйте d3w , чтобы удалить 3 слова вперед
    • нажмите d , а затем d , чтобы удалить всю строку. Нажмите d , а затем $ , чтобы удалить всю строку с того места, где находится курсор, до конца

    Чтобы узнать больше о Vim, я могу порекомендовать Vim FAQ.Вы также можете запустить команду vimtutor , которая уже должна быть установлена ​​в вашей системе и очень поможет вам начать исследование vim .

    Команда редактора Linux

    emacs

    emacs — отличный редактор, который исторически считается редактором для систем UNIX. Известно, что vi vs emacs «огненные войны» и горячие дискуссии вызвали у разработчиков по всему миру много непродуктивных часов.

    emacs очень мощный. Некоторые люди используют его весь день как своего рода операционную систему (https://news.ycombinator.com/item?id=1

  • 58). Здесь мы просто поговорим об основах.

    Вы можете открыть новый сеанс emacs, просто вызвав emacs :

    пользователей macOS, остановитесь на секунду. Если вы работаете в Linux, проблем нет, но macOS не поставляет приложения, использующие GPLv3, и каждая встроенная команда UNIX, обновленная до GPLv3, не обновлялась.

    Хотя есть небольшая проблема с командами, которые я перечислял до сих пор, в этом случае использование версии emacs 2007 года не совсем то же самое, что использование версии с 12 годами улучшений и изменений.

    Это не проблема с обновленным Vim. Чтобы исправить это, запустите brew install emacs и запустите emacs будет использовать новую версию от Homebrew (убедитесь, что у вас установлен Homebrew).

    Вы также можете редактировать существующий файл, вызвав emacs :

    Теперь вы можете начать редактирование.Когда вы закончите, нажмите ctrl-x , а затем ctrl-w . Подтверждаете папку:

    , и Emacs сообщает, что файл существует, и спрашивает, следует ли его перезаписать:

    Ответьте y , и вы получите подтверждение успеха:


    Вы можете выйти из Emacs, нажав ctrl-x , а затем ctrl-c .
    Или ctrl-x , за которым следует c (удерживайте нажатой клавишу ctrl ).

    Об Emacs нужно много знать, конечно, больше, чем я могу написать в этом небольшом введении.Я рекомендую вам открыть Emacs и нажать ctrl-h r , чтобы открыть встроенное руководство, и ctrl-h t , чтобы открыть официальное руководство.

    Команда редактора Linux

    nano

    nano — это удобный редактор для начинающих.

    Запустите его, используя nano .

    Вы можете напрямую вводить символы в файл, не беспокоясь о режимах.

    Вы можете выйти без редактирования, используя ctrl-X .Если вы редактировали буфер файла, редактор запросит у вас подтверждение, и вы сможете сохранить изменения или отменить их.

    Справка внизу показывает команды клавиатуры, которые позволяют работать с файлом:


    pico более или менее то же самое, хотя nano — это GNU-версия pico , которая в какой-то момент истории не была с открытым исходным кодом. Клон nano был создан для удовлетворения требований лицензии на операционную систему GNU.

    Команда Linux

    whoami

    Введите whoami , чтобы распечатать имя пользователя, который в данный момент вошел в терминальный сеанс:

    Примечание: это отличается от команды who am i , которая выводит дополнительную информацию

    Команда Linux

    who

    Команда who отображает пользователей, вошедших в систему.

    Если вы не используете сервер, к которому имеют доступ несколько человек, скорее всего, вы будете единственным пользователем, вошедшим в систему несколько раз:

    Почему несколько раз? Потому что каждая открытая оболочка будет считаться доступом.

    Вы можете увидеть имя используемого терминала и время / день начала сеанса.

    Флаги -aH сообщают , кто отображает дополнительную информацию, включая время простоя и идентификатор процесса терминала:

    Специальная команда who am i выведет список деталей текущего сеанса терминала:

    Команда Linux

    su

    Когда вы вошли в оболочку терминала с одним пользователем, вам может потребоваться переключиться на другого пользователя.

    Например, вы вошли в систему как root для выполнения некоторого обслуживания, но затем вы хотите переключиться на учетную запись пользователя.

    Это можно сделать с помощью команды su :

      su <имя пользователя>
      

    Например: su flavio .

    Если вы вошли в систему как пользователь, запуск su без каких-либо других действий предложит вам ввести пароль пользователя root , так как это поведение по умолчанию.


    su запустит новую оболочку от имени другого пользователя.

    Когда вы закончите, набрав exit в оболочке, вы закроете эту оболочку и вернетесь обратно в оболочку текущего пользователя.

    Команда Linux

    sudo

    sudo обычно используется для запуска команды от имени пользователя root.

    У вас должна быть возможность использовать sudo , и как только вы это сделаете, вы можете запускать команды от имени пользователя root, введя пароль пользователя (, а не пароль пользователя root).

    Разрешения легко настраиваются, что особенно удобно в многопользовательской серверной среде.Некоторым пользователям может быть предоставлен доступ к запуску определенных команд через sudo .

    Например, вы можете отредактировать файл конфигурации системы:

      судо нано / и т. Д. / Хосты
      

    , который в противном случае не удалось бы сохранить, поскольку у вас нет для него разрешений
    .

    Вы можете запустить sudo -i , чтобы запустить оболочку от имени пользователя root:

    Вы можете использовать sudo для выполнения команд от имени любого пользователя. root по умолчанию, но используйте опцию -u , чтобы указать другого пользователя:

      sudo -u flavio ls / Пользователи / flavio
      

    Linux

    passwd команда

    Пользователям Linux назначен пароль.Вы можете изменить пароль с помощью команды passwd .

    Здесь возможны две ситуации.

    Первый — это когда вы хотите изменить свой пароль. В этом случае вы набираете:

      пароль
      

    , и в интерактивном режиме вас попросят ввести старый пароль, а затем вам будет предложено ввести новый:

    .

    Когда вы root (или имеете привилегии суперпользователя), вы можете установить имя пользователя, для которого вы хотите изменить пароль:

      passwd <имя пользователя> <новый пароль>
      

    В этом случае вводить старую не нужно.

    Команда Linux

    ping

    Команда ping проверяет связь с конкретным сетевым хостом в локальной сети или в Интернете.

    Вы используете его с синтаксисом ping , где может быть доменным именем или IP-адресом.

    Вот пример pinging google.com :


    Команда отправляет запрос серверу, а сервер возвращает ответ.

    ping по умолчанию отправляет запрос каждую секунду.Он будет продолжать работать, пока вы не остановите его с помощью ctrl-C , если только вы не передадите количество раз, которое вы хотите попробовать с параметром -c : ping -c 2 google.com .

    Как только ping остановлен, он напечатает некоторую статистику о результатах: процент потерянных пакетов и статистику о производительности сети.

    Как вы можете видеть, на экране отображается IP-адрес хоста и время, которое потребовалось для получения ответа.

    Не все серверы поддерживают пинг, в случае истечения времени ожидания запроса:

    Иногда это делается специально, чтобы «спрятать» сервер или просто уменьшить нагрузку.Пакеты ping также могут быть отфильтрованы межсетевыми экранами.

    ping работает с использованием протокола ICMP ( Internet Control Message Protocol ), протокола сетевого уровня, подобного TCP или UDP.

    Запрос отправляет пакет на сервер с сообщением ECHO_REQUEST , и сервер возвращает сообщение ECHO_REPLY . Я не буду вдаваться в подробности, но это основная концепция.

    Пинг хоста полезен, чтобы узнать, доступен ли хост (предположим, что он реализует эхо-запрос) и насколько он удален с точки зрения того, сколько времени потребуется, чтобы вернуться к вам.

    Обычно, чем ближе сервер географически, тем меньше времени потребуется, чтобы вернуться к вам. Простые законы физики приводят к тому, что большее расстояние приводит к большей задержке в кабелях.

    Команда Linux

    traceroute

    Когда вы пытаетесь связаться с хостом в Интернете, вы проходите через домашний маршрутизатор. Затем вы подключаетесь к сети вашего интернет-провайдера, которая, в свою очередь, проходит через свой собственный восходящий сетевой маршрутизатор, и так далее, пока вы, наконец, не достигнете хоста.

    Вы когда-нибудь хотели знать, через какие шаги проходят ваши пакеты?

    Для этого создана команда traceroute .

    Вы вызываете

      traceroute <хост>
      

    , и он будет (медленно) собирать всю информацию во время прохождения пакета.

    В этом примере я попытался зайти в свой блог с помощью traceroute flaviocopes.com :

    Не каждый пройденный маршрутизатор возвращает нам информацию. В этом случае traceroute напечатает * * * . В противном случае мы можем увидеть имя хоста, IP-адрес и некоторый индикатор производительности.

    Для каждого маршрутизатора мы можем увидеть 3 образца, что означает, что traceroute пытается по умолчанию 3 раза, чтобы получить хорошее представление о времени, необходимом для его достижения.

    Вот почему выполнение traceroute занимает столько времени по сравнению с простым выполнением эхо-запроса на этот хост.

    Этот номер можно настроить с помощью параметра -q :

      traceroute -q 1 flaviocopes.com
      

    Linux

    clear command

    Введите clear , чтобы очистить все предыдущие команды, которые выполнялись в текущем терминале.

    Экран очистится, и вы увидите подсказку вверху:

    Примечание: у этой команды есть удобный ярлык: ctrl-L

    Как только вы это сделаете, вы потеряете доступ к прокрутке, чтобы увидеть результат предыдущих введенных команд.

    Таким образом, вы можете вместо этого использовать clear -x , который по-прежнему очищает экран, но позволяет вернуться к предыдущей работе путем прокрутки вверх.

    Команда Linux

    history

    Каждый раз, когда вы запускаете команду, она сохраняется в истории.

    Вы можете отобразить всю историю, используя:

      история
      

    Это показывает историю с числами:

    Вы можете использовать синтаксис ! <Номер команды> , чтобы повторить команду, сохраненную в истории. В приведенном выше примере ввод ! 121 повторит команду ls -al | wc -l команда.

    Обычно в истории хранятся последние 500 команд.

    Вы можете объединить это с grep , чтобы найти команду, которую вы выполнили:

      история | grep docker
      


    Чтобы очистить историю, запустите history -c .

    Команда Linux

    export

    Команда export используется для экспорта переменных в дочерние процессы.

    Что это значит?

    Предположим, у вас есть переменная TEST, определенная таким образом:

      TEST = "тест"
      

    Вы можете распечатать его значение, используя echo $ TEST :

    Но если вы попытаетесь определить сценарий Bash в файле script.sh с помощью указанной выше команды:

    Потом при установке chmod u + x скрипт.sh , и вы выполняете этот сценарий с ./script.sh , строка echo $ TEST ничего не напечатает!

    Это связано с тем, что в Bash переменная TEST была определена локально для оболочки. При выполнении сценария оболочки или другой команды для ее выполнения запускается подоболочка, которая не содержит текущих локальных переменных оболочки.

    Чтобы переменная была доступна там, нам нужно определить TEST не таким образом:

      TEST = "тест"
      

    а так:

      экспорт TEST = "test"
      

    Попробуйте это и запустите ./script.sh теперь должен печатать "test":


    Иногда нужно что-то добавить к переменной. Это часто делается с помощью переменной PATH . Вы используете этот синтаксис:

      экспорт ПУТЬ = $ ПУТЬ: / новый / путь
      

    Обычно используется экспорт , когда вы создаете новые переменные таким образом. Но вы также можете использовать его при создании переменных в файлах конфигурации .bash_profile или .bashrc с помощью Bash или в .zshenv с ЗШ.

    Чтобы удалить переменную, используйте опцию -n :

      экспорт -n ТЕСТ
      

    Вызов export без какой-либо опции отобразит все экспортируемые переменные.

    Команда Linux

    crontab

    Задания Cron - это задания, запуск которых запланирован через определенные промежутки времени. У вас может быть команда, выполняющая что-то каждый час, каждый день или каждые две недели. Или по выходным.

    Они очень мощные, особенно при использовании на серверах для обслуживания и автоматизации.

    Команда crontab - это точка входа для работы с заданиями cron.

    Первое, что вы можете сделать, это изучить, какие задания cron вы определили:

      crontab -l
      

    У вас может и не быть, как у меня:

    Бег

      crontab -e
      

    для редактирования заданий cron и добавления новых.

    По умолчанию открывается редактор по умолчанию, которым обычно является vim . Мне больше нравится nano .Вы можете использовать эту строку для использования другого редактора:

      РЕДАКТОР = nano crontab -e
      

    Теперь вы можете добавлять по одной строке для каждого задания cron.

    Синтаксис определения заданий cron пугает. Вот почему я обычно использую веб-сайт, чтобы помочь мне создать его без ошибок: https://crontab-generator.org/

    Вы выбираете временной интервал для задания cron и вводите команду для выполнения.

    Я решил запустить сценарий, расположенный в / Users / flavio / test.sh каждые 12 часов. Это строка crontab, которую мне нужно запустить:

      * * / 12 * * * /Users/flavio/test.sh> / dev / null 2> & 1
      

    Я запускаю crontab -e :

      РЕДАКТОР = nano crontab -e
      

    , и я добавляю эту строку, затем нажимаю ctrl-X и нажимаю y для сохранения.

    Если все в порядке, задание cron настроено:

    Как только это будет сделано, вы можете увидеть список активных заданий cron, запустив:

      crontab -l
      

    Вы можете снова удалить задание cron, запустив crontab -e , удалив строку и выйдя из редактора:

    Linux

    uname команда

    Вызов uname без каких-либо параметров вернет кодовое имя операционной системы:

    Параметр m показывает имя оборудования ( x86_64 в этом примере), а параметр p печатает имя архитектуры процессора ( i386 в этом примере):

    Параметр s печатает имя операционной системы. r печатает выпуск, а v печатает версию:

    Параметр n печатает сетевое имя узла:

    Опция a распечатывает всю доступную информацию:

    В macOS вы также можете использовать команду sw_vers , чтобы распечатать дополнительную информацию об операционной системе macOS. Обратите внимание, что это отличается от версии Darwin (ядро), которая выше - 19.6.0 .

    Дарвин - это имя ядра macOS. Ядро - это «ядро» операционной системы, а операционная система в целом называется macOS. В Linux ядром является Linux, а имя операционной системы - GNU / Linux (хотя мы все называем его «Linux»).

    Команда Linux

    env

    Команда env может использоваться для передачи переменных среды без их установки во внешней среде (текущая оболочка).

    Предположим, вы хотите запустить приложение Node.js и установить для него переменную USER .

    Вы можете запустить

      env USER = узел flavio app.js
      

    и переменная среды USER будут доступны из приложения Node.js через интерфейс Node process.env .

    Вы также можете запустить команду, очищающую все уже установленные переменные среды, используя опцию -i :

      env -i node app.js
      

    В этом случае вы получите сообщение об ошибке env: node: Нет такого файла или каталога , потому что команда node недоступна, поскольку переменная PATH , используемая оболочкой для поиска команд в общих путях, является отключено.

    Значит вам нужно передать полный путь к узлу программа :

      env -i / usr / local / bin / node app.js
      

    Попробуйте с помощью простого файла app.js с таким содержанием:

      консоль.журнал (process.env.NAME)
    console.log (process.env.PATH)
      

    Вы увидите вывод как

      undefined
    неопределенный
      

    Вы можете передать переменную env:

      env -i ИМЯ = узел flavio app.js
      

    , а на выходе будет

      Флавио
    неопределенный
      

    Удаление опции -i сделает ПУТЬ снова доступным внутри программы:

    Команду env также можно использовать для распечатки всех переменных среды.Если запустить без параметров:

      ок.
      

    он вернет список установленных переменных среды, например:

      НАЧАЛЬНАЯ СТРАНИЦА = / Пользователи / flavio
    LOGNAME = flavio
    ПУТЬ = / usr / local / bin: / usr / bin: / bin: / usr / sbin: / sbin: / Library / Apple / usr / bin
    PWD = / Пользователи / flavio
    ОБОЛОЧКА = / usr / local / bin / fish
      

    Вы также можете сделать переменную недоступной в программе, которую вы запускаете, используя опцию -u . Например, этот код удаляет переменную HOME из командной среды:

      env -u приложение HOME node.js
      

    Команда Linux

    printenv

    Вот краткое руководство по команде printenv , используемой для печати значений переменных среды

    В любой оболочке имеется большое количество переменных среды, устанавливаемых либо системой, либо вашими собственными сценариями оболочки и конфигурацией.

    Вы можете распечатать их все на терминале с помощью команды printenv . Результат будет примерно таким:

      НАЧАЛЬНАЯ СТРАНИЦА = / Пользователи / flavio
    LOGNAME = flavio
    ПУТЬ = / usr / local / bin: / usr / bin: / bin: / usr / sbin: / sbin: / Library / Apple / usr / bin
    PWD = / Пользователи / flavio
    ОБОЛОЧКА = / usr / local / bin / fish
      

    с еще несколькими строками, как правило.

    Вы можете добавить имя переменной в качестве параметра, чтобы отображалось только это значение переменной:

      printenv ПУТЬ
      

    Заключение

    Спасибо, что прочитали это руководство.

    Надеюсь, это вдохновит вас узнать больше о Linux и его возможностях. Это вечнозеленое знание, которое в ближайшее время не устареет.

    Помните, что вы можете скачать это руководство в формате PDF / ePUB / Mobi, если хотите!

    Я каждый день публикую уроки программирования на моем сайте flaviocopes.com, если вы хотите ознакомиться с более интересным подобным контентом.

    Вы можете связаться со мной в Twitter @flaviocopes.

    Linux Учебное пособие для начинающих | Пошаговое руководство по Linux 2021 | Mindmajix

    В индустрии программного обеспечения общеизвестным фактом является то, что операционная система (ОС) является наиболее важным компонентом компьютера. Это основное программное обеспечение, которое управляет всем программным и аппаратным обеспечением компьютера. Существуют разные типы операционных систем, и Linux Tutorial - одна из них.

    Учебное пособие по Linux для начинающих

    В этом руководстве по Linux мы начнем с основ Linux и изучим все основных концепций Linux , о которых должен знать профессионал Linux. Теперь давайте посмотрим на компоненты этого руководства.

    Если вы хотите стать успешным разработчиком Linux и построить карьеру в этой области, посетите- Mndmajix глобальное онлайн-обучение Платформа : « Сертифицированный курс Linux » этот курс поможет вам достичь совершенства в этот домен.

    Что такое Linux?

    Термин « с открытым исходным кодом » возник в контексте разработки программного обеспечения для обозначения особого подхода к созданию компьютерных программ.

    ОС с открытым исходным кодом в основном относится к типу компьютерного программного обеспечения, правообладатель которого предоставляет пользователям во всем мире право распространять (кому угодно с любой целью), изменять и изучать программное обеспечение.

    Linux - это разработанная сообществом операционная система с открытым исходным кодом для серверов, компьютеров, мэйнфреймов, встроенных и мобильных устройств.

    Почти все основные вычислительные платформы, включая SPARC, ARM и x86, поддерживают Linux, что делает его одной из наиболее широко поддерживаемых операционных систем.

    Дистрибутив Linux, также известный как дистрибутив Linux, представляет собой версию операционной системы Linux с открытым исходным кодом и упакован с различными другими компонентами, такими как инструменты управления, программы установки и дополнительное программное обеспечение, такое как гипервизор KVM.

    RHEL (Red Hat Enterprise Linux) от RedHat - один из самых популярных дистрибутивов Linux.RHEL разработан специально для бизнес-рынка.

    Linux против. Окна

    В этом разделе мы сравним Linux с другой основной операционной системой, Windows. Windows - это группа из нескольких семейств ОС, и каждая из ее версий - графический интерфейс пользователя (графический интерфейс пользователя) с рабочим столом, который позволяет пользователям просматривать папки и файлы в этой ОС.Ниже приведена таблица, в которой показано сравнение Windows и Linux.

  • Команда

    Описание

    cd или cd ~

    Перейти в HOME каталог

    cd..

    Перейти на один уровень вверх

    cd

    Для перехода в конкретный каталог

    cd /

    Перейти в корневой каталог

    ОС Windows

    ОС Linux

    ОС Windows

    очень проста в использовании, и двумя основными характеристиками ее дизайна являются простота и удобство использования.

    Обычный пользователь должен получить некоторые знания о том, как использовать ОС Linux.А для выполнения повседневных операций пользователям необходимо глубокое понимание базовой системы.

    Windows менее надежна по сравнению с Linux.

    Linux отличается высокой степенью безопасности и надежности. Больше внимания уделяется времени безотказной работы, безопасности системы и управлению процессами.

    Большинство игр, утилит и программ для Windows являются коммерческими.

    Большинство игр, утилит и программ для Linux имеют открытый исходный код и бесплатны.

    Windows предоставляет интерактивные и интегрированные справочные системы. Кроме того, существует множество книг для всех уровней квалификации.

    Для Linux доступна массовая онлайн-поддержка. Это происходит через большое сообщество веб-сайтов и форумов пользователей.

    ОС Windows обычно используется начинающими пользователями, геймерами и бизнес-пользователями, которые зависят от программного обеспечения Microsoft.

    Различные академические, научные и корпоративные компании любого размера используют Linux.Эта ОС используется для питания серверов и машин разработки в NASA, Twitter, Facebook, Google и других ведущих организациях.

    Установка Windows очень проста, но требует времени.

    Установка ОС Linux

    связана с трудностями, но эта ОС может выполнять сложные задачи быстрее.

    Какие возможности Linux?

    За прошедшие годы Linux заработал репутацию очень эффективной и высокопроизводительной системы.Его функции покажут вам, насколько эффективна эта операционная система. Теперь давайте рассмотрим основные функции ОС Linux.

    1. Портативность

    Это означает, что программное обеспечение может одинаково работать на различном оборудовании. Здесь порт означает изменение программного обеспечения и возможность его адаптации для работы в другой системе. ОС Linux может работать в любой аппаратной среде.

    2. Бесплатное программное обеспечение

    Linux можно бесплатно загрузить из Интернета. Бесплатные обновления, никаких затрат на пользователя, никаких регистрационных сборов и бесплатный исходный код, если вы хотите изменить поведение своей системы.

    3. Универсальность и надежность

    Модель безопасности, используемая в Linux, зависит от представления UNIX о безопасности, и, как известно, ее качество доказано. Это причина того, что многие задачи выполняются ночью или автоматически планируются на другие спокойные моменты, что приводит к большей доступности в случае более загруженных периодов и более сбалансированному использованию оборудования.

    4. Многопользовательская система

    Linux - многопользовательская система. Это означает, что к системным ресурсам, таким как прикладные программы, оперативная память, память, могут обращаться одновременно несколько пользователей.

    5. Иерархическая файловая система

    Linux предоставляет стандартную файловую структуру, в которой пользовательские файлы / файлы упорядочены.

    6. Мультипрограммирование

    Мультипрограммирование поддерживается Linux. Мультипрограммирование означает возможность одновременного запуска нескольких приложений.

    Каковы преимущества Linux?

    Лучшими достоинствами Linux по сравнению с другими операционными системами являются его надежность, цена и свобода, которую он предоставляет вам.Теперь пришло время узнать об основных преимуществах ОС Linux .

    1. Бесплатно

    Это одно из основных преимуществ Linux, поскольку вы можете бесплатно загрузить большинство дистрибутивов Linux из Интернета. Кроме того, дистрибутивы Linux можно бесплатно загрузить и легально установить на любое количество компьютеров и бесплатно передавать другим людям.

    2. Безопасность

    Большинство вирусов, атакующих операционную систему, разрабатываются с помощью программной среды Active X, а в Linux ее нет.Тот же принцип применяется к различным другим вирусам, таким как черви, трояны или шпионское ПО.

    3. Стабильность
    Системы

    Linux очень стабильны и не зависают, как другие системы.

    4. Открытый исходный код

    Вы можете добавлять новые функции, удалять то, что вам не нравится, и настраивать некоторые функции. Вы можете сделать это, потому что исходный код доступен для общественности, и они могут вносить соответствующие изменения и настраивать программное обеспечение в соответствии со своими требованиями.

    5. Поддержка языков программирования

    Почти все языки программирования (Ruby, Perl, Java, C / C ++, Python и др.) Поддерживаются Linux. Он также предлагает множество приложений, полезных для программирования.

    Unix против Linux

    В чем разница между Unix и Linux?

    Linux - более известная ОС в современном мире, чем Unix, но у последней есть свои пользователи. Unix - это семейство многопользовательских, многозадачных операционных систем, аналогичных Windows и DOS, и эта ОС используется на рабочих станциях, интернет-серверах и ПК несколькими крупными организациями, такими как HP, Intel, Solaris и т. Д.

    В этом разделе мы рассмотрим ключевые различия между Unix и Linux.

    Unix - это проприетарная ОС, разработанная Bell Labs. Он работает в основном с CLI (интерфейс командной строки).

    Кроме того, Unix не так гибок, как Linux, и меньше совместим с различными типами оборудования. Для его установки требуется четко определенное и строгое оборудование и работает только на определенных машинах с процессором.

    Установка Unix связана с высокими затратами по сравнению с Linux, поскольку первая требует специального оборудования и может работать только на определенных процессорах ЦП.

    ОС Unix не переносима, и количество ее дистрибутивов или версий меньше по сравнению с Linux. Исходный код Unix недоступен в свободном доступе, и он поддерживает меньшее количество файловых систем по сравнению с Linux.

    ОС Linux основана на Unix и в основном представляет собой ядро ​​с графическим интерфейсом пользователя (GUI), например ОС Windows . У него также есть интерфейс командной строки, и это необязательно. В отличие от Unix, Linux можно свободно скачивать и распространять. Кроме того, существуют платные дистрибутивы для Linux, такие как Red Hat Linux, и они обычно дешевле, чем Windows.

    Linux совместим практически со всеми аппаратными системами и довольно гибок.

    Вы можете установить и запустить Linux на чем угодно, кроме процессора. Исходный код Linux доступен бесплатно как это бесплатная ОС.

    По сравнению с Unix установка Linux очень экономична. Linux обладает высокой масштабируемостью и поддерживает огромный набор файловых систем . По сравнению с Unix существует несколько версий или дистрибутивов Linux.

    Что я могу делать в Linux?

    После того, как вы загрузите систему Linux на свой компьютер, вы будете засыпаны всеми новыми замечательными вещами, которые вы можете делать с этой операционной системой.

    В этом поле будут рассказываться о некоторых проектах, которые вы можете выполнять с помощью этой замечательной ОПЕРАЦИОННОЙ СИСТЕМЫ . Вы можете быть удивлены его универсальностью.

    а. Ведущий фотоальбом

    Zoph - это программа, которая может хорошо работать в Linux, которая позволит вам делиться своими личными фотографиями с друзьями и семьей.

    Он позволит вам импортировать вашу коллекцию фотографий либо через файл Tar или Zip, организовать их в альбомы, которые вы хотите, а затем установить атрибуты для автора и географического региона, прежде чем ваши друзья и семья увидят их.

    Это отличный способ продемонстрировать свои фотографии тем, кого вы любите, не беспокоясь о том, что другие могут заполучить их, если в этом нет необходимости.

    г. Построить медиа-сервер

    Linux хорош в обслуживании файлов, которые хранятся вдали от компьютера, и сервер в вашем доме скоро станет важным аксессуаром для многих различных компаний.

    Мобильные телефоны, телевизоры и игровые консоли быстро развивают способность воспроизводить, отображать и читать файлы, хранящиеся на ПК с медиацентром, и Linux - идеальное программное обеспечение, которое вы можете использовать для этого.

    Все, что вам понадобится, это компьютер с относительно низким энергопотреблением, а также хорошее хранилище и хорошее место для всего этого.

    г. Создать музыку

    В системе Linux вы сможете использовать программу Rosegarden, которая поможет вам создавать аккорды, мелодии и треки ударных с помощью внутренних инструментов, прежде чем сохранять все это в файл.

    Чтобы использовать эту систему, вы будете использовать Rosegarden для связи с вашим аудиооборудованием вместе с другими аудио приложениями.

    г. Написать интерактивную художественную литературу

    Вы когда-нибудь хотели стать автором, но хотели попробовать что-то немного другое? Система Linux сможет вам в этом помочь.

    Текстовые приключенческие игры были действительно забавными и популярными, когда компьютеры только появились, и они начинают набирать популярность, поскольку мобильные устройства используются все чаще.

    Также не обязательно быть гуру кодирования, чтобы писать свои истории, так как это будет сделано с использованием формы вашего естественного языка.

    [Связанная статья : Лучший мониторинг инструментов в Linux]

    Основные причины использования Linux

    На рынке представлено множество различных программ, которые вы можете использовать для своих программных нужд. У всех из них будут вещи, которые вы полюбите, и другие вещи, которые вам могут не понравиться.

    Не будет программы, в которой было бы все, что вы когда-либо хотели, потому что у каждого есть свои предпочтения.

    Если вам нужно выбрать одну из лучших программных систем для программирования, которые вы можете получить на рынке, нет ничего лучше и с большими преимуществами, чем то, что предлагает Linux. Ниже приведены некоторые из лучших причин, по которым вам следует выбрать систему Linux, а не одну из других систем, представленных на рынке.

    1. Linux бесплатно
    2. Простота использования и установки этого продукта
    3. Коммерческая поддержка
    4. Поддержка .NET
    5. Время безотказной работы Unix
    6. Безопасность
    7. Передаваемые навыки
    8. Метизы товарные
    9. Мировое сообщество
    10. Linux Foundation
    11. Регулярные обновления

    Как видите, существует множество различных преимуществ, которые вы сможете получить от использования этой системы, особенно если вы сможете сравнить ее с другими системами, представленными на рынке.

    Как выбрать идеальный дистрибутив для системы Linux

    Дистрибутив - это специальный пакет поставщика операционной системы GNU / Linux. Кроме того, дистрибутив также может представлять собой набор компонентов с открытым исходным кодом и программного обеспечения, собранных вместе. В сообществе пользователей Linux ведутся ожесточенные дискуссии о том, какой дистрибутив для Linux является лучшим.

    Рассуждения о том, какой дистрибутив лучший для новичков и новых пользователей, разнятся. Однако наш анализ касается удобства использования дистрибутива (простота использования) и внешнего вида пользовательского интерфейса (дизайна).Дистрибутивы, которые мы рассмотрим, включены в этот список, потому что они соответствуют следующим критериям.

    1. Будьте удобны для пользователя

    Это наиболее важный фактор, который мы должны учитывать. Основная причина, по которой дистрибутив должен быть удобным для пользователя, заключается в следующем; большинство пользователей привыкли просто сидеть за рабочим столом Windows или OS X и сразу же приступить к работе. Очень маловероятно, что кто-то будет использовать его часто или даже понравится, если сделать дистрибутив сложным в использовании.

    2. Приложения из коробки

    Давайте посмотрим на простой сценарий.Вы загружаете и устанавливаете дистрибутив, пытаетесь проверить свой почтовый ящик и обнаруживаете, что в дистрибутиве нет почтового клиента.

    Таким образом, вы решаете сделать это в Интернете, вы ищете веб-браузер только для того, чтобы найти пустоту. Затем вы решаете использовать свое мобильное устройство, чтобы проверить свою электронную почту и послушать музыку со своего компьютера, при этом музыкальный проигрыватель не будет.

    Для того, чтобы дистрибутив был в нашем списке нормальных, если это не хороший дистрибутив, он должен иметь предустановленные вышеупомянутые функции или приложения.Список этих готовых дистрибутивов с каждым годом становится все короче и короче, и вы, возможно, захотите проверить каждый дистрибутив на предмет конкретных потребностей вашего стандартного приложения

    .
    3. Магазин приложений

    Добавление приложения в операционную систему Linux - непростое дело; здесь на помощь приходит магазин приложений. Если учесть тот факт, что большинство пользователей сегодня привыкли к простым в установке приложениям на своих мобильных устройствах, имеет смысл, что дистрибутив без встроенного магазина приложений не будет фаворитом.

    Один из старейших магазинов приложений - синаптический. Магазины приложений упрощают пользователям добавление программного обеспечения в среду.

    4. Интерфейс

    Если вы сегодня возьмете любое современное устройство, будь то мобильный телефон, смарт-телевизор, игровая консоль и многое другое, вы заметите, что все эти устройства имеют очень современный UI (пользовательский интерфейс). Пользователи очень любят шикарный интерфейс, и рабочий стол не исключение.

    Дистрибутив должен быть привлекательным для пользователя. Он должен иметь простой в использовании, но уникальный интерфейс.Фактически, сегодня большинство пользователей выбирают дистрибутив, проверяя пользовательский интерфейс.

    Как я могу изучить Linux?

    Первое, что нужно сделать для изучения Linux, - это расставить приоритеты в своих потребностях. Поскольку Linux поставляется с множеством дистрибутивов, вы должны выбрать дистрибутив, который соответствует вашим потребностям.

    Для выбора дистрибутива вы должны знать все доступные дистрибутивы.

    Затем вы должны узнать об окружениях рабочего стола, которые вы можете использовать вместе со своим дистрибутивом Linux.Ознакомьтесь с приложениями, которые поставляются с вашей операционной системой.

    Вы должны научиться использовать Терминал, так как он присутствует во всех операционных системах Linux.

    Через терминал можно скачивать приложения и файлы. Найдите приложение Software Center, которое поставляется с вашей операционной системой.

    Это приложение поможет вам найти новые приложения, которые вы можете установить. Используя Терминал, вы можете устанавливать приложения, которых нет в Центре программного обеспечения.

    Вам необходимо ознакомиться с файловой системой и узнать, где находятся общие каталоги. Таким образом, вы сможете изучить Linux.

    [Статья по теме: Почему вы должны изучать Linux? ]

    Что такое команды Linux и как их использовать?

    Если пользователь дает компьютеру команду выполнить определенную задачу, то эта инструкция оформляется как команда.

    В этом разделе я познакомлю вас с основными, но очень важными командами Linux CLI.Эти команды предоставят вам практические знания о том, как работать с терминалом Linux из оболочки.

    • rm: Эта команда используется для удаления файлов из вашей ОС Linux.
    • locate: Используется для поиска файла в ОС Linux.
    • touch: Позволяет пользователям создавать файлы с помощью Linux CLI.
    • rmdir: Позволяет пользователям удалять существующие команды с помощью Linux CLI.
    • mkdir: Позволяет пользователям создавать новый каталог.
    • man: Используется для отображения руководства введенной команды.
    • mv: Используется для перемещения файла в другой каталог или папку.
    • cd: Позволяет пользователям переключаться между файловыми каталогами.
    • Is: Перечисляет все важные каталоги, хранящиеся в данной файловой системе.

    Что такое Linux Shell?

    Оболочка - это специальная программа в операционной системе, которая принимает команды с клавиатуры и передает их ОС для выполнения.

    Это был единственный пользовательский интерфейс, доступный в Linux. Сегодня, помимо интерфейсов командной строки, таких как оболочка, у нас также есть графические интерфейсы. Программа, известная как bash, функционирует как программа оболочки в большинстве систем Linux.

    Другими программами оболочки, которые мы можем установить в системе Linux , являются zsh, tcsh и Ksh . Программа, известная как эмулятор терминала, открывает окно и позволяет вам взаимодействовать с оболочкой.

    1. Навигация

    Для эффективного использования системы Linux вы должны ориентироваться в файловой системе и получать глубокие знания о том, что вас окружает.

    Для этого вам необходимо иметь доступ к серверу Linux. Вы также должны иметь общее представление о работе терминала и о том, как выглядят команды Linux. Вам также следует настроить неадминистративную учетную запись обычного пользователя.

    С помощью команды Pwd вы можете определить, где ваш домашний каталог находится во взаимосвязи с остальной файловой системой.

    Вы можете просмотреть содержимое каталогов с помощью команды ls. Команда, известная как cd, используется для изменения каталога путем предоставления абсолютного пути.Итак, для изучения файловой системы Linux вы можете использовать эти 3 команды.

    2. Управление процессами

    Всякий раз, когда программа запускается Linux или пользователем, Linux создает процесс. На самом деле процесс - это контейнер информации о том, что происходит и как работает эта программа.

    Если процесс Linux запускается и завершается без ошибок, все будет в порядке.

    Однако, если процесс отказывается завершиться, когда его время истекло, или если он загружает процессор, мы можем использовать несколько команд Linux, чтобы помочь восстановить функциональность процесса.

    Управляя процессом Linux, вы должны наблюдать, какие процессы выполняются, и видеть, какую часть системы Linux использует каждый процесс.

    Найдите конкретный процесс, чтобы узнать, что он делает и требуется ли какое-либо действие. Вы должны определить или изменить уровень приоритета, связанный с этим процессом.

    Если процесс ведет себя некорректно, вы можете просто прекратить его. Ниже приведены несколько команд, которые можно использовать для управления процессами Linux. Их можно ввести через интерфейс командной строки.Чтобы получить доступ к интерфейсу командной строки, просто откройте окно терминала.

    • вверху: Предоставляет информацию о текущих процессах.
    • htop: Это вроде топа, но умнее и красивее. Он представляет информацию в более понятном формате.
    • пс : Для вывода списка запущенных процессов.
    • pstree : Используется для отображения древовидной диаграммы процессов Linux, а также существующих между ними отношений.
    • who: Будет выведен список пользователей, которые в настоящее время вошли в систему Linux.
    • kill: Для завершения процесса.

    Часто задаваемые вопросы на собеседовании по Linux для начинающих

    3. Файловая система

    Все файлы и каталоги в Linux расположены в древовидной структуре. Корень файловой системы - это самый верхний каталог. Это каталог, из которого осуществляется доступ ко всем другим каталогам, и он организован в иерархическую структуру.

    Ключевыми функциями файловой системы Linux являются указание путей, дисков, разделов, каталогов, монтирования и размонтирования, расширений файлов, чувствительности к регистру, разрешений файловой системы и скрытых файлов.

    Форматы файлов, с которыми стандартный дистрибутив Linux предлагает возможность разбиения диска на разделы, следующие.

    • ext2, ext3 и ext4: Эти три файловые системы являются прогрессивной версией ext (расширенной файловой системы). ext был разработан в первую очередь для MINIX.В то время как ext2 была улучшенной версией, ext3 улучшила производительность. С появлением ext4 производительность улучшилась, а также появилось несколько дополнительных функций.
    • Журналируемая файловая система (JFS): JFS - это файловая система, разработанная IBM для ее ОС AIX. JFS отслеживает изменения в папках и файлах в файле журнала.
    • ReiserFS: ReiserFS - альтернатива ext3 с расширенными функциями и улучшенной производительностью.
    • XFS: Высокоскоростная журналируемая файловая система, предназначенная для параллельной обработки ввода-вывода.
    • Btrfs (файловая система B-Tree): Ориентирован на большую конфигурацию хранилища, систему восстановления, удобное администрирование и отказоустойчивость.
    (i) Обработка файлов

    При работе с ОС Linux важно, чтобы мы построили структуру каталогов, которая позволит нам организовать наши данные управляемым образом, не тратя много времени на поиск определенного файла. В этом разделе я дам вам знать несколько команд, которые полезны для создания файлов и управления ими.

    • mkdir : используется для создания каталога.
    • rmdir : для удаления каталога.
    • коснитесь : для создания пустого файла.
    • cp : для копирования каталога или файла.
    • mv : для перемещения каталога или файла.
    • rm : для удаления файла.
    (ii) Разрешения

    Хотя ОС Linux имеет множество функций безопасности, существует вероятность существования потенциальной уязвимости при предоставлении локального доступа.

    Это означает, что проблемы, связанные с разрешениями файлов, возникнут, если пользователь не назначит правильные разрешения для каталогов и файлов. Итак, необходимо правильно назначать разрешения, и ниже приведены способы назначения разрешений.

    [Связанная статья: Список разрешений для файлов Linux]

    Для каждого каталога и файла существует 3 группы разрешений на основе пользователей.Они приведены ниже.

    • Разрешения группы : Эти разрешения применяются только к группе пользователей, которая назначена каталогу или файлу. Эти разрешения не влияют на других пользователей.
    • Разрешения владельца : Эти разрешения применяются только к владельцу каталога или файла. Эти разрешения не повлияют на действия других пользователей.
    • Разрешения для всех пользователей : Эти разрешения применяются ко всем пользователям, существующим в системе.

    Существует 3 типа разрешений для каждого каталога или файла. Они следующие.

    • Разрешения на запись : Эти разрешения относятся к возможности пользователя записывать или изменять каталог или файл.
    • Разрешения на чтение : Эти разрешения относятся к возможности пользователя читать содержимое файла.
    • Разрешения на выполнение: Эти разрешения влияют на возможность пользователя просматривать содержимое каталога или выполнять файл.

    Разрешения можно просмотреть, проверив права доступа к каталогу или файлу в диспетчере файлов графического интерфейса.

    Карьерный путь в Linux - Работа, роли и обязанности, а также пакеты заработной платы

    Linux - одна из развивающихся ИТ-технологий и прекрасная возможность для людей, которые ищут работу на этой платформе. Его технологический ландшафт показывает, что он может многое предложить и в ближайшие годы.

    Почти каждая известная организация ищет сертифицированного инженера по Linux, поскольку в настоящее время им стало довольно сложно найти знающих и опытных кандидатов в Linux для своей компании.

    Должности сильно зависят от навыков Linux-разработчика Python, DevOps-инженера, системного администратора, системного инженера, Java-разработчика, административных должностей Linux, C ++ Developer и т. Д.

    Различные должности Linux: администратор Linux, инженер Linux, системный администратор Linux, старший инженер-программист и т. Д. Роли и обязанности администратора Linux включают обслуживание, настройку, а также установку рабочих станций и серверов Linux. Они несут ответственность за поддержание работоспособности серверов и сетевой среды.

    • Соблюдая стандарты безопасности компании, администраторы Linux должны убедиться, что они предоставляют решения, поддерживают и удовлетворяют запросы пользователей.
    • Они также несут ответственность за оценку программных и аппаратных технологий и должны постоянно обновлять информацию о системе Linux.
    • Поскольку существует множество рабочих мест в Linux, следующий вопрос, который возникает у нас, - это зарплата, предлагаемая для этих рабочих мест.
    • Если кандидат нанят в качестве разработчика программного обеспечения или системного администратора без сертификации, ожидается, что он / она будет получать долларов 100000 в год.
    • Однако люди, имеющие сертификат CompTIA Linux Certification , могут зарабатывать на 8 процентов больше, чем другие зарабатывают в той же области.
    • Таким образом, это руководство по Linux предоставит вам понимание того, что такое Linux, и поможет вам получить глубокие знания обо всех концепциях Linux.
    • Если вам интересно изучить Linux и стать в нем сертифицированным разработчиком. Тогда ознакомьтесь с нашими сертифицированными учебными курсами по Linux недалеко от ваших городов.

    Обучение Linux Хайдарабад, Обучение Linux Бангалор

    Эти курсы включают обучение под руководством инструктора, примеры использования в отрасли и практические живые проекты. Эта программа обучения сделает вас экспертом в Microsoft Azure и поможет достичь работы вашей мечты

    Список других блогов Linux:

    35 основных команд Linux, которые должен знать каждый пользователь (шпаргалка)

    Когда мы слышим о Linux, большинство людей думает о сложной операционной системе, которая используется только программистами.Но все не так страшно, как кажется.

    Linux - это целое семейство операционных систем Unix с открытым исходным кодом, основанных на ядре Linux. Сюда входят все самые популярные системы на базе Linux, такие как Ubuntu, Fedora, Mint, Debian и другие. Точнее, их называют дистрибутивами или дистрибутивами.

    С тех пор, как Linux был впервые выпущен в 1991 , он продолжал набирать популярность благодаря своей природе с открытым исходным кодом. Люди могут свободно изменять и распространять его под своим именем.

    При работе с ОС Linux вам необходимо использовать оболочку - интерфейс, который дает вам доступ к службам операционной системы. Большинство дистрибутивов Linux используют графический пользовательский интерфейс (GUI) в качестве оболочки, в основном для обеспечения простоты использования для своих пользователей.

    При этом рекомендуется использовать интерфейс командной строки (CLI), поскольку он более мощный и эффективный. Задачи, требующие многоэтапного процесса через графический интерфейс, можно выполнить за считанные секунды, введя команды в интерфейс командной строки.

    Итак, если вы планируете использовать Linux, изучение основных командных строк будет иметь большое значение. В этой статье вы узнаете 35 базовых команд Linux, которые, несомненно, помогут вам ориентироваться в Linux как новичку.

    Основные команды Linux

    Прежде чем мы перейдем к списку команд, вам нужно сначала открыть командную строку. Если вы все еще не уверены в интерфейсе командной строки, ознакомьтесь с этим руководством по интерфейсу командной строки.

    Хотя шаги могут отличаться в зависимости от используемого вами дистрибутива, обычно вы можете найти командную строку в разделе Utilities .

    Вот список основных команд Linux:

    1. Команда pwd

    Используйте команду pwd , чтобы узнать путь к текущему рабочему каталогу (папке), в котором вы находитесь. Команда вернет абсолютный (полный) путь, который, по сути, является путем ко всем каталогам, начинающимся с прямого слэш (/) . Пример абсолютного пути: / home / username .

    2. команда cd

    Для навигации по файлам и каталогам Linux используйте команду cd .Требуется либо полный путь, либо имя каталога, в зависимости от текущего рабочего каталога, в котором вы находитесь.

    Допустим, вы находитесь в / home / username / Documents и хотите перейти в Photos , подкаталог Documents . Для этого просто введите следующую команду: cd Photos .

    Другой сценарий - если вы хотите перейти в совершенно новый каталог, например, / home / username / Movies .В этом случае вам нужно ввести cd , а затем абсолютный путь к каталогу: cd / home / username / Movies .

    Есть несколько ярлыков, которые помогут вам быстро ориентироваться:

    • cd .. (с двумя точками) для перемещения на один каталог вверх
    • cd для перехода прямо в домашнюю папку
    • cd- (с дефисом) для перехода в предыдущий каталог

    Кстати, оболочка Linux чувствительна к регистру. Итак, вы должны ввести имя каталога в точности так, как оно есть.

    3. Команда ls

    Команда ls используется для просмотра содержимого каталога. По умолчанию эта команда отображает содержимое вашего текущего рабочего каталога.

    Если вы хотите увидеть содержимое других каталогов, введите ls , а затем путь к каталогу. Например, введите ls / home / username / Documents , чтобы просмотреть содержимое Documents .

    Есть варианты, которые можно использовать с командой ls :

    • ls -R также выведет список всех файлов в подкаталогах
    • ls -a покажет скрытые файлы
    • ls -al выведет список файлов и каталогов с подробной информацией, такой как разрешения, размер, владелец и т. Д.

    4. Команда cat

    cat (сокращение от concatenate) - одна из наиболее часто используемых команд в Linux. Он используется для вывода списка содержимого файла на стандартный вывод (sdout). Чтобы запустить эту команду, введите cat , а затем имя файла и его расширение. Например: cat file.txt .

    Вот и другие способы использования команды cat :

    • cat> filename создает новый файл
    • cat имя_файла1 имя_файла2> имя_файла3 объединяет два файла (1 и 2) и сохраняет их вывод в новом файле (3)
    • для преобразования файла в верхний или нижний регистр, cat имя_файла | tr a-z A-Z> вывод.txt

    5. Команда cp

    Используйте команду cp для копирования файлов из текущего каталога в другой каталог. Например, команда cp scenery.jpg / home / username / Pictures создаст копию scenery.jpg (из вашего текущего каталога) в каталог Pictures .

    6. Команда mv

    В основном команда mv используется для перемещения файлов, хотя ее также можно использовать для переименования файлов.

    Аргументы в mv аналогичны команде cp. Вам нужно ввести mv , имя файла и каталог назначения. Например: mv file.txt / home / username / Documents .

    Для переименования файлов используется команда Linux: mv oldname.ext newname.ext

    7. Команда mkdir

    Используйте команду mkdir для создания нового каталога - если вы наберете mkdir Music , он создаст каталог с именем Music .

    Есть еще команд mkdir :

    • Чтобы создать новый каталог внутри другого каталога, используйте эту базовую команду Linux mkdir Music / Newfile
    • используйте опцию p (родительские) для создания каталога между двумя существующими каталогами. Например, mkdir -p Music / 2020 / Newfile создаст новый файл «2020».

    8. Команда rmdir

    Если вам нужно удалить каталог, используйте команду rmdir .Однако rmdir позволяет удалять только пустые каталоги.

    9. Команда rm

    Команда rm используется для удаления каталогов и содержимого в них. Если вы хотите только удалить каталог - в качестве альтернативы rmdir - используйте rm -r .

    Примечание : Будьте очень осторожны с этой командой и дважды проверьте, в каком каталоге вы находитесь. Это удалит все, и отмены не будет.

    10. сенсорная команда

    Команда touch позволяет создать новый пустой файл с помощью командной строки Linux.В качестве примера введите touch /home/username/Documents/Web.html , чтобы создать HTML-файл с названием Web в каталоге Documents .

    11. Найдите команду

    Вы можете использовать эту команду, чтобы найти файл, точно так же, как команду поиска в Windows. Более того, использование аргумента -i вместе с этой командой сделает регистр нечувствительным, так что вы можете искать файл, даже если вы не помните его точное имя.

    Для поиска файла, содержащего два или более слов, используйте звездочку (*) .Например, команда locate -i school * note будет искать любой файл, содержащий слова «школа» и «примечание», будь то в верхнем или нижнем регистре.

    12. Команда поиска

    Подобно команде locate , с помощью команды find также выполняет поиск файлов и каталогов. Разница в том, что вы используете команду find для поиска файлов в заданном каталоге.

    Например, find / home / -name notes.txt Команда будет искать файл с именем notes.txt в домашнем каталоге и его подкаталогах.

    Другие варианты использования find :

    • Чтобы найти файлы в текущем каталоге, используйте find. -name notes.txt
    • Для поиска каталогов используйте / -type d -name notes. txt

    13. Команда grep

    Еще одна базовая команда Linux, которая, несомненно, полезна для повседневного использования, - это grep . Это позволяет вам искать по всему тексту в данном файле.

    Для иллюстрации, grep blue notepad.txt будет искать слово blue в файле блокнота. Строки, содержащие искомое слово, будут отображаться полностью.

    14. Команда sudo

    Сокращенно от « SuperUser Do », эта команда позволяет выполнять задачи, требующие прав администратора или root. Тем не менее, не рекомендуется использовать эту команду для повседневного использования, потому что может легко возникнуть ошибка, если вы сделали что-то не так.

    15.команда df

    Используйте команду df , чтобы получить отчет об использовании дискового пространства системы в процентах и ​​КБ. Если вы хотите видеть отчет в мегабайтах, введите df -m .

    16. du command

    Если вы хотите проверить, сколько места занимает файл или каталог, ответом будет команда du (Использование диска). Однако в сводке использования диска будут отображаться номера блоков диска вместо обычного формата размера. Если вы хотите видеть его в байтах, килобайтах и ​​мегабайтах, добавьте в командную строку аргумент -h .

    17. руководитель команды

    Команда head используется для просмотра первых строк любого текстового файла. По умолчанию отображаются первые десять строк, но вы можете изменить это число по своему усмотрению. Например, если вы хотите отобразить только первые пять строк, введите head -n 5 filename.ext .

    18. хвостовая команда

    Эта функция аналогична команде head, но вместо отображения первых строк команда tail отобразит последние десять строк текстового файла.Например, tail -n filename.ext.

    19. Команда diff

    Сокращение от слова «разница»: команда diff сравнивает содержимое двух файлов построчно. После анализа файлов он выдаст несоответствующие строки. Программисты часто используют эту команду, когда им нужно внести изменения в программу вместо того, чтобы переписывать весь исходный код.

    Самая простая форма этой команды - diff file1.ext file2.ext

    20. Команда tar

    Команда tar - это наиболее часто используемая команда для архивирования нескольких файлов в tarball - распространенный формат файлов Linux, который похож на формат zip, при этом сжатие является необязательным.

    Эта команда довольно сложна с длинным списком функций, таких как добавление новых файлов в существующий архив, перечисление содержимого архива, извлечение содержимого из архива и многое другое. Ознакомьтесь с некоторыми практическими примерами, чтобы узнать больше о других функциях.

    21. Команда chmod

    chmod - еще одна команда Linux, используемая для изменения разрешений на чтение, запись и выполнение файлов и каталогов. Поскольку эта команда довольно сложна, вы можете прочитать полное руководство, чтобы правильно ее выполнить.

    22. Команда chown

    В Linux все файлы принадлежат определенному пользователю. Команда chown позволяет вам изменить или передать право собственности на файл указанному имени пользователя. Например, chown linuxuser2 file.ext сделает linuxuser2 владельцем файла file.ext .

    23. Команда рабочих мест

    jobs Команда отобразит все текущие задания вместе с их статусами. Работа - это в основном процесс, запускаемый оболочкой.

    24. Команда уничтожения

    Если у вас неотвечающая программа, вы можете завершить ее вручную, используя команду kill . Он отправит определенный сигнал некорректному приложению и даст указание приложению прекратить работу.

    Всего вы можете использовать шестьдесят четыре сигнала, но люди обычно используют только два сигнала:

    • SIGTERM (15) - запрашивает остановку программы и дает ей некоторое время для сохранения всего хода выполнения. Если вы не укажете сигнал при вводе команды kill, будет использован этот сигнал.
    • SIGKILL (9) - заставляет программы немедленно останавливаться. Несохраненный прогресс будет потерян.

    Помимо знания сигналов, вам также необходимо знать идентификационный номер процесса (PID) программы, которую вы хотите убить . Если вы не знаете PID, просто выполните команду ps ux .

    Зная, какой сигнал вы хотите использовать и PID программы, введите следующий синтаксис:

    kill [опция сигнала] PID .

    25. Команда ping

    Используйте команду ping , чтобы проверить состояние подключения к серверу. Например, просто введя ping google.com , команда проверит, можете ли вы подключиться к Google, а также измерит время ответа.

    26. Команда wget

    Командная строка Linux очень полезна - вы даже можете загружать файлы из Интернета с помощью команды wget . Для этого просто введите wget , а затем ссылку для загрузки.

    27. команда uname

    Команда uname , сокращение от Unix Name, распечатает подробную информацию о вашей системе Linux, такую ​​как имя машины, операционная система, ядро ​​и так далее.

    28. верхняя команда

    В качестве терминала, эквивалентного диспетчеру задач в Windows, команда top отобразит список запущенных процессов и количество ЦП, которое использует каждый процесс. Очень полезно отслеживать использование системных ресурсов, особенно зная, какой процесс необходимо завершить, поскольку он потребляет слишком много ресурсов.

    29. Команда истории

    Если вы используете Linux в течение определенного периода времени, вы быстро заметите, что можете запускать сотни команд каждый день. Таким образом, запуск команды history особенно полезен, если вы хотите просмотреть команды, которые вы ввели ранее.

    30. команда человек

    Не знаете, как работают некоторые команды Linux? Не волнуйтесь, вы можете легко научиться использовать их прямо из оболочки Linux с помощью команды man .Например, ввод man tail покажет ручную инструкцию хвостовой команды.

    31. эхо-команда

    Эта команда используется для перемещения некоторых данных в файл. Например, если вы хотите добавить текст «Привет, меня зовут Джон» в файл с именем name.txt, введите echo Привет, меня зовут Джон >> name.txt

    32. zip, команда распаковки

    Используйте команду zip для сжатия файлов в zip-архив и используйте команду unzip для извлечения заархивированных файлов из zip-архива.

    33. команда hostname

    Если вы хотите узнать имя вашего хоста / сети, просто введите hostname . Добавление -i в конец отобразит IP-адрес вашей сети.

    34. useradd, команда userdel

    Поскольку Linux является многопользовательской системой, это означает, что с одной и той же системой одновременно могут взаимодействовать несколько человек. useradd используется для создания нового пользователя, а passwd добавляет пароль к учетной записи этого пользователя.Чтобы добавить нового человека с именем John type, useradd John , а затем, чтобы добавить его тип пароля, passwd 123456789.

    Удаление пользователя очень похоже на добавление нового пользователя. Чтобы удалить тип учетной записи пользователя, введите userdel UserName

    Дополнительные советы и хитрости

    Используйте команду clear , чтобы очистить терминал, если он загроможден слишком большим количеством прошлых команд.

    Попробуйте кнопку TAB для автозаполнения того, что вы набираете.Например, если вам нужно ввести документы, начните вводить команду (давайте с cd Documents, , затем нажмите клавишу TAB), и терминал заполнит остальные, показывая вам cd Documents .

    Ctrl + C и Ctrl + Z используются для остановки любой команды, которая в данный момент работает. Ctrl + C остановит и завершит команду, а Ctrl + Z просто приостановит выполнение команды.

    Если вы случайно заморозили свой терминал с помощью Ctrl + S , просто отмените это с помощью разморозки Ctrl + Q .

    Ctrl + A перемещает вас в начало строки, а Ctrl + E перемещает вас в конец.

    Вы можете запускать несколько команд в одной команде, используя «; ”, чтобы разделить их. Например, Command1; Command2; Command3. Или используйте && , если вы хотите, чтобы следующая команда выполнялась только при успешном выполнении первой.

    Подвести итог

    Базовые команды Linux помогают пользователям легко и эффективно выполнять задачи.Чтобы запомнить некоторые из основных команд, может потребоваться время, но при большой практике нет ничего невозможного.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *