LINUX.ORG.RU

ошибка в команде?


0

1

Задача: например, хотим в feh загружать список файлов, начинающийся с нужного имени. Например вот так: feh $(script file_name.png)

script я написал, он выдает отсортированный список файлов, начинающийся с file_name.jpg. Имена файлов заэскейпил (на выходе типа такого получается: 'file name split' file_whole 'another split'). Пробовал разные другие варианты (просто экранировать пробелы, например).

Проблема в том, что имена фалов с пробелами не получается скормить феху.

В результате выполнения feh $(script file_name.png) все равно имена файлов кусками получаются. Плохо знаю shell, подскажите решение, плиз.

★★

Ответ на: комментарий от Jetty

естесна в зсш может быть другой формат ФОРа, но это уже мелочи )

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

Я не очень понял, что делает этот скрипт. Мне надо готовый список аргументов перенаправить в другое приложение, скопом. xargs здесь, действительно, подходит.

А тут изменение дефолтного разделителя, потом перебор аргументов и поочередное выполнение программы с каждым из них.
Или я чего-то недопонял в коде?

frpaul ★★
() автор топика
Ответ на: комментарий от frpaul

а как по-твоему поступит xargs с пробелами?

xydo ★★
()
Ответ на: комментарий от Jetty

Не буду голословен

jet@fame:~$ rm "screenshot0 01.png"
jet@fame:~$ cp screenshot001.png screenshot0\ 01.png
jet@fame:~$ echo "screenshot0 01.png" | xargs ls
ls: cannot access screenshot0: No such file or directory
ls: cannot access 01.png: No such file or directory
jet@fame:~$ ls screenshot0\ 01.png 
screenshot0 01.png
jet@fame:~$ 

Конструкция с ФОРом позволит всунуть кавычки(дабы заэкранировать пробел)

Jetty ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.