Вы также можете использовать xargs
(-l
заставляет выполнять отдельную команду для каждой строки):
timp@helez:~/tmp$ awk -F"\t" '$3 == "76" { print $1"\t"$2}' test.txt | xargs -l ./build.oct
$1 is 1000 and $2 is 2
$1 is 1001 and $2 is 1
timp@helez:~/tmp$ cat test.txt
1000 1 75
1000 2 76
1001 1 76
1001 2 80
timp@helez:~/tmp$ cat build.oct
echo '$1 is ' $1 ' and $2 is ' $2
Как предлагается в комментариях, вы также можете упростить команду awk
, так как и awk
, и xargs
разбиваются на табуляции и пробелы:
timp@helez:~/tmp$ awk '$3 == "76" {print $1,$2}' test.txt | xargs -l ./build.oct
$1 is 1000 and $2 is 2
$1 is 1001 and $2 is 1
, Почему это произошло
, я не эксперт, но от того, что я понимаю, что думаю, что эта проблема вызывается по ошибке помещенным флагом начальной загрузки. Каждый раз, когда вы устанавливаете ОС Linux для двойной загрузки, вы хотите удостовериться, что загрузчик установлен на dev/sda (я установил его на dev/sda5, который является, вероятно, почему я получил спасательную ошибку личинки)
Для фиксации этого (это работало, по крайней мере, для меня)
полностью удаляют ваш linux
, возвращают флаг начальной загрузки к загрузчику окон
выполненное восстановление начальной загрузки
,-------------------------ваш должен смочь загрузиться назад в окна в этот момент, для изменения---------------------------
ваш больше не было нужно раздел Linux в свободное освобожденное пространство
попытка переустановить ваш Linux снова на который свободное освобожденное пространство
первый, попытайтесь установить восстановление начальной загрузки на вашем USB. Образ диска может быть найден на этой ссылке: https://help.ubuntu.com/community/Boot-Repair
изменяет ваши настройки BIOS, таким образом, можно загрузить в использование USB
инструмент OS удаления для удаления незагрузочного Linux (в моем случае это элементарная ОС)
используйте gparted, чтобы вернуть загрузочный флаг в вашу ОС Windows (просто установите его на часть, которая буквально говорит OS)
используйте средство восстановления загрузки, которое будет в дальнейшем гарантировать, что все вернется в нормальное состояние
Вы должны быть в состоянии успешно загрузить обратно в вас Windows при следующем перезагрузке вашего компьютера
используйте средство управления дисками Windows для удаления больше не нужен linux раздел, так что он становится нераспределенным пространством
получить раздел мастера: http://www.partitionwizard.com/free-partition-manager.html и используйте его для расширения диска D или C с этим нераспределенным пространством.
Вернитесь к инструменту управления дисками Windows и сократите диск D или C на количество места, которое вы хотите предоставить вашему linux (они должны попросить вас ввести число). этот шаг может не понадобиться, если вы можете просто изменить ненужное пространство Linux на свободное пространство.
Предыдущие три шага были сделаны, чтобы сбросить 'невыгружаемый раздел linux' обратно в свободное пространство, что может позволить вам снова установить его. Однако я думаю, что может быть более быстрый способ пропустить расширенную часть и просто изменить невыгружаемый раздел linux во свободное пространство щелчком
После исправления загрузчика и выделения мест, необходимых для вашей следующей попытки установки linux, Вы можете, наконец, попытаться переустановить Linux снова
перезагрузиться в USB и установить ОС на freespace (например, dev/sda6), но на этот раз убедитесь, что выбрано правильное место размещения загрузчика . (я выбрал dev/sda на моей успешной попытке и это сработало как шарм).
возможно более быстрое исправление
Мне проще установить Ubuntu рядом, после этого grub будет настроен правильно, и все системы будут перечислены (Win, Elementary, Ubuntu) в меню. (Затем вы можете удалить разделы Ubuntu, поскольку она вам больше не нужна)
После загрузки в ОС запустите это в терминале
подключитесь к Интернету
откройте новый Терминал, затем введите следующие команды (нажимайте Enter после каждой строки):
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair && boot-repair