LINUX.ORG.RU

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

 , , ,


0

1

Всем привет.Моё детище, Если в названии файла пробел, то будет ошибка. Переименовать, внутри переменой, у меня никак не выходит, может, поможете с перемещением файла с пробелом в названии?

#!/bin/bash

#ищем файлы с расширением .mkv, .m4v

Downloads_file=$(find /volume1/Geroev_Avenue_18/Downloads/ -maxdepth 1 -type f \( -iname "*.mkv" -or -iname "*.m4v" -or -iname "*.mp4" \) -and -mmin +5 -exec basename "{}" ';' | sed -n '1p' ); 

echo $Downloads_file

Downloads_file_film=$(find /volume1/Geroev_Avenue_18/Downloads/ -maxdepth 1 -type f \( -iname "*.mkv" -or -iname "*.m4v" -or -iname "*.mp4" \) -and -mmin +5 | sed -n '1p' );

#проверяем наличие найденного файла & отправляем сообщение в Телеграмм

if [ -n "$Downloads_file_film" ]; then mv -nfv $Downloads_file_film /volume1/Geroev_Avenue_18/Shared_Videos/Films/ && curl -X GET -k "https://api.telegram.org/bot18:9agk/sendMessage?chat_id=-4140&text=Films for PLEX App has been updated, file is "$Downloads_file""; 

fi

Спаибо



Последнее исправление: xaizek (всего исправлений: 5)

Ну а что стушевался.

mv -nfv "$Downloads_file_film" "/volume1/Geroev_Avenue_18/Shared_Videos/Films/"
andytux ★★★★★
()

$Downloads_file_film /volume1/Geroev_Avenue_18/Shared_Videos/Films/ –> "$Downloads_file_film /volume1/Geroev_Avenue_18/Shared_Videos/Films/"

anonymous
()

Я делал проще: предварительно заменял седом или авк пробел на знак подчеркнивания (_) Потом обратно.

Bootmen ☆☆☆
()
Ответ на: комментарий от Bootmen

Смотрите, если ковычки, то, при наличии пробела в названии файла, в переменную попадает пробел. Дальше, curl, который в телеграмм шлёт уведомление. В уведомлении в переменной пробел. Телеграмм после пробела из переменной рвёт сообщение, оставляя только первое слово.

//ковычки для mv решили вопрос перемещения, спасибо

skyspirit
() автор топика
2 сентября 2021 г.

Использовать нуль-терминированые строки

find -print0 | xargs -0

AVL
()
Ответ на: комментарий от anonymous

Классика говнобаша.

классика говнонимуса.

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