Проблема Windows 10 с <пробелом> в качестве разрешенного имени папки, заканчивающегося в Linux

Хотя люди часто называют xdg-openэмуляцией функциональности open, macOS openнемного отличается, потому что она 1. ничего не перенаправляет из stdout/stedrr и 2. отсоединяет все, что вы хотите запустить, из терминал (, что почти всегда требуется при запуске приложений с графическим интерфейсом, чтобы у вас не было терминалов)

Чтобы решить эту проблему, я придумал правильный эквивалент, используя некоторые стандартные инструменты GNU (синтаксис — fish shell, но преобразование в bash тривиально):

function open
    for i in $argv
        setsid nohup xdg-open $i > /dev/null 2> /dev/null
    end
end

Добавлено:

Для тех, кто использует оболочку bash, вот функция:

open ()
{
    for i in $*
    do
        setsid nohup xdg-open $i > /dev/null 2> /dev/null
    done
}
0
03.01.2021, 01:12
1 ответ

Я не вижу признаков такой возможности ни в родном драйвере, ни во FUSE. Оба драйвера относительно скудны по опциям.

Насколько я могу судить, это допустимые имена файлов в файловой системе exFAT, и они определенно допустимы в Linux. Поскольку exFAT, как и UDF, может использоваться в любой операционной системе, а Windows вообще не требуется, нет причин предполагать, что их следует запрещать. Поддерживает их Windows или нет — это вопрос качества реализации, которого нет в Linux (или macOS ).

1
18.03.2021, 22:38

Теги

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