Сегодня в статье разберем пример , как можно запустить какую либо программу из терминала в дистрибутивах Linux.
Терминал — это программа, которую вы можете использовать для выполнения многих задач: установки и удаления программ, проверки состояния системы и её работы, и многого, многого другого.
Бывает так, что после установки программы, она не отображается в меню и естественно не может быть открыта обычным способом.
Запускаем программу через терминал
Чтобы запустить программу из терминала, достаточно ввести название команды на английском языке в нижнем регистре (прописными буквами) и нажать Enter. Для примера введите в терминал команду:
Должно открыться окно с часами:
Но если вы закроете терминал, то закроется и окно с программой. Чтобы этого не произошло, нужно после названия программы ввести разделительный символ « Дополнительные настройки — gnome tweak tool; Ubuntu Tweak — ubuntu tweak и т.п., необходимо чтобы в названии команды не было пробелов между словами. В данном случае необходимо вводить дефис (маленькую чёрточку) между словами, т.е. команды должны быть монолитными на открытие приложений в терминале.
Скопируйте и выполните следующие команды на открытие данных приложений:
Но данные приложения закроются с закрытием терминала. А приложения введённые с дополнительными параметрами будут продолжать работать, хотя терминал с открытием приложения, закроется:
Можно открыть несколько приложений одной командой, объединив их через разделительный знак «
Основы работы с терминалом за 20 минут!
А теперь перейдем к запуску программ.
Запуск программ в терминале
Изначально в операционных системах Unix и Linux не было графического интерфейса, поэтому программы запускались командами из терминала. Сейчас это тоже возможно и достаточно активно используется опытными пользователями. Синтаксис запуска программы выглядит таким образом:
/путь/к/файлу/программы параметры
Параметры указываются только, когда они нужны, но всегда оболочка должна знать полный путь к программе. Все что после имени программы и пробела — это параметры. Вы, наверное, уже заметили, что обычно мы не указываем полный путь при выполнении программ. Это было бы очень долго и неудобно.
Командная строка Linux для новичков
Разработчики придумали обходной путь. Была создана переменная PATH, в которой хранятся все пути к папкам где обычно находятся программы — /bin, /sbin, /usr/bin, /usr/sbin и так далее. Вы можете посмотреть ее содержимое командой:
Когда вы набираете имя программы система ищет исполняемый файл с таким именем по всем папкам из PATH и если находит — то выполняет. Если же такого файла нет, то выдается сообщение — command not found. Таким образом, чтобы запустить одну из системных программ достаточно набрать имя ее исполняемого файла, например:
И можно передать параметры после пробела:
Когда программа находится не в этих каталогах, нужно указать к ней полный путь:
Если же вы хотите запустить программу через терминал ubuntu, которая находится в текущей папке, то ситуация будет немного другой. Система выполняет только поиск по папкам из переменной PATH, в текущей директории она не ищет. Поэтому, если вы наберете имя исполняемого файла, то получите ошибку. Нужно указывать полный путь, как вы помните путь к текущей папке будет ./:
Иногда возникает необходимость передать программе, какие-либо особые переменные окружения. Например, переменная EDITOR указывает какой текстовый редактор нужно использовать по умолчанию. Вы можете указать имя переменной и ее значение перед именем команды используя синтаксис:
имя_переменной = значение команда
По умолчанию эта команда открывает настройки утилиты sudo в редакторе Vim, но с этой переменной окружения настройки откроются в редакторе nano.
Запуск программ от имени другого пользователя
Вы уже знаете как запустить программу в терминале linux, а что насчет других пользователей? В Windows достаточно часто используется запуск программ от имени администратора чтобы программа могла получить больше прав доступа в системе. В Linux для этого используется утилита sudo. Ее имя можно расшифровать как switchuserdo — изменить пользователя и выполнить. По умолчанию утилита выполняет команду от имени суперпользователя root:
sudo команда
sudo whoami
Но с помощью опции -u можно выполнить программу от имени любого пользователя, зарегистрированного в системе:
sudo -u имя_пользователя команда
sudo -u postgres whoami
Команда whoami (кто я) выводит имя текущего пользователя.
Как запустить программу в фоне
Иногда возникает необходимость запустить долго выполняющуюся программу в терминале так, чтобы она не мешала дальше работать. Для этого можно использовать запуск программы в фоновом режиме linux:
dd if=/dev/zero of=
Система выведет PID, уникальный идентификатор программы, который вы потом можете использовать чтобы закрыть ее командой kill:
Как запустить скрипт в Linux
Как начинающим Линуксойдам начать использовать Linux терминал
Независимо являетесь ли вы начинающим пользователем Linux или вы используете Linux уже давно, в своей работе Вы должны использовать терминал. Я Вам хочу помочь начать работать с терминалом.
Терминал Linux это не то, чего Вы должны бояться.
Терминал — это мощный инструмент с огромным потенциалом, который на самом деле облегчает и если нужно выполняет всю рутинную работу за Вас. Через терминал можно очень быстро:
- добавлять новые репозитории (хранилище программ)
- устанавливать программы
- запускать программы (для того чтобы увидеть возможные ошибки)
- настраивать дистрибутив или отдельные программы через конфигурационные файлы
- и много, много другое
Читая эту статью Вы не сможете узнать все премудрости, того что нужно знать о терминале Linux начинающим. Нужен опыт, работы с терминалом.
Я надеюсь, что это вводная статья поможет вам разобраться с основами, так что вы можете продолжить обучение, далее скачав эту книгу «Команды для терминала Linux».
Базовое использование терминала Linux
Запустите терминал с рабочего стола, меню приложений и вы увидите запущенную командную оболочку bash. Есть и другие оболочки, но большинство дистрибутивов Linux используют по умолчанию bash.
Вы можете попробовать запустить какую-либо программу, введя её имя в командной строке. Через терминал вы сможете запустить все, что запускается в Linux: от графических приложений, таких как Firefox, до консольных утилит. В отличие от Windows, вам не потребуется вводить полный путь к программе, чтобы запустить её. Например, допустим, мы хотим открыть Firefox через терминал. В Windows, нужно ввести полный путь к exe-файлу Firefox. На Linux, достаточно просто набрать: firefox
Открываем Firefox из терминала Linux
Нажмите клавишу Enter после ввода команды, и он запустится. Обратите внимание, что Вам не нужно добавлять в конце имени расширение или что-нибудь подобное, как в Windows .EXE, файлы в Linux не имеют расширения.
Команды терминала также могут принимать аргументы. Типы аргументов вы можете использовать, в зависти от программы. Например, Firefox принимает web-адреса в качестве аргументов. Чтобы запустить Firefox с открытой вкладкой, вы можете выполнить следующую команду:
firefox linux-user.ru
Любые другие программы можно запустить в терминале, и они точно также будут работать, как и Firefox. Бывают программы, которые только и умеют работать в терминале. Они не имеют графический вид, не имеют графического интерфейса в виде окна приложения.
Установка Программного Обеспечения через терминал Linux Ubuntu
Одно из самых эффективных действий в терминале это установка программного обеспечения. Для установки программного обеспечения существую графические менеджеры, например в Ubuntu «Центр приложений». Центр приложений Ubuntu это графическая оболочка тех немногих команд терминала, которые он используют в фоновом режиме. Если Вы знаете, что Вам нужно, то вместо того чтобы щелкать по всем этим кнопкам и поискам, можно легко установить программу из терминала одной командой. Вы можете даже установить несколько приложений с помощью одной команды.
Пример буду использовать на Ubuntu / Linux Mint или других Ubuntu-подобных дистрибутивах (все другие дистрибутивы имеют свои собственные системы управления пакетами). Итак, вот команда для установки нового программного пакета:
sudo apt-get install имя_пакета
Это может показаться немного сложным, но это работает, так же как и вышеупомянутый Firefox. Слово-сокращение sudo запускает программу, которая запрашивает пароль root (администратора) перед запуском apt-get. Программа apt-get в свою очередь считывает аргументы install имени пакета и устанавливает пакет запрошенный вами.
Пример для установки через терминал сразу нескольких пакетов.
Например, чтобы установить веб-браузер хромиум и менеджер мгновенных сообщений Pidgin выполните эту команду:
sudo apt-get install chromium-browser pidgin
Выше упомянутой командой я пользуюсь после того как установлю «новоиспеченную» Ubuntu. Установил новый релиз Ubuntu, добавил одной командой все свои любимые программы. Вы просто должны знать название пакетов ваших любимых программ. Как видите о названии пакетов довольно легко догадаться. Вы также можете уточнить ваши догадки с помощью tab, трюк ниже.
У меня в рабочем дистрибутиве десятки нужных мне программ, не буду же я вводить имена всех программ в терминале на новой установленной Linux. И поэтому я использую более автоматизированный способ. Который заключается в том, что перед установкой нового дистрибутива Linux, я сначала на старой установке, с помощью терминала, экспортирую название всех установленных пакетов в текстовый файл.
А потом, после переустановки, в новом, через терминал импортирую этот тестовый файл, который сообщает дистрибутиву обо всех программах, которые необходимо установить. Таким образом, эти команды совсем небольшие, в отличие от того если бы я вводил их вручную, и экономится много времени. Этот совет и другие, более глубокие инструкции вы найдете в этой книге.
Работа с каталогами и файлами в терминале Linux
Оболочка всегда производит действия в текущем каталоге, если вы не укажите другой каталог. Например, NANO — это простой в использовании консольный текстовый редактор. Команда:
nano document1
скажет, что надо запустить текстовый редактор NANO с открытым файлом под именем «document1» из текущего каталога. Если вы хотите открыть документ, который находится в другой папке, нужно указать полный путь к файлу, например:
nano /home/pavel/Documents/document1
Если вы указываете путь к файлу, который не существует, nano (как и многие другие программы) будут создавать новый пустой файл в этом месте и открыть его.
Для работы с файлами и директориями, Вам необходимо знать несколько основных команд:
cd — команда для смены каталога
~ (тильда) представляет собой ваш домашний каталог (/home/вы), который является в терминале отправной точкой по умолчанию. Чтобы перейти в другой каталог, вы должны использовать cd — команды.
Например:
вы перейдете в корневой каталог
cd Загрузки
переместиться в каталог «Загрузки» внутри текущего каталога вашего пользователя (точный путь, в моем случае, будет таков /home/pavel /Загрузки), чтобы переместиться в ваш домашний каталог /home/you/ из любого места нужно скомандовать так:
команда для перехода вверх по иерархической системе каталогов.
ls — выводит список файлов в текущей директории
mkdir — команда для создания нового каталога
mkdir newfolder
будет создан новый каталог в текущем каталоге с именем newfolder, а:
mkdir /home/pavel/Загрузки/test
создаст новый каталог с именем test в моем домашнем каталоге «Загрузки» (pavel нужно сменить на имя вашего пользователя).
rm — команда удаляет файл
rm testfile
удаляет файл с именем test в текущем каталоге, а:
rm /home/pavel/Загрузки/testfile
удаляет файл с именем testfile в каталоге /home/pavel/Загрузки.
cp — команда копирует файл из одного места в другое
cp testfile /home/pavel/Загрузки
копирует файл с именем testfile из текущего каталога в /home/pavel/Загрузки.
mv — команда перемещает файл из одной папки в другую
mv работает точно также как и представленная выше команда cp, но она перемещает файл, а не создает копию. mv также может быть использована для переименования файлов. Например:
mv /home/pavelz/Загрузки/testfile /home/pavelz/Документы/testfile1
перемещает файл с именем testfile из /home/pavel/Загрузки в каталог /home/pavel/Документы уже под именем testfile1.
Это может казаться сначала немного пугающим, но здесь нет, ни чего сложного. Это основные команды, которые необходимо освоить, чтобы эффективно работать с файлами в терминале. Перемещаться по файловой системе с помощью cd, просматривать файлы в текущей директории с помощью ls, создавать каталоги с mkdir, и управлять файлами при помощи rm, cp, mv командами.
Секреты ускоряющие работу в терминале Linux
Авто дополнение по клавише Tab
Tab — это очень полезный трюк. В то время когда Вы вводите какую-либо команду, имя файла, или некоторые другие типы аргументов — можно авто заполнить команду с помощью tab. Терминал просто допечатает за Вас.
Например, если ввести fir в терминале и нажать tab, firefox появляется автоматически. Это избавит вас от необходимости печатать полностью. Можно нажать Tab и оболочка будет готово дополнить команду за Вас. Это также работает для папок, имен файлов и имен пакетов.
Во всяком случаях, когда я не знаю, как полностью выглядит команда, я нажимаю клавишу Tab и вижу команду, либо список возможных совпадений. Если продолжить и ещё ввести несколько букв, то это сузить совпадения при нажатии клавиши Tab.
Дополнительные трюки вы найдете в этой книге.
Архив, в который упакована книга «Команды для терминала Linux» находится в открытом доступе, но защищен паролем. Для того чтобы получить пароль, я от Вас прошу поставить ссылки на этот сайт в Vkontakte, Фэйсбуке, Google Plus, Твиттере или в какой-либо другой социальной сети, на сайте или форуме. Можете выбрать любые понравившиеся статьи и поделиться ссылкой через социальные кнопки, которые можно наблюдать слева. При этом я Вас прошу немного изменять отдаваемый текст в социалку для уникализации или добавлять свой комментарий.
Важно: Ваш аккаунт в социальной сети, где будет расположена ссылка, не должен быть «нулевым». Хотя бы должно иметься десяток — другой друзей, читателей. Эта страница должна быть доступна без регистрации.
Такая своеобразная плата за книгу поможет развить этот сайт.
Заключение:
Я надеюсь, что после прочтения и применения на деле этой статьи, Вы почувствуете себя немного комфортнее в терминале. Чтобы узнать больше о терминале — и, в конечном счете, освоить его — продолжите свой путь с этой книгой.
Источник: linux-user.ru
Терминальные команды в Linux
Среди всех элементов системы Linux самым важным, пожалуй, является командная строка (bash-Bourne Again Shell) или Терминал:
Начинающим пользователям кажется, что они ни когда не прибегнут к помощи командной строки, а некоторые её просто боятся. Однако чем больший опыт они приобретают, тем чаще обращаются к терминалу.
С помощью командной строки можно выполнять действия, которые были бы не мыслимы при работе с графическим пользовательским интерфейсом. Оказывается, что многие действия гораздо быстрее и эффективнее выполнять, пользуясь командной строкой.
Командная строка используется во всех OS: Windows, MacOS X и Linux.
Многие начинающие пользователи могут возразить: «Так ведь в Windows мы не пользуемся командной строкой». И будут не правы, т.к. все действия по установке/удалению программ или другие системные изменения незримо протекают в терминале, не говоря уже о системных администраторах, которые очень часто прибегают к услугам командной строки.
Изначально окно терминала было отображено в первых мониторах компьютеров, ещё до того, как появились графические программы (GUI) и пока в обозримом будущем не видно чтобы его могло заменить что-то другое.
Терминальные команды
В системе Linux используются тысячи команд, которые совсем не обязательно знать простому пользователю, но иметь общее представление и знать некоторые, часто используемые, просто необходимо, т.к. волей — неволей вы с ними столкнётесь при настройке системы или установке нужной программы, отсутствующей в Центре приложений и т.д.
Я использую системы Ubuntu/Linux Mint и на их основе будут задействованы примеры, но думаю, что кроме команды sudo, остальное применительно и к другим системам Linux.
Многие пользователи, наверное, выполняли не раз такие команды в терминале:
sudo apt-get update
sudo apt-get upgrade
Давайте разберём их более детально, чтобы понять что они собой представляют.
Прежде всего хотелось бы заметить, что все команды написаны на английском языке и не просто «от фонаря», а в каждой заложен определённый смысл для её применения. И то что командная строка Linux очень чувствительна к регистру. Иными словами, данные команды написаны в нижнем регистре (строчными буквами), но если вы введёте идентичную команду, но в верхнем регистре (прописными буквами), то выполнить её не получится. Это нужно запомнить.
Команда sudo, это по сути аббривеатура, состоящая из следующих слов: super user do, что в переводе с английского буквально означает следующее: super user — суперпользователь (администратор), do — делает. Т.е. когда данная команда присутствует в общей команде, то командной строке даётся понять, что выполнять её может суперпользователь (администратор), тот пользователь, который при установке системы был зарегистрирован и ввёл свой пароль:
Команда apt-get, которая следует после sudo и пробела, состоит из двух слов через чёрточку, которая объединяет эти два слова в одну команду и буквально означает в переводе: склонен-выполнить.
Команда update, в переводе — обновление.
Итак sudo apt-get update в преводе буквально — суперпользователь склонен-выполнить обновление.
После ввода данной команды и нажатия клавиши Enter, терминал запрашивает пароль. После ввода пароля и вновь нажатия Enter, начнётся процесс обновления списка пакетов.
Примечание. У терминала есть особенности после ввода команды с sudo, а именно когда вы вводите пароль, то он не отображается ни буквами, ни символами, поэтому нужно всегда обращать внимание на раскладку клавиатуры, в которой вы вводите пароль и другая, это после выполнения первой команды с присутствием sudo, последующие команды (даже если в них есть sudo), больше не требует ввода пароля в течении определённого времени (сохраняет открытой sudo-сессию) в этом же окне терминала, т.е подразумевая, что терминалом продолжает пользоваться суперпользователь (администратор).
Команда sudo apt-get upgrade очень похожа на предыдущую команду, где upgrade — модернизировать, усовершенствовать (систему). Данная команда, как правило выполняется после команды обновления. После того как команда выполнена, она выдаёт в терминале возможные пакеты для установки, т.е. модернизации, усовершенствования системы. Пользователю остаётся согласиться или нет с установкой данных пакетов.
Установка, удаление программ
Далее мы рассмотрим команды на установку и удаления программ (пример):
sudo apt-get install chromium-browser
sudo apt-get remove chromium-browser
Как видно команды очень похожи между собой, за исключением одного слова выделенного красным. В первой команде install — установить chromium-browser, а во второй remove — удалить chromium-browser
Таким образом устанавливаются и удаляются приложения (программы) и др. файлы в системе.
Если вы нашли на одном из сайтов похожую команду на установку программы и установили её, но программа вам не подошла и вы хотите удалить, достаточно в команде на установку изменить install на remove и выполнить в терминале, как программа удалится.
Установка программ из стороннего репозитория
Теперь рассмотрим команды на установку и удаление программ с добавлением стороннего репозитория (пример):
sudo add -apt-repository ppa:upubuntu-com/gtk+3.6
sudo apt-get update
sudo apt-get install flatstudiodark-gtk
Прежде всего давайте выясним зачем подключать сторонний репозиторий? Репозиторий, это хранилище файлов на сайте разработчика. В данном случае, третьей командой мы хотим установить тему оформления, но её нет в Центре приложений, а значит нам нужно прежде подключить хранилище (репозиторий) с темой (первая команда), где add — добавить, ppa:upubuntu-com/gtk+3.6 — название репозитория, затем второй командой обновить список пакетов и уже третьей — установить сам пакет с темой.
Если данное приложение (в конкретном случае тема оформления) вам не понравилось и вы решили удалить его, то вы можете изменить команды на установку, чтобы они выглядели командами на удаление:
sudo apt-get remove flatstudiodark-gtk
sudo add-apt-repository —remove ppa:upubuntu-com/gtk+3.6
sudo apt-get update
Прежде нужно выполнить команду на удаление пакета с программой, где меняем install на remove , затем удаляем хранилище (репозиторий), добавив в команду —remove — удалить, т.к. хранилище теперь без надобности и обновляем систему последней командой.
Запуск графических программ с правами администратора.
Допустим, нам необходимо запустить файловый менеджер Nautilus с правами администратора, чтобы через графический интерфейс как-то изменить содержимое системных папок. Для этого необходимо ввести следующую команду:
gksudo nautilus
gksu nautilus
Где ввод пароля, в данном случае, будет происходить в графическом окне, а не в терминале.
Но вы можете указать дополнительно необходимый путь в команде, непосредственно к нужной папке:
gksu nautilus /usr/share/themes
В данной команде косой чертой (/) — слешем указывается терминалу, что нужно перейти в следующую за ним папку.
Запуск программ из терминала командой
В системе Linux вы можете запустить любую программу из терминала установленную в вашей системе, главное знать её правильное название. Многие программы состоят из одного слова-названия, а некоторые из двух или трёх слов. Например: Nautilus; Ubuntu Tweak; Gnome Tweak Tool. Если мы введём в терминал название команд так, как они написаны, то не сможем открыть ни одно из приложений. Ещё раз повторюсь, что терминал очень чувствителен к регистру, т.е. команду нужно вводить только в нижнем регистре (строчными буквами) и обязательно монолитной, через чёрточку, если она состоит из нескольких слов (примеры):
ubuntu-tweak
gnome-tweak-tool
Таким образом вы сможете открыть приложения, но если вы закроете терминал, то закроется и программа вместе с ним. Чтобы этого не происходило, необходимо дописать команду exit на закрытие терминала после открытия программы через пробелы и разделительный знак exit
ubuntu-tweak exit
Через разделительный знак ubuntu-tweak exit
Создание каталогов (папок) и размещение в них файлов
Многие из вас устанавливали флажки для отображения в трее раскладки клавиатуры посредством терминальных команд:
mkdir ~/.icons
mkdir ~/.icons/flags
cd ~/.icons/flags
wget http://suservice.net/icons/flags2/.png
Теперь давайте детально разберём каждую из приведённых команд.
Команда mkdir ~/.icons — создаёт скрытый каталог (папку) в Домашней папке под названием icons.
mk — сокращённо от make — сделать, создать. dir — сокращённо directoria — каталог, папка. ~ — знак тильда всегда обозначает Домашнюю папку пользователя. / — обозначение папки. .icons — обозначает название создаваемой папки, а точка впереди всегда указывает на то, что данная папка скрытая.
Команда mkdir ~/.icons/flags также создаёт папку под названием /flags в скрытой папке /.icons и Домашней папке — ~.
Команда cd ~/.icons/flags делает переход в папку /flags, которая в свою очередь находится в Домашней папке — ~ и в скрытой папке /.icons.
cd — c — обозначение перехода, d — directoria — каталог (папка).
Команда wget http://suservice.net/icons/flags2/.png загружает файлы флажков в папку /flags, в которую мы перешли на предыдущем этапе.
wget — сокращённо от w — web — сеть, get — получать, т.е получить файлы из сети и ставится всегда перед URL адресом через пробел. В данном случае перед http://suservice.net/icons/flags2/.png, с которого и загружаются файлы с флажками.
Убить процесс командой
Прежде всего давайте выясним, что такое процесс?
При запуске системы запускается множество процессов, о которых пользователь зачастую даже и не подозревает. Но многие процессы мы видим на экране монитора, сами их запускаем и управляем ими, это открытые программы. Лучше всего нам об этом раскажет программа top, запущенная в терминале:
Иногда так случается, что какой-то процесс в системе дал сбой или попросту «зависла» какая-то программа и кнопка закрытия не реагирует, либо кнонопка закрытия отсутствует вовсе (виджет conky). На этот случай в Linux есть очень хорошая команда — «убийца»:
p — сокращённо от process (процесс), kill — убивать.
Но сама по себе эта команда не работает, ей нужен аргумент, т.е. либо номер процесса, который отображён в колонке PID (см. снимок терминала) после выполнения команды top, либо название процесса в колонке COMMAND. Не переживайте, команда не убьёт саму программу, она только остановит процесс выполнения. Если это графическая программа, то она просто закроется. Для эксперимента я выбрал самый безобидный процесс, который при закрытии ни чему не повредит. Итак выполните следующую команду:
pkill gnome-terminal
Окно терминала исчезло, т.е. был «убит» (остановлен) процесс, отображающий программу на экране монитора.
xkill — убивает видимый процесс и работает сама по себе, т.е. после выполнения команды кликните образовавшимся крестиком вместо курсора на любой видимой программе (окне), как оно закроется.
Мною были подобраны команды для разбора, с которыми обычно сталкивается простой пользователь при настройке системы.
Если кто-то хочет глубже узнать о терминальных командах, я вам рекомендую скачать бесплатный справочник Скотта Граннемана «Linux. Карманный справочник». Просто наберите в Google Скотт Граннеман и дайте поиск.
Опубликовано в блоге:
Linux для начинающих и не только.
Ссылка на источник compizomania
02-01-2013.
Источник: ubuntu66.ru