Linux find xargs grep: найти текст в php файлах

Часто возникает необходимость найти какой-либо текст в проекте в php-файлах. Для этого я пользуюсь командой:

# find /var/www/html/ -type f -iname '*.php' -print0 | xargs -0 grep "some text"

Не буду описывать значения всех опций очень подробно (для этого есть страницы справки man find, man xargs и man grep), но вкратце это сочетание команд означает: найти все php-файлы без учета регистра, даже если в имени папки или файла будут пробелы, команда не завершится с ошибкой, что файл не найден. Провести поиск искомой строки, и если она будет найдена — вывести имя файла.

Linux найти файлы, которые изменялись в диапазоне дат

Часто возникает необходимость найти файлы в Linux, которые изменялись в диапазоне дат.
Для этого можно воспользоваться такими командами:

1. Создать файл-метку начала диапазона дат:

# touch --date "2012-10-01" ~/tmp/2012-10-01.txt

2. Создать файл-метку конца диапазона дат:

# touch --date "2012-10-08" ~/tmp/2012-10-08.txt

3. Найти все файлы, которые изменялись в диапазоне дат:

# find ~ -type f -newer ~/tmp/2012-10-01.txt -not -newer ~/tmp/2012-10-08.txt

Как создать zip архив с паролем в Linux

Иногда в работе с Linux возникает необходимость запаковать файлы с паролем в zip. Можно сделать это командой:

# zip -e secret_archive.zip secret_filename.txt
Ener password:
Verify password:
adding: secret_filename.txt (deflated 2%)

Вот и все.

Распаковываем архив Linux shell tar

В предыдущем посте мы создали архив backup.tar.bz2. Теперь, мы его скопировали на нужный сервер, переходим в папку и распаковываем командой:

# tar xjvf backup.tar.bz2

Мы используем такие ключи программы tar:
Extract from archive — x — разархивировать.
Use bzip2 decompression — j — использовать алгоритм bzip2.
Be verbose — v — показывать распаковываемые файлы и папки.
File name to extract from — f — имя файла.

В результате выполнения команды мы получим все запакованные файлы и папки, которые были на другом сервере, с которого мы делали перенос, включая те же права доступа — поскольку при архивировании мы использовали ключ p.

Архивируем файлы сайта. Linux bash tar bzip

В работе часто возникает необходимость что-либо заархивировать, чтобы потом можно было восстановить из бекапа.

В Linux (unix) есть много различных архиваторов, но я отдаю предпочтение tar с методом сжатия bzip2.

Пример команды на архивирования всего в текущей папке:

# tar cpjf /backup.tar.bz2 ./

Manual page tar хорошо и подробно описывает все возможные методы архивирования. Я лишь кратко расскажу, что делает команда из моего примера.
Create archive — c — создать архив.
Preserve permissions — p — с сохранением установленных разрешений на папки и файлы.
Use bzip2 compression — j — использовать метод сжатия bzip2.
File name — f — имя файла, куда сохранить бекап нужно указать после пробела. Желательно сохранять архив в другую папку в моем примере это файл в корне системы / с именем backup.tar.bz2
Архивировать все, что находится внутри текущей папки ./

программирование и разработка сайтов, Киев
 
Copyright © 2013 - 2024 Шкоденко Тарас. Програмування та розробка сайтів