поймите последовательность перенаправлений

Вы получили меня любопытный, как это будет сделано. Сайт Pendrivelinux имел учебное руководство, я сделал это от своего Монетного двора 9 установок вместо живого CD, как сайт предполагает.

Я запустил с нахождения местоположения моей Карты памяти в терминале, который я выполнил df это возвратило местоположение устройства как

/dev/sdg1   /media/LINUXUSB

после этого я работал

sudo su

и затем устанавливать личинку 2

grub-install --no-floppy --force --root-directory=/media/LINUXUSB /dev/sdg1

Я должен был использовать - сила дополнительно, пример на сайте не сделал. Затем я сделал

cd /media/LINUXUSB/boot/grub

Сайт дал ссылку для загрузки копии grub.cfg к/boot/grub каталогу на моей Карте памяти. Ссылка была

wget http://pendrivelinux.com/downloads/grub.cfg

После этого я отредактировал grub.cfg для отражения ISO на моей Карте памяти.

set timeout=10 set default=0

menuentry "Run Fedora" {
    loopback loop /Fedora13.iso
    linux (loop)/isolinux/vmlinuz0 boot=isolinux iso-scan/filename=/Fedora13.iso splash --
    initrd (loop)/isolinux/initrd0.img
}

menuentry "Run Ubuntu" {
    loopback loop /ubuntu-10.04-netbook-i386.iso 
    linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/ubuntu-10.04-netbook-i386.iso splash --
    initrd (loop)/casper/initrd.lz
}

menuentry "Run Clonezilla" {
    loopback loop /clonezilla.iso
    linux (loop)/live/vmlinuz boot=live iso-scan/filename=/clonezilla.iso splash --
    initrd (loop)/live/initrd.img }

Я нашел, что в другой ISO, vmlinuz и initrd были расположены в другом каталоге. Я смог заставить все три запускать процесс начальной загрузки; но, только Ubuntu для фактической загрузки. Если я выясню то, что я должен заставить другие два заканчивать загружать, то я добавлю это позже. Я не попробовал просто эти три никакой другой ISO.

8
10.07.2011, 03:15
2 ответа

Да, порядок имеет значение, и они должны быть считаны слева направо.

command 2>&1 >somefile средства перенаправить stderr (2) текущему месту назначения stdout (терминал). Затем измените stdout для движения в somefile. Таким образом, stderr переходит к терминалу, и stdout переходит к файлу.

command >somefile 2>&1 средства перенаправить stdout к somefile, и затем перенаправить stderr тому же месту назначения как stdout (файл). Так и stderr и stdout переходят в somefile.

Это объяснено в разделе 3.6 из руководства Bash: Перенаправления.

7
27.01.2020, 20:12
man bash 

говорит:

ПЕРЕНАПРАВЛЕНИЕ Перед командой выполняется, ее ввод и вывод может быть перенаправлен с помощью специальной нотации, интерпретируемой оболочкой. Redi ‐ реакция может также использоваться, чтобы открыть и закрыть файлы для текущей среды выполнения оболочки. Следующая опера перенаправления ‐ скалистые вершины может предшествовать или появиться где угодно в рамках простой команды или может следовать за командой. Перенаправления обрабатываются в порядке, они появляются, слева направо.

и

Обратите внимание, что порядок перенаправлений является значительным. Например, команда

ls > dirlist 2>&1

направляет и стандартный вывод и стандартную погрешность в файл dirlist, в то время как команда

ls 2>&1 > dirlist

направляет только стандартный вывод к файлу dirlist, потому что стандартная погрешность была дублирована от стандартного вывода, прежде чем стандартный вывод был перенаправлен к dirlist.

1
27.01.2020, 20:12

Теги

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