четверг, 27 февраля 2025 г.

Дополнение к публикации "Заполнить флэшку нулями в Linux с отображением хода процесса"

Описанное решение является дополнением к этой публикации и связано с определённой степенью лени использовать ввод команд в терминале.

Реализация задуманного заключается в создании исполняемого файла sh и соответствующей ему кнопки запуска в Cinnamon или значка запуска в xfce. 

Листинг файла sh: 

#!/bin/bash
zenity --width=200 --title "Носитель" --text="Указать носитель в виде sda, sdb, sdc..." --entry > /tmp/dev.txt
if [ -s /tmp/dev.txt ]; then
    echo " "
    echo " "
    echo " Заполнение носителя нулями."
    echo " "
    echo " После завершения процесса"
    echo " окно будет закрыто автоматически"
    echo " "
    sudo dd if=/dev/zero of=/dev/$(cat /tmp/dev.txt) bs=1M status=progress
  else
    echo " "
    echo " "
    echo " Не указан носитель (sda, sdb, sdc...)."
    echo " Повторите, указав нужный носитель."
fi
echo " "
echo " "
sleep 5
exit

Инструкция if [ -s /tmp/dev.txt ]; then проверяет наличие непустого файла /tmp/dev.txt, в который записывается носитель (флэшка). Если носитель указан, то происходит процесс заполнения её нулями. Если нет, то предлагается повторить операцию, указав нужный носитель. В графике выглядит следующим образом:



В строке указания носителя вводить именно так как просит форма: sda, sdb...  Вводить /dev/sda, /dev/sdb... не требуется, так как нужное подставляется командой в файле sh.

Комментариев нет:

Отправить комментарий