📦 synology.forum архів спільноти · 2005–2022
ai.synology.forum →
ГоловнаУстановка, Загрузка и НастройкаСкрип копирования файла с пробелами в пути

Скрип копирования файла с пробелами в пути

Bbrne09.11.2018#1

Станция DS218j

В планировщике заданий создаю задачу с использованием простого скрипта:

Скажу сразу, что в скриптах новичок.

В таком варианте все работает. Создается копия файла с текущей датой в резервной папке.

тест1.jpg

#!/bin/sh
file_buckup=тест1.jpg
otkyda=/volume1/otkuda1/
kyda=/volume1/kuda1/
CURDATE=`/bin/date '+%d.%m.%Y'_'%H.%M.%S'`
cp $otkyda$file_buckup $kyda"$CURDATE"_$file_buckup

Но если в имени, или в пути есть пробелы, то скрипт не работает.

тест 1.jpg

#!/bin/sh
file_buckup=тест 1.jpg
otkyda=/volume1/otkuda1/
kyda=/volume1/kuda1/
CURDATE=`/bin/date '+%d.%m.%Y'_'%H.%M.%S'`
cp $otkyda$file_buckup $kyda"$CURDATE"_$file_buckup

Пробовал с кавычками:

так:"тест 1.jpg"

так:`тест 1.jpg`

так:`$тест 1.jpg`

Не работает.

Знаю что в линуксе пробелы моветон, но такие условия. Пробелы нужны. :mellow:

Подскажите пожалуйста как это можно решить?

 

Для администратора: прошу пожалуйста, отредактируйте очепятку в названии темы "скрипт" вместо "скрипов")))

Uumount11.11.2018#2

1. Переменные:

file_buckup="тест 1.jpg"

otkyda=/volume1/otkuda1

kyda=/volume1/kuda1

 

2. Команда:

cp $otkyda/"$file_buckup" $kyda/"$CURDATE"_"$file_buckup"

 

Получится:

11.11.2018_22.30.42_тест 1.jpg

 

Но скрипт тот еще )

Bbrne12.11.2018#3
1. Переменные:

2. Команда:

Получится:

11.11.2018_22.30.42_тест 1.jpg

Все заработало как нужно! Спасибо!! :rolleyes: :D

Но скрипт тот еще )

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

А какие грабли в нем есть? Расскажите пожалуйста, что бы не наступить)

В конечном виде, для универсальности, сделал еще и кавычки для пути , т.к. иногда там тоже есть пробелы:

#!/bin/sh
file_backup="тест 1.jpg"
otkyda="otkyda=/volume1/otkuda пробел1"
kyda="kyda=/volume1/kuda1"
CURDATE=`/bin/date '+%d.%m.%Y'_'%H.%M.%S'`
cp "$otkyda"/"$file_backup" "$kyda"/"$CURDATE"_"$file_backup"

Uumount12.11.2018#4

Да работает и хорошо. Это я так, к слову пришлось. Особенно слово 'buckup' понравилось )

Bbrne12.11.2018#5
Особенно слово 'buckup' понравилось )

:lol: :lol: да уж! :D согласен) Спасибо за замечание!

Не знайшли рішення в цьому треді? ШІ знає цей архів і всі даташити — і відповість вашою мовою.Запитати ШІ →