Как использовать [\ w] + в регулярном выражении в sed?

Имена файлов устройств в / dev различаются в зависимости от варианта Unix. Некоторые из них вы найдете повсюду, например / dev / tty , что означает текущий терминал. Похоже, что / dev / tty3a - это имя четвертого последовательного порта в некоторых вариантах Unix, включая Solaris и SCO OpenServer. Эквивалент для Linux будет / dev / ttyS3 . Итак, ls | tee / dev / tty3a дублирует вывод ls на четвертый последовательный порт.

Если к последовательному порту не подключено ни одно устройство, вы получите сообщение об ошибке («Ошибка ввода / вывода»). Если драйвер для последовательного порта отсутствует, вы получите другую ошибку («Нет такого устройства»). Если узел устройства даже не существует, вы, конечно, получите сообщение «Нет такого файла или каталога».

Если узел устройства существует, но у вас нет разрешения на доступ к нему, вы получите сообщение об ошибке «Доступ запрещен». Если вы не работаете как root или к этому последовательному порту не подключен аппаратный терминал, и вы не вошли в систему на этом терминале, вполне вероятно, что у вас нет разрешения на доступ к этому устройству.

Предполагая, что устройство присутствует, если вы хотите получить к нему доступ как root, вам нужно запустить команду tee как root, например, с помощью

ls | sudo tee /dev/tty3a

. Обратите внимание, что sudo ls | tee / dev / tty3a не будет работать, потому что он запускает только ls от имени пользователя root, команда tee не является аргументом для sudo и запускается как исходный пользователь.В этой команде канал создается исходной оболочкой, а вызов sudo составляет левую часть канала. Если вы хотите запустить как ls , так и tee от имени пользователя root, вам нужно будет написать sudo ls | sudo tee / dev / tty3a (при создании канала все еще в исходной оболочке). Если вы хотите запустить обе команды как root и выполнить настройку канала как root, вам нужно будет вызвать оболочку как root для настройки канала: sudo sh -c 'ls | tee / dev / tty3a '

¹ Последовательные порты пронумерованы от 0.

25
08.05.2015, 17:48
0 ответов

Теги

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