Командная строка для обнаружения драйвера видеокарты в Ubuntu 18.04

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

Теперь, чтобы удалить все символы, кроме алфавитных (любого алфавита ), как сказал @Kusalanada, POSIXly, вы должны использовать tr -cd '[:alpha:]'.

К сожалению, в некоторых trреализациях, включая GNU tr, это не работает для многобайтовых -символов. В локалях UTF -8 это означает все символы, кроме ASCII.

В системах GNU вы можете использовать GNU awkили GNU sed, которые поддерживают многобайтовые символы:

Этот синтаксис не является специфичным для GNU -, но вы найдете некоторые реализации, не относящиеся к -GNU sed/ awk, которые не поддерживают многобайтовые символы. Помните, что GNU sed/ awkпо крайней мере не удалит последовательности байтов, которые не образуют допустимых символов (, как вывод printf 'à b \200\n'в локали UTF -8 ).

С помощью uconvиз проекта ICU вы можете сделать:

;'

Где -iуказывает uconvпропустить ввод, который не может быть декодирован.

Но это работает только для данных UTF -8. Обратите внимание, что он использует свойства символов Unicode (некоторую версию Unicode ), в отличие от того, что ваш язык определяет, что в алфавитном порядке, а что нет.

С GNU grepвы можете использовать:

Или при сборке с поддержкой PCRE (с использованием свойств Unicode):

В GNU awkдругим способом пропустить неверный ввод является использованиеRS:

Чтобы изменить файлы в месте -, вы можете использовать gawkмодуль inplace:

gawk -i inplace gawk -v RS='[[:alpha:]]' -v ORS= '{print RT}' file

1
08.03.2020, 00:26
1 ответ

Вы можете выполнить nvidia-smi | grep -i driverи найти «Версия драйвера».

Или просто nvidia-smiдолжен предоставить вам эту информацию внутри коробки.

0
28.04.2021, 23:21

Теги

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