Как попросить ALSA вывести на конкретный приемник Pulseaudio?

Я до сих пор не знаю, как использовать драйвер nvidia в ядре, но мне, по крайней мере, удалось успешно загрузить компьютер с работающим x-сервером.

После установки ядра отредактируйте / etc / default / grub и добавьте nomodeset в строку с GRUB_CMDLINE_LINUX_DEFAULT .

GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"

Сохраните файл и выполните

sudo update-grub

Тем не менее, проблема кажется нерешенной, поскольку при загрузке компьютера я вижу что-то вроде [Failed] в журнале загрузки. Но, по крайней мере, это работает. : (

1
12.03.2019, 21:09
2 ответа

Проще всего сделать это для собственного использования, просто разбив heredoc на две части:

cat > run_array_job.sh<<'EOF'

#!/bin/bash -l
...
EOF

printf 'BASEDIR="%s"\n" "$sourcedir" >> run_array_job.sh

cat >> run_array_job.sh<<'EOF'
echo "BASEDIR" echo $BASEDIR
...
EOF

qsub -t 1-${num_files}  run_array_job.sh

Это просто создает первую часть файла, добавляет единственную строку, для которой вы хотели, чтобы переменная была доступна в конце этой первой части, используя >>, а затем соединяет остальную часть документа в конце в том же способ.

В конце вы получите тот же связный файл, только написав всего пару дополнительных строк. Если у вас есть несколько переменных для передачи, вы также можете указать их все одновременно.

3
27.01.2020, 23:18

Это довольно сложно сделать, так как в отличие от кавычек, вы не можете просто остановить и перезапустить раскрытие в документе здесь -. Но мы могли бы опубликовать -и обработать здесь -документ с помощью sed:

.
#!/bin/bash
sourcedir=/some/path
sed -e "s,%%sourcedir%%,$sourcedir,g" << 'EOF'
some commands here with $variables not expanded 
except for the special %%sourcedir%%, which is
EOF

Запуск, который производит вывод:

some commands here with $variables not expanded 
except for the special /some/path, which is

Команда sedпросто заменяет все экземпляры %%sourcedir%%любым значением $sourcedir(, если оно не содержит запятых; вам нужно будет изменить разделитель для команды sна что-то другое.)

Для ясности я изменил заполнитель на другой формат, но вы также можете оставить его как $sourcedir, а затем использовать sed -e "s,\$sourcedir,$sourcedir,". (Хотя обратите внимание, что он также будет соответствовать $sourcedirectoryи другим подобным переменным, но не ${sourcedir}, даже если это будет эквивалентно в оболочке.)

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

#!/bin/bash
export sourcedir=/some/path
envsubst '$sourcedir' << 'EOF'
some commands here with $variables not expanded 
except for the special $sourcedir, which is
EOF
2
27.01.2020, 23:18

Теги

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