Понимание команды exec > > ()

Вот что у меня сработало после долгой борьбы:

  • прежде всего отредактируйте файл конфигурации виртуальной машины qemu следующим образом:

     cd /etc/libvirt/qemu    
     sudo virsh define win10_GPU.xml
     sudo virsh edit win10_GPU
    

    где «win10 _GPU» — это, конечно, имя вашей виртуальной машины. и добавьте

     <qemu:commandline>
       <qemu:arg value='-cpu'/>
       <qemu:arg value='host,hv_time,kvm=off,hv_vendor_id=null,-hypervisor'/>   
     </qemu:commandline>
    

    после </devices>почти в конце файла
    затем нажмите ctrl+O (save ), ctrl+X (exit )и введите sudo virsh define win10_GPU.xmlснова;

  • удалите все остальные интерфейсы дисплея с вашей виртуальной машины, прежде чем даже начать установку Windows (например, spice, video cirrus и т. д. );

  • Не устанавливайте сборку Windows 10 18xx. Я установил версию 16xx, которая отлично работает даже после полных обновлений.

Это мой личный опыт. Любая другая вещь, которую я пробовал, приводила к этому коду ошибки 43.

4
14.02.2021, 03:30
2 ответа

Общая форма команды — exec > output, которая вызывает отправку всего последующего вывода на стандартный вывод в файл «output».

Это можно расширить; например exec 2> errorприведет к тому, что весь дальнейший вывод на stderr будет отправлен в файл «ошибка»

Итак, >(...)— это башизм, означающий запись вывода в команду ; в данном случае это команда "tee logfile"

Итак, мы складываем их вместе.

exec > >(tee logfile)означает "записывать весь дальнейший вывод в команду tee logfile".

Это означает, что весь будущий вывод будет отправляться на экран и(черезtee)в файл "logfile"

5
18.03.2021, 22:30

Теперь я понимаю.

$ exec 7>&1
$ exec > >(tee logfile)
$ ls -l /proc/self/fd
fd/     fdinfo/ 
logan@logan-mainPC:~/my-test/learning-process-substitution$ ls -l /proc/self/fd
total 0
lrwx------ 1 logan logan 64 Feb 14 15:40 0 -> /dev/pts/0
l-wx------ 1 logan logan 64 Feb 14 15:40 1 -> pipe:[9603908]
lrwx------ 1 logan logan 64 Feb 14 15:40 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:40 3 -> /proc/398229/fd
lrwx------ 1 logan logan 64 Feb 14 15:40 7 -> /dev/pts/0
$ echo hi i will restore stdout now
hi i will restore stdout now
$ exec 1>&7
$ exec 7>&-
$ ls -l /proc/self/fd
total 0
lrwx------ 1 logan logan 64 Feb 14 15:41 0 -> /dev/pts/0
lrwx------ 1 logan logan 64 Feb 14 15:41 1 -> /dev/pts/0
lrwx------ 1 logan logan 64 Feb 14 15:41 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:41 3 -> /proc/398237/fd
$ cat logfile 
total 0
lrwx------ 1 logan logan 64 Feb 14 15:40 0 -> /dev/pts/0
l-wx------ 1 logan logan 64 Feb 14 15:40 1 -> pipe:[9603908]
lrwx------ 1 logan logan 64 Feb 14 15:40 2 -> /dev/pts/0
lr-x------ 1 logan logan 64 Feb 14 15:40 3 -> /proc/398229/fd
lrwx------ 1 logan logan 64 Feb 14 15:40 7 -> /dev/pts/0
hi i will restore stdout now
0
18.03.2021, 22:30

Теги

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