Практически полезно отказаться от графического интерфейса для новичка в Ubuntu?

Моя Ubuntu 12.04.

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

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

Например, у меня есть файл PDF. Я знаю, что есть программа для просмотра таких файлов. В случае с графическим интерфейсом я бы просто щелкнул pdf-файл и посмотрел, что я использую Document Viewer 3.4.0.

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

Не могли бы вы предложить мне что-нибудь.

4
задан 5 October 2012 в 14:58

5 ответов

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

Кроме того, man (manual!) - ваш лучший друг!

man apt-get | less

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

И, наконец, что не менее важно, если вы новичок в Linux, ваш менеджер пакетов apt-get станет вашим лучшим другом. Для опыта вы должны установить некоторые программы из исходного кода, но знание вашего менеджера пакетов и умение искать его будут бесценны для экономии времени.

Надеюсь, это поможет некоторым.

0
ответ дан 5 October 2012 в 14:58

Большинство ваших исполняемых файлов находятся в /bin или /usr/bin. Например, вы можете найти Firefox в /usr/bin/firefox. Эти два пути находятся в вашем $ PATH, поэтому вы можете выбрать приложение с завершением табуляции

0
ответ дан 5 October 2012 в 14:58

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

Например, для запуска веб-браузера firefox вы можете просто написать firefox в терминале

Чтобы открыть тот же Gedit или sudo gedit, чтобы сохранить или прочитать для защищенного каталога и тому подобное

0
ответ дан 5 October 2012 в 14:58

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

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

xprop | grep WM_CLASS

это позволит вам щелкнуть в любом окне, которое вы в данный момент открыли, и, вероятно, получить команду, необходимую для запустите это приложение. Например, щелкнув в окне просмотра документов (pdf reader), я получаю WM_CLASS(STRING) = "evince", "Evince", являясь evince командой, используемой для открытия Document Viewer. Если это не работает, вы можете попробовать заменить WM_CLASS на WM_COMMAND или WM_DESKTOP_FILE (в последнем будет показано расположение файла .desktop).

Если вам нужно знать, какое приложение предоставляет «команду», вы можете использовать which

which evince
/usr/bin/evince

Но иногда устанавливаемая вами программа помещает свои исполняемые файлы в некое необычное место. Возьмем для примера PostgreSQL . Если вы устанавливаете любую из версий, доступных в репозиториях, их исполняемые файлы помещаются в /usr/lib/postgresql/<version>/bin/. Если вы попытаетесь выполнить initdb (команда PostgreSQL), система не сможет найти команду. В такой ситуации вы можете использовать apt-file , чтобы найти, какой пакет предоставляет программу initdb и где он будет размещен после установки пакета

apt-file search initdb
<omitted results>
postgresql-9.1: /usr/lib/postgresql/9.1/bin/initdb
<omitted results>

Также вы можете использовать locate, чтобы попытаться найти нужную вам команду. Используя снова initdb в качестве примера:

locate initdb
/etc/alternatives/initdb.1.gz
/usr/lib/postgresql/9.1/bin/initdb
/usr/share/man/man1/initdb.1.gz
/usr/share/postgresql/9.1/man/man1/initdb.1.gz

Надеюсь, что эти советы помогут вам.

0
ответ дан 5 October 2012 в 14:58

Практичность

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

Для новичка лучший способ выучить командную строку - сделать ваш процесс обучения практичным . Например, я студент колледжа, который изучает программирование на C прямо сейчас. До сих пор я программировал исключительно в командной строке, используя компилятор gcc и текстовый редактор nano, и это все, что мне действительно нужно. Я многому научился таким образом, гораздо больше, когда использовал приложения в стиле GUI (и даже не заводил меня на Microsoft Visual Studio - хм).

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

#!/bin/mksh
printf "\n Turning wifi off";
nmcli nm wifi off; 
sleep 2; 
printf "\n Turning Wifi on"
nmcli nm wifi on; 
#printf "\n Gonna observe how Network Manager reconnects\n Press Ctrl+C when done ";
#sleep 2;
watch -n1 nmcli dev status

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

    #!/bin/mksh
