NUL 문자가 포함 된 이진 데이터를 X 클립 보드에 복사 할 수 있습니까? | xsel printf

내가 다음 중 하나를 수행하면

printf 'a\0b' | xsel
printf 'a\0b' | xsel -b
printf 'a\0b' | xclip
printf 'a\0b' | xclip -selection c

그런 다음 다음 중 하나에 해당하는 선택 항목 (PRIMARY 또는 CLIPBOARD)에서 붙여 넣습니다.

  • 브라우저 텍스트 영역
  • 텍스트 에디터
  • 같은 파이프 xsel | hexdump

a출력 만 가져옵니다.

따라서 이진 데이터를 클립 보드에 저장 한 다음 나중에 붙여 넣을 수 있습니까? 어떻게?

원래 이미지를 클립 보드에 저장하기 위해이 작업을 수행하고 싶었습니다.



답변

클립 보드 에 전체 문자열 포함되어 있습니다.

$ printf 'a\0b' | hexdump -c
0000000   a  \0   b
0000003
$ printf 'a\0b' | xclip && xclip -out | hexdump -c
0000000   a  \0   b
0000003

따라서 입력 된 그대로, NUL 문자 및 모두 xclip -out 인쇄합니다. 데스크톱 클립 보드 통합이 NUL 문자에서 출력을 중지했을 가능성이 높습니다. NUL 문자를 붙여 넣는 데있어 명백한 한 가지 문제점은 사용자에게 보이지 않으며 예상치 못한 동작을 유발할 수 있다는 것입니다. 널리 사용되는 소프트웨어 조차도 NUL 문자를 제대로 처리하지 못할 수 있습니다 .