Что делают эти команды?

ls проверяет, подключен ли STDOUT к терминалу ( isatty (1) ), если нет, то выводит каждое имя файла в отдельной строке.

Вместо этого вы можете использовать ls -C> out.txt или echo *> out.txt , чтобы получить список в формате столбца, хотя в обоих случаях вывод не будет иметь точную форму, как показано ls , когда вывод идет на терминал.

1
06.08.2017, 22:04
2 ответа
read start _

Это присваивает первому слову (согласно$IFS)входной строки переменной start.

du -bcm kali-linux-1.0.8.amd64.iso | tail -1

— странный способ получения размера файла, округленного до следующего мегабайта.

parted /dev/sdb mkpart primary $start $end

создает раздел на sdb, который начинается после пространства, необходимого для iso-файла (, при условии, что единицей измерения по умолчанию для parted является мегабайт, который я не проверял ), и заканчивается 7 ГБ.

3
27.01.2020, 23:24

Извините за некропостинг, но только что столкнулся с тем же. Так что это может дополнить инструкции на странице Kali:

  • Каждая команда находится в отдельной строке

  • end=7gbопределите конечную переменную как 7gb;

  • read start _ < <(du -bcm kali-linux-1.0.8.amd64.iso | tail -1); echo $start

Вот суть проблемы :вы загружаете образ Kali и вы должны создать постоянный раздел из каталога, в котором находится загруженный вами образ , поэтому новый раздел получает свое начало, определяемое конец ISO, который вы скопировали байт -на -байт на USB:

du -bcm kali-linux-1.0.8.amd64.isod isk u sage файла ISO, in b ytes, c complete и 1 m эгабайт размер блока;

tail -1предыдущая команда дает в результате пару строк, например:

3269    kali-linux-2019.2-i386.iso
3269    total

но нас интересует только число до суммы, поэтому сначала мы удаляем последнюю (вторую )строку и получаем:

3269 total

read start _делает последний трюк :читает эту строку до первого пробела, или первой табуляции, или первой новой строки, внутренних разделителей полей по умолчанию, останавливается там (символ подчеркивания )и присваивает это слово переменной start.

echo $startфиксирует это число как переменную $start, поскольку мы не определяли его со знаком равенства.

  • parted /dev/sdb mkpart primary $start $end

Это часть, которая выполняет фактическую работу по созданию раздела, от размера в мегабайтах файлов ISO (3269 МБ, около 3 ГБ )до отметки 7 ГБ. Это та часть, которая станет вашим постоянным разделом. Скажите, что вы согласны с тем, что программа выбирает начальный блок, даже если вы потеряете несколько мегабайт.

Не забудьте изменить sdX на правильную букву для вашей системы. Обычно это намного больше, чем b (. У меня оно есть в g, d и e ), и я думаю, что им следует избегать использования b в примерах, поскольку у многих из нас есть два жестких диска.

0
27.01.2020, 23:24

Теги

Похожие вопросы