Включити поточну мітку часу до назви файлу?


0

Я повинен створити багато резервних копій БД вручну mysqldump, наприклад, наприклад:

mysqldump -uroot -proot my-db > my-db.sql

Мені цікаво, чи є простий спосіб включити поточну дату або мітку часу до імені файлу, щоб файл виглядав так: my-db-20150917.sql (або інший формат також добре, навіть мітка часу).

Відповіді:


1

Як позначити мітки моїх файлів?

Щоб включити поточний час / дату до імені файлу, використовуйте комбінацію dateі підстановка команди:

mysqldump -uroot -proot my-db > my-db-`date +%Y%m%d`.sql

The man сторінка для date пояснює інші варіанти, які можна використовувати; але в цьому контексті вас також може зацікавити час:

mysqldump -uroot -proot my-db > my-db-`date +%Y%m%d-%H%M`.sql

Зачекайте, що це "заміна команди"?

Цитуючи з bash hackers wiki про заміну команди :

Підстановка команди розширюється на вивід команд. Ці команди виконуються в добовій оболонці і їх stdout Дані - це те, до чого розширюється синтаксис заміщення.

В основному, date -%Y%m%d виходів 20150917, і ми використовуємо зворотний ( ` ) форму заміни команди, щоб включити цей вивід у команду, яку ви подали для резервного копіювання вашої бази даних. Ми могли б так само використовувати:

mysqldump -uroot -proot my-db > my-db-$(date +%Y%m%d).sql

досягти такого ж результату.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.