скрипт bash для резервного копирования файла [закрыт]

У меня есть несколько файлов для резервного копирования. Мне нужен скрипт, чтобы проверить номер строки файла, и если он превышает, скажем, 8000 строк, он просто застегнет его и назовет его форматом даты. Мне нужна ваша помощь.

1
задан 28 July 2014 в 17:51

1 ответ

Вот пример скрипта, который делает то, что вы описываете

#!/bin/sh

FILENAME=$1
LINES=$(cat "$FILENAME" |wc  | awk '{print $1}')
MAXLINE="8000"
DATE=$(date +'%Y-%m-%d')
BACKUP_PATH="/path/to/files/"


do_backup(){
        tar xvf ""backup_$DATE.tar"" "$BACKUP_PATH"
}

if [ "$LINES" -gt "$MAXLINE" ];
then
        do_backup
fi

Сначала он объявляет сом переменные,

FILENAME - это файл, который вы хотите проверить длину.

LINES iis количество строк, которые мы находим, в файле, который мы проверяем

MAXLINES - это максимальное количество строк, которые мы разрешаем, перед созданием резервной копии.

DATE - сегодняшняя дата в формате Year-Month-Day

BACKUP_PATH - это каталог, который вы собираетесь делать резервными копиями.

do_backup - это функция, содержащая команду резервного копирования

, чтобы сохранить сценарий в файл в терминале:

chmod +x  script_name

, чтобы сделать его исполняемым

./ script_name / path / to / file_to_check_rows_of

Если вы хотите больше узнать о том, как сценарий работает, запуская его с помощью:

sh -x имя_страницы

1
ответ дан 24 May 2018 в 05:12

Другие вопросы по тегам:

Похожие вопросы: