Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / динамически сформировать имя файла / 9 сообщений из 9, страница 1 из 1
20.09.2010, 17:48
    #36856044
oscol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
#!/bin/bash

if exec tar -cvO /opt/oracle/oradata/sid/archive | bzip2 -zf > /u03/oradata/sid/arh_ora.tbz2
then
chmod 664 /u03/oradata/sid/arh_ora.tbz2
echo
echo файл /u03/oradata/sid/arh_ora.tbz2 создан
echo
fi
exit

Подскажите, пожалуйста, как можно в скрипте на bash динамически
формировать имя файла arh_orф.tbz2 таким образом, чтобы в имя
включался результат выполнения команды date в формате день,месяц,год,часы,минуты:
'arh_ora' + 'результат выполнения команды date' + '.tbz2'

Спасибо
...
Рейтинг: 0 / 0
20.09.2010, 17:55
    #36856060
Dimitry Sibiryakov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
Обратные апострофы. man bash
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
20.09.2010, 17:57
    #36856066
Андрей Панфилов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
oscol,

ОТ. у Вас реальный говнокод на шеле, объясняю почему:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
$ >  1 .txt
$ >  2 .txt
$ tar -cvO  1 .txt  2 .txt  3 .txt | bzip2 -zf >  1 .bz2
 1 .txt
 2 .txt
tar:  3 .txt: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors
$ echo $?
 0 
$ tar -cvO  1 .txt  2 .txt  3 .txt > /dev/null
 1 .txt
 2 .txt
tar:  3 .txt: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors
$ echo $?
 2 
$
...
Рейтинг: 0 / 0
20.09.2010, 19:00
    #36856155
oscol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
Dimitry Sibiryakov
Обратные апострофы. man bash


Обязательно посмотрю. Спасибо.
...
Рейтинг: 0 / 0
20.09.2010, 19:13
    #36856181
oscol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
Андрей Панфиловoscol,

ОТ. у Вас реальный говнокод на шеле, объясняю почему:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
$ >  1 .txt
$ >  2 .txt
$ tar -cvO  1 .txt  2 .txt  3 .txt | bzip2 -zf >  1 .bz2
 1 .txt
 2 .txt
tar:  3 .txt: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors
$ echo $?
 0 
$ tar -cvO  1 .txt  2 .txt  3 .txt > /dev/null
 1 .txt
 2 .txt
tar:  3 .txt: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors
$ echo $?
 2 
$


Поскольку у меня нет 1200 сообщений и как можно предположить Ваших знаний, то
прошу оказать любезность объяснить в чем проблема в реализации приведенной мной
команды tar ?
...
Рейтинг: 0 / 0
20.09.2010, 19:55
    #36856220
Андрей Панфилов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
oscol,

давайте по пунктам:
1. нарисовали трубу (|) - потеряли код выхода tar, дальше по коду у Вас будет виден только код выхода bzip2 (т.е. у Вас в архив могут попасть не все файлы, а Вы об этом можете не узнать, или Вы полагаете, что Вам не надоест день за днем читать логи скрипта?). Лучше писать в таком духе:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
DATE=`date +%Y-%m-%d-%H%M`
FILENAME="/u03/oradata/sid/arch_ora-$DATE.bz2"


tar cfvj $FILENAME /opt/oracle/oradata/sid/archive

if [ $? -eq  0  ] && [ -r $FILENAME ]; then
        chmod  644  $FILENAME
        echo "sucssess"
        exit  0 
else
        echo "fail"
        exit  1 
fi

2. хоть tar и всяки gzip, bzip и пр. иникс-вей, архивы они делают неудобные - нельзя вытаскивать отдельные файлы, используйте лучше zip, только убедитесь, что у вашей версии нет проблем с большими файлами
3. раз бекапите архивные логи оракла, то воспользуйтесь лучше для этой задачи специализированным ПО - сиречь rman
...
Рейтинг: 0 / 0
21.09.2010, 10:47
    #36856880
oscol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
Благодарю Вас ответ
...
Рейтинг: 0 / 0
23.09.2010, 19:59
    #36863372
PA3YM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
oscol,

а почему бы не использовать tar -cjvf дающий на выходе bz2 без дополнительных телодвижений?
...
Рейтинг: 0 / 0
23.09.2010, 21:15
    #36863445
Relic Hunter
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
динамически сформировать имя файла
oscol#!/bin/bash

if exec tar -cvO /opt/oracle/oradata/sid/archive | bzip2 -zf > /u03/oradata/sid/arh_ora.tbz2
then
chmod 664 /u03/oradata/sid/arh_ora.tbz2
echo
echo файл /u03/oradata/sid/arh_ora.tbz2 создан
echo
fi
exit

Подскажите, пожалуйста, как можно в скрипте на bash динамически
формировать имя файла arh_orф.tbz2 таким образом, чтобы в имя
включался результат выполнения команды date в формате день,месяц,год,часы,минуты:
'arh_ora' + 'результат выполнения команды date' + '.tbz2'

СпасибоДа уж... Какой смысл зиповать аркайвлоги-то ежедневно? Синдром Плюшкина, что-ли? Вы правда верите, что они вам могут пригодится, при таком подходе?
...
Рейтинг: 0 / 0
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / динамически сформировать имя файла / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]