Как открыть браузер файлов с конкретным файлом, выбранным по умолчанию?

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

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

Если существует несколько решений, Я бы предпочел использовать xdg-open, caja, nautilus или nemo с некоторыми флагами командной строки. В основном я ищу команду типа

xdg-open --in-file-browser xyz

, которая, очевидно, не работает, но есть ли способ сделать это или что-то похожее на работу?

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

xdg-open --in-file-browser *.png

в легко начать операцию перетаскивания именно для этих файлов.

2
задан 15 August 2019 в 15:29

2 ответа

К сожалению, кажется, что xdg-open не поддерживает это. Состояние некоторых определенных файловых браузеров:

  • Caja: никакая поддержка, предоставление параметров командной строки делает эквивалентный из xdg-open для каждого параметра.
  • Немо : nemo --no-desktop FILE откроет новое окно с предварительно выбранным ФАЙЛОМ. Если несколько файлов будут даны, то Немо откроет новое окно для каждого.
  • Наутилус : nautilus --no-desktop FILE откроет новое окно с предварительно выбранным ФАЙЛОМ. Если несколько файлов будут даны, то Наутилус выполнит новый процесс nautilus FILE1... nautilus FILEx для каждого параметра. Обратите внимание, что Наутилус создаст новые процессы, не только открывают несколько окон или самого ветвления.

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

0
ответ дан 23 October 2019 в 15:49

Я использую следующие функции, определенные в моем ~/.bashrc:

walt@bat:~(0)$ type url;type furl
url is a function
url () 
{ 
    if [[ "x$2" != "x" ]]; then
        ff_opt="$2";
    else
        ff_opt="-new-tab";
    fi;
    /usr/bin/firefox "$ff_opt" "$1"
}
furl is a function
furl () 
{ 
    if [[ -f "$1" ]]; then
        echo "$1" | egrep -q '^/';
        if [[ $? -ne 0 ]]; then
            furl_file="file://${PWD}/$1";
        else
            furl_file="file://$1";
        fi;
        url "$furl_file" -new-tab;
    else
        echo "furl: ${1}: No such file";
    fi
}
walt@bat:~(0)$ type furlw
furlw is a function
furlw () 
{ 
    if [[ -f "$1" ]]; then
        echo "$1" | egrep -q '^/';
        if [[ $? -ne 0 ]]; then
            furl_file="file://${PWD}/$1";
        else
            furl_file="file://$1";
        fi;
        url "$1" -new-window;
    else
        echo "furlw: ${1}: No such file";
    fi
}
0
ответ дан 2 December 2019 в 06:03

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

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