sudo shutdown -P +60

Таким образом, мне нужно только набрать shut в терминале и мой пароль sudo, а не все девять ярдов. Вчера был задан еще один вопрос о ручном изменении яркости, поэтому, по крайней мере, для своей машины я написал скрипт, который откроет файл, управляющий яркостью, в текстовом редакторе nano.

#!/bin/mksh
printf " \n Entering file to change brightness in 3 seconds\n remember - no new line after number.  ";
sleep 3;
sudo nano /sys/class/backlight/acpi_video0/brightness

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

И, конечно же, находят решения вопросов, размещенных здесь, на askubuntu.com . Хотя я также все еще очень плохо знаком с миром Linux (началось с 13.10 весной 2014 года), я многому научился, прочитав, что другие пишут и спрашивают. Это очень ценно для решения реальных проблем.

Некоторые другие предложения :

Первая программа для запуска

Если вас интересует только запуск приложений, вы можете использовать Classic Menu Indicator и Gnome Do. Gnome Do запускается при загрузке компьютера и первое, что вы видите при входе в сеанс GUI. Введите имя приложения, и оно запустится. Например, я увидел твой вопрос на своем телефоне, включил ноутбук, вошел в систему, набрал «firefox» в Gnome Do, и вот я - набираю этот ответ.

Открывая файл, не зная, какую программу использовать.

В терминале (он же командная строка) вы также можете использовать что-то под названием gnome-open. Например, если бы я хотел открыть файл pdf с именем random.pdf, я бы набрал gnome-open random.pdf и вуаля - Document Viewer (он же Evince) открывает мой файл pdf.

Что если вы хотите узнать, какая программа открыла этот файл? Ну, вы можете перейти на вкладку «Справка» или «Справка» в выпадающем меню для этой программы ИЛИ, вы можете запустить ps ax в терминале. Например, я открыл случайный текстовый файл с помощью gnome-open, и он вызвал какой-то текстовый редактор, но я хочу знать, что это. Итак, я выполнил ps ax

enter image description here

Видите ли вы линию с процессом 4149? Это говорит gedit /home/sergiy/random. Итак, мой случайный текстовый файл был открыт с помощью текстового редактора Gedit.

И как уже указывали другие пользователи, вы можете использовать команду which. Как насчет исходных файлов или двоичных файлов для этой команды (потому что все в unix - это файлы)? Используйте где команда, например whereis bash. Найти определенный файл? нет проблем ! locate random.txt

Общая командная строка обучения

Каждый тип обучения нуждается в источниках. Убедитесь, что вы изучаете интернет и читаете книги. Лично, Я начал с очень очень очень старой книги по Unix System V, и теперь у меня есть книга « Ubuntu Linux Toolbox », посвященная командной строке.

Теперь я хотел написать что-нибудь для Linux в качестве своего окончательного проекта кодирования, поэтому сейчас я использую Advanced Linux Programming - онлайн-книгу. И практический, и образовательный, и вы все еще изучаете командную строку.

Заключение :

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

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

  • elinks - этот браузер командной строки пригодится, когда я испорчу свой графический интерфейс, и не иметь ничего, кроме командной строки в tty (Ctrl + Alt + F1).
  • byobu - иногда приятно иметь несколько индикаторов или вкладок, как в графическом интерфейсе. Byobu дает вам именно то, что в командной строке
  • moc player - очень ценно, когда вы портите графический интерфейс, и вам нужно часами исправлять, а пока вы это делаете - слушайте музыку
  • Htop - просмотр процессы, альтернативные top
  • nano - текстовый редактор командной строки. Большинство писаний, которые я делаю сейчас, - это
  • новости о чтении оливок в командной строке
  • mutt и alpine - электронные письма; хотя на настройку уйдут часы.
  • doc2txt - я уверен, что этот предмет является частью другого пакета. Я обычно использую его, чтобы преобразовать задание моего профессора в текст, который я могу прочитать, конечно же, в командной строке
0
ответ дан 5 October 2012 в 14:58

Другие вопросы по тегам:

Похожие вопросы: