1. Создать рекурсивно каталоги с наименованием года и месяца как было на уроке. Затем рекурсивно ( -r) командой ls получить эти каталоги и перенаправить вывод в файл stdout_date.
2. С помощью той же команды ls и ключа l получить список файлов и каталогов из каталога etc и перенаправить вывод в файл stdout_etc.
3. Посчитать количество строк и символов в файле stdout_date.
4. Получить из файла stdout_all все совпадения с именем sys и перенаправить вывод в файл stdout_sys.
5. Переместить файлы stdout_all и stdout_sys в любой каталог с годом и месяцем.
Только команды для решения этого всего
Даю 100 балов + лучший ответ
Заранее очень благодарен
Если всё будет в идеале +300балов за идеал ответ (обсуждается после)
Ответы
Хорошо, давайте решим каждый из ваших пунктов с помощью команд в терминале:
Создать рекурсивно каталоги с наименованием года и месяца:
bash
Copy code
mkdir -p $(date +'%Y/%m')
Получить рекурсивный список каталогов и файлов из каталога etc и перенаправить вывод в файл stdout_etc:
bash
Copy code
ls -lR /etc > stdout_etc
Посчитать количество строк и символов в файле stdout_date:
bash
Copy code
wc stdout_date
Получить из файла stdout_etc все совпадения с именем sys и перенаправить вывод в файл stdout_sys:
bash
Copy code
grep 'sys' stdout_etc > stdout_sys
Переместить файлы stdout_etc и stdout_sys в любой каталог с годом и месяцем:
bash
Copy code
mkdir -p $(date +'%Y/%m')/destination_directory
mv stdout_etc stdout_sys $(date +'%Y/%m')/destination_directory
Эти команды выполняют ваши пункты согласно вашему описанию. Пожалуйста, убедитесь, что у вас есть права на запись в каталоги и файлы, которые вы создаете, перемещаете и изменяете.
Если у вас есть какие-либо дополнительные вопросы или комментарии, пожалуйста, дайте знать!