Linux тренажер командная строка

Упражнения по работе с командной строкой linux

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

Перед тем как начать — первый простой вопрос:

Как получить справку по команде ssh? ответ

Основные команды для работы с файлами

Как посмотреть текущую рабочую директорию? ответ

Как сменить рабочую директорию? ответ

например, cd /var/www/

Как перейти в родительскую директорию? ответ

Как вернуться в домашнюю директорию? ответ

cd — вызов команды без аргументов приводит к переходу в директорию, указанную в переменной окружения $HOME.

Как вывести список файлов в директории? ответ

ls — вывести список файлов в текущей директории

ls /var/log/ — вывести список файлов в директории /var/log/

ls -l — вывести подробный список файлов

Как посмотреть вермя последнего изменения/доступа к файлу /tmp/test.txt? ответ

ls -l /tmp/test.txt — посмотреть время последнего изменения файла

ls -lu /tmp/test.txt — посмотреть время последнего доступа к файлу

stat /tmp/test.txt — показывает 3 временные метки:

  • Access — время последнего доступа к файлу (любое открытие файла для чтения: просмотр, поиск по файлу и т.п.)
  • Modify — время последнего изменения файла
  • Change — время изменения статуса файла (прав доступа, владельца, изменение файла).

Как создать новую директорию test? ответ

Как создать пустой файл? ответ

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

  • cp empty.txt empty1.txt — скопировать любой другой пустой файл
  • touch empty.txt — «потрогать» несуществующий файл
  • :> empty.txt — перенаправить в файл вывод команды, которая ничего не делает
  • vi empty.txt, затем сразу :wq — открыть файл и сохранить его пустым

Как создать файл /tmp/2mb.txt размером 2Mb? ответ

dd if=/dev/zero of=2mb.txt bs=1M count=2

если в предыдущей команде задать bs=1MB, то файл будет размером 2_000_000 байт.

в данном примере файл будет заполнен нулевыми байтами (0x00).

Как узнать тип файла? ответ

$ file empty.txt empty.txt: empty $ file /usr/bin/perl /usr/bin/perl: symbolic link to `perl5.16.3′ $ file /usr/bin/perl5.16.3 /usr/bin/perl5.16.3: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, stripped $ file index.html index.html: HTML document, UTF-8 Unicode text, with very long lines

Как переименовать файл? ответ

mv имя_файла новое_имя_файла

Как удалить файл/директорию? ответ

rm имя_файла — удалить файл

rmdir имя_директории или rm -r имя_директории — удалить директорию

shred -uv имя_файла — удаление файла для параноиков (без опции -u просто перезаписывает содержимое файла мусором)

Читайте также:  Как узнать за сколько запускается windows 10

Как создать символическую/жесткую ссылку на файл/директорию? ответ

ln -s имя_файла имя_ссылки — создаём символическую ссылку на файл

ln -s имя_директории имя_ссылки — создаём символическую ссылку на директорию

ln имя_файла имя_жесткой_ссылки — создаём жесткую ссылку на файл

в обычных условиях создать жесткую ссылку на директорию невозможно

Как посмотреть размер файла? ответ

ls -l имя_файла — размер файла в байтах

ls -lh имя_файла — размер файла в более привычном формате

Как как узнать размер директории? ответ

du -s имя_директории — размер места в килобайтах (блоках по 1024 байт), которое директория со всем своим содержимым занимает на диске

du -sh имя_директории — в более привычном формате

Как узнать сколько свободного места осталось на разделе диска? ответ

при помощи команды df место_монтирования_раздела или просто df

df -h выведет размеры не в килобайтах, а в более удобном формате.

df -ih выведет информацию о количестве использованных и свободных инодов

Работа с текстовыми файлами

Как сравнить два текстовых файла? ответ

diff файл_1 файл_2 или diff -a файл_1 файл_2

Как посчитать количество строк в текстовом файле? ответ

или awk ‘END ’ имя_файла

а можно открыть файл в текстовом редакторе vi имя_файла и посмотреть кол-во строк CTRL+G

Как вывести на экран отсортированные строки текстового файла? ответ

Как удалить дубли строк из файла? ответ

sort -u имя_файла

или sort имя_файла | uniq

Как дописать содержимое одного текстового файла в конец второго? ответ

cat файл_1 >> файл_2

Как разбить текстовый файл на несколько по 100 строк в каждом? ответ

split -l 100 имя_файла 100-

в результате работы этой команды в директории появятся файлы 100-aa, 100-ab… содержащие по 100 строк из исходного файла. Если исходный файл содержал число строк не кратное 100, то в последнем файле будет меньше ста строк.

Как вывести на экран первые 30 строк файла? ответ

head -n30 имя_файла

Как вывести на экран последние 30 строк файла? ответ

tail -n30 имя_файла

Как посмотреть содержимое текстового файла? ответ

cat имя_файла — вывести файл на экран целиком

more имя_файла — выводить файл на экран постранично (пробел — перейти к следующей странице, enter — на строку вниз)

less имя_файла — выводить файл на экран с возможностью перемещаться по нему вверх и вниз

vi имя_файла или nano имя_файла или emacs имя_файла — открыть файл в любимом текстовом редакторе

Как вывести на экран строки текстового файла /tmp/file.txt начинающиеся со слова ‘START’? ответ

*!G4;:%#`START/ p’ имя_файла

