Я хотел бы написать символы не-ASCII (0xfe
, 0xed
и т. Д.) На стандартный ввод программы.bash - введите символы в шестнадцатеричном виде в стандартный ввод
Есть много подобных вопросов к этому, но я не нашел ответа, потому что:
- Я хочу написать однобайтовые символы, а не символы Юникода
- Я могу» т труб выход
echo
или что-то
На OS X¹ вы можете проверить с:
nm - -
Я хотел бы написать магические байты объектных файлов (например, 0xfeedface
) до nm
с использованием стандартного ввода, чтобы я мог видеть, как он себя ведет, и я могу его перекодировать.
Если я использую трубку, то второй аргумент -
, что означает стандартного ввода, никогда не будет найдено ни одного байта, так как все стандартный ввод будет идти к первому. При использовании терминала вместо трубы я могу ввести Ctrl + D
, чтобы первый получил «закрытый», а второй начал читать.
Я пробовал с Ctrl + Shift + U
и Unicode Hex Input OS X, но он не работает - я не могу записать с ним нужные символы.
Я также пробовал с буфером обмена с pbcopy
, но он не может читать/вставлять символы, отличные от ASCII или не-Юникода.
Как я могу достичь своей цели?
Не стесняйтесь, так как это был трудный вопрос для выражения.
¹ nm
на Linux не обрабатывает стандартного ввода.
Это зависит от эмулятора терминала. Невозможно набрать все символы на клавиатуре. – Barmar