Linux викторина №21-25: что делает команда/скрипт на изображении?

Linux викторина №21-25: что делает команда/скрипт на изображении?

Полученные результаты

#1. Что делает команда на изображении выше?

Команда:

ls -1 | paste -sd ','

В этой команде ls -1 (–oneline) выводит каждый файл из текущей директоии в отдельной строке, затем paste -sd объединяет строки в одну с указанным разделителем, в данном случае символ запятой.

Следующий

#2. Что делает команда на изображении выше?

Команда:

tar -czf - /var/log/ | openssl enc -aes-256-cbc -pbkdf2 -e -out logs.tar.gz.enc

Описание: команда создает архив из директории /var/log (tar -czf -) и отправляет его в стандартный поток и передает его команде openssl (openssl enc -aes-256-cbc -e), которая шифрует его с помощью AES-256 и сохраняет результат в logs.tar.gz.enc. Символ минуса – в команде tar выводит данные в stdout.

P.S. Команда расшифровки файла logs.tar.gz.enc:

openssl enc -aes-256-cbc -pbkdf2 -d -in logs.tar.gz.enc -out logs.tar.gz

Следующий

#3. Что делает команда на изображении выше?

Команда:

find /var/log -type f -size 100M -exec rm -i {} \;

Описание: Команда find находит файлы (-type f) в /var/log размером более 100 МБ (-size 100M) и удаляет их с подтверждением (rm -i). Параметр -exec с конструкцией {} \; ( – тут экранирование) выполняет удаление с помощью команды rm для каждого найденного файла отдельно.

Следующий

#4. Что выведет скрипт на изображении выше?

Скрипт:

#!/bin/bash

mkdir project && cd project

echo -e "#!/bin/bashnecho 'Hello from script'" > run.sh

./run.sh

Описание: скрипт создает каталог project и при успешном создании переходит в него. Далее командой echo и перенаправлением > создается другой скрипт, который вывод одну текстовую строку. Но основной скрипт завершится ошибкой “Permission denied” потому что у нового скрипта будет отсутствовать флаг исполнения (x).

 

Следующий

#5. Что выведет скрипт на изображении выше?

Скрипт:

#!/bin/bash

mkdir project && cd project

touch file{1..12}.txt

ls | grep -E "file[12].txt" | xargs rm

ls

Описание: скрипт создает директорию project и переходит в нее. Команда touch с использованием фигурных скобок {1..12} создаёт двенадцать файлов: от file1.txt до file12.txt. Далее ls выводит список файлов в текущей директории. grep -E с регулярным выражением file[12].txt выбирает только те имена, которые содержат file1.txt или file2.txt. xargs получает по пайплайну от предыдущей команды список файлов (file1.txt file2.txtfile12.txt) и передаёт их как аргументы команде rm, которая удаляет их. Последний ls выводит список оставшихся файлов десять файлов: с file3.txt до file12.txt.

Проверить

Подписаться
Уведомить о
0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии