Мой текущий каталог находится глубоко в нескольких слоях подпапок из моего домашнего каталога. Если я хочу открыть этот каталог в графическом браузере на основе графического интерфейса , мне нужно дважды щелкнуть папку за папкой, чтобы добраться до нее. Это очень много времени. С другой стороны, с очень небольшим количеством нажатий клавиш и несколькими нажатиями на кнопку табуляции, к нему очень легко добраться через терминал.
Я хочу знать, есть ли способ открыть текущий каталог в терминале в файловом браузере. Какова команда, чтобы сделать это?
Для справки, у меня есть система Ubuntu, но я хотел бы знать, какие команды используются в различных дистрибутивах Linux.
open /path/to/some/directory
откроется окно Finder для этого каталога. В Windows это какой-то вызовexplorer.exe
In KDE, GNOME или LXDE, возможно, есть заклинания, уникальные для каждой среды, которые можно использовать. Короче говоря, для вашего конкретного случая использования требуется больше деталей.open .
откроется окно Finder в текущем каталоге. Аналогичная команда может существовать в вашей системе.Ответы:
xdg-open .
xdg-open является частью пакета xdg-utils , который обычно устанавливается по умолчанию во многих дистрибутивах (включая Ubuntu). Он предназначен для работы в нескольких средах рабочего стола, вызывая обработчик по умолчанию для типа файла в среде рабочего стола.
Вы можете передать каталог, файл или URL , и он откроет соответствующую программу для этого параметра. Например, в моей системе KDE:
xdg-open .
открывает текущий каталог в файловом менеджере Dolphinxdg-open foo.txt
открывает файл foo.txt в emacsclient, который я настроил как обработчик по умолчанию для файлов .txtxdg-open http://www.google.com/
открывает google.com в моем браузере по умолчаниюПриложение открывается в виде отдельного окна, и вы получите подсказку обратно в свой терминал и сможете выполнять другие команды или закрывать свой терминал, не затрагивая новое окно графического интерфейса пользователя.
Я обычно получаю кучу сообщений об ошибках
stderr
, но я просто игнорирую их.Редактировать:
добавление аргументов
xdg-open . >/dev/null 2>&1
перенаправляет ошибки и вывод. Этот звонок не заблокирует ваш терминал. Привязка этого к псевдонимуfilemanager='xdg-open . >/dev/null 2>&1'
может пригодиться.источник
Практически любое приложение с графическим интерфейсом (в системах X Window) можно открыть из окна терминала в этом графическом интерфейсе. Чтобы открыть любое приложение с графическим интерфейсом, введите имя исполняемого файла в командной строке. Большинство файловых браузеров принимают каталог в качестве аргумента командной строки, поэтому обычно вы должны передавать его
.
в качестве параметра.Вот несколько примеров для некоторых популярных систем, большинство систем на основе X работают аналогично.
В Gnome вы можете запустить
nautilus
(браузер файлов по умолчанию) напрямую, или в Gnome 2 вы можете использоватьgnome-open
для открытия любого файла (включая каталоги) с помощью настроенного приложения-обработчика файлов Gnome:или
В KDE есть два популярных файловых браузера, я не знаю, какая команда похожа
gnome-open
, хотяgnome-open
может быть выполнена в KDE, но по умолчанию она открывает приложения Gnome.или
На OS X , как упоминалось в комментариях, может использоваться аналогичная программа командной строки
open
.Что если вы не знаете имя исполняемого файла браузера вашей системы?
Если на Gnome 2, используйте
gnome-open .
If на OS X, позвонитеopen .
. Каждый из них выполнит настроенный файловый браузер для вашей графической среды.Если вы не знаете такой команды в своей оконной системе, вот один из способов выяснить это в системах с
ps
командой, которая понимает параметры-u USER
и-o FORMAT
:ps -u$USER -o comm > /tmp/$$A
ps -u $USER -o comm > /tmp/$$B
(обратите внимание наB
суффикс, это файл, отличный от шага 1).diff /tmp/$$[AB]
.Должно отображаться название вашего файлового браузера. Возможно, вы могли видеть более одного имени, если другая программа запускалась под вашим идентификатором во время между вызовами
ps
.Например:
источник
nautilus
Насколько я помню, Ubuntu использует файловый браузер по умолчанию . Поэтому, чтобы открыть определенную папку из терминала, вы можете напечатать что-то вроде следующего:или
nautilus
автоматически отключается от терминала, к которому он был вызван, но предположим, что вы используете другой файловый браузер и хотите закрыть терминал, с которого вы вызвали свой файловый браузер, вы можете использовать егоnohup
для этого. Если вы используете, скажем,thunar
(другой файловый браузер), вы можете ввести следующее:источник
Просто используйте
gio open
Используйте -
gio open .
gio open example/
источник