Как вывести на экран содержимое текстового файла без однострочных комментариев (строка комментария начинается с символа #)? ответ

Как среди нескольких файлов в директории найти те, которые содержат слово ‘test’? ответ

grep ‘test’ * — поиск во всех файлах в текущей директории

grep ‘test’ файл_1 файл_2 файл_3 — поиск только в указанных файлах

Источник

Лучшие терминалы Linux и bash-редакторы, доступные онлайн

Перевод статьи «Best Online Linux Terminals and Online Bash Editors».

Читайте также:  Windows skype принять файл

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

В частности, пользоваться такими онлайн-сервисами удобно, если у вас на машине стоит Windows. Конечно, можно установить Linux на виртуальной машине, но зачастую удобнее просто воспользоваться онлайн-терминалом.

Но где найти бесплатную консоль Linux? Какие оболочки Linux можно использовать онлайн?

Об этом не беспокойтесь! Чтобы помочь вам с выбором, мы собрали список лучших онлайн-терминалов Linux и отдельный список лучших bash-компиляторов.

Примечание: все онлайн-терминалы поддерживают разные браузеры, включая Google Chrome, Mozilla Firefox, Opera и Microsoft Edge.

Лучшие онлайн-терминалы для отработки команд Linux

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

1. JSLinux

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

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

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

JSLinux также позволяет загружать файлы в виртуальную машину. В основе этого терминала лежит Buildroot — вспомогательный инструмент для создания Linux-среды для встроенных систем.

2. Copy.sh

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

Вы можете найти Copy.sh на GitHub. Мейнтейнеры продолжают активно работать над проектом, а это хороший знак. Copy.sh поддерживает разные операционные системы, включая

3. Webminal

Webminal это впечатляющий онлайн-терминал Linux, отлично подходящий для новичков, желающих попрактиковаться в использовании команд.

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

4. Tutorialspoint Unix Terminal

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

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

Это довольно простой и при этом эффективный онлайн-терминал. Но если он вас чем-то не устроит, на странице Coding Ground можно посмотреть список других терминалов, доступных онлайн.

5. JS/UIX

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

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

6. CB.VU

Если хотите протестировать команды для стабильной версии FreeBSD 7.1, cb.vu будет самым простым решением.

Читайте также:  Windows build versions list

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

7. Linux Containers

Linux Containers позволяет вам запускать демо-сервер (с 30-минутным ограничением по времени), который работает как один из лучших онлайн-терминалов Linux. Этот проект фактически спонсируется Canonical.

8. Codeanywhere

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

Лучшие редакторы bash, доступные онлайн

Погодите-ка! А разве терминалы Linux недостаточно хороши для bash-скриптов? Вполне! Но создавать bash-скрипты в редакторах терминала, а затем выполнять их не так удобно, как просто использовать онлайн-редактор bash.

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

Bash-компилятор Tutorialspoint

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

JDOODLE

Еще один полезный онлайн-редактор для тестирования bash-скриптов называется JDOODLE. Он предлагает также и другие IDE, но мы здесь фокусируемся на bash. На странице редактора вы увидите, собственно, сам редактор, строку для ввода команд и поле для вывода результатов.

Paiza.io

Paiza.io это хороший онлайн-редактор bash, который можно испытать бесплатно. Для использования более продвинутого функционала (например, создания расписания задач) нужно сначала зарегистрироваться.

Paiza.io поддерживает совместную работу в режиме реального времени, но этот функционал пока в экспериментальной фазе.

На paiza.cloud также можно найти онлайн-терминал Linux.

ShellCheck

Это интересный редактор bash, позволяющий находить баги в скриптах. Проект доступен на GitHub. ShellCheck можно установить локально на поддерживаемых платформах.

Rextester

Если вам нужен простейший bash-компилятор, выбирайте Rextester. Он также поддерживает и другие языки программирования.

Learn Shell

Как и Webminal, Learnshell предоставляет ресурсы как для изучения shell-программирования, так и для запуска (испытаний) кода. Обучающие ресурсы раскрывают и базовые, и продвинутые темы.

CoCalc

CoCalc предоставляет онлайн-среду с понятным программным стеком, которой могут пользоваться как профессионалы, так и учащиеся. Есть платная и бесплатная версии. В бесплатной у вас будет ограниченный доступ к функционалу, а также ограничения интернет-доступа. Кроме того, следует быть готовым к посредственной производительности сервера. Но если вы готовы подписаться платно, вы сможете работать над скриптами с коллегами (в режиме реального времени) и делать много всего другого при помощи высокопроизводительного сервера.

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

Мы рассказали вам о самых быстрых и надежных терминалах Linux и bash-редакторах, доступных онлайн. Теперь вы можете смело их изучать, экспериментировать и писать код! Если мы пропустили какой-то интересный онлайн-терминал или редактор, дополняйте наш список в комментариях!

Источник

Оцените статью