LINUX.ORG.RU

Помогите написать несложный скрипт.


0

0

Я не программист, самому не по силам. Если кто поможет, буду очень благода... ))

Есть каталоги:
/home/1
/home/2
/home/3
и т.д.
В каждом лежит свой файл, допустим, test.txt, содержимое которого периодически меняется. Его надо бекапить.
Сейчас я это делаю просто командами:
cp /home/1/test.txt /home/1/backup/
cp /home/2/test.txt /home/2/backup/
и т.д.
Беда в том, что этих уже каталогов больше десятка и будет все больше и больше.
В общем, нужен скрипт, который копировал бы каждый файлик test.txt из каждого каталога в соответствующий ему подкаталог backup.
Спасибо!

★★★★

#!/bin/sh

CTL="/home"
BAK="/root/backup"
BAKFILE="test.txt"

for i in `ls $CTL`; do
  cp $CTL/$i/$BAKFILE $BAK/$i-$BAKFILE
  echo copying $i
done

что-то типа этого. но я не проверял :)

shutty
()
Ответ на: комментарий от VladimirMalyk

Спасибо.
А если в названиях каталогов кроме цифр еще и буквы появятся?
Догадываюсь, что в этой строчке:
for i in `seq 1 10`;
нужно будет что-то поменять?

P.S.Две звезды - это по выслуге лет.
А так я эникейщик. ))

afanasiy ★★★★
() автор топика

cp --parent /home/*/test.txt /home/backup

предполагаю, что каталоги уже созданы

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

если с буквами - то самый первый вариант.
вариант от www_linux_org_ru - вообще улет :) я правда не проверял, но смотрится вполне респектабельно.

VladimirMalyk ★★★★★
()
Ответ на: комментарий от no-dashi

с 2003-года на сайте человек. я тогда и линукс то не видел ни разу. даже не помню слышал ли.
вот уж точно звезды за усидчивость :)

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

Спасибо всем.
Особенно no-dashi.
;)

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