표준 입력에서 xxd로 데이터를 수집하는 데 문제가 있습니다. 다음은 명령입니다.stdin을 사용하여 xxd에 16 진수 문자열을 입력하십시오. 어떤 출력도 생성되지 않습니다.
xxd -r -p | dd of=/home/user/test/hex.bin obs=16
쉘에서이 명령을 실행하면 입력을 기다립니다. 나는 '0006303030304e430006303030304e43'을 입력 한 다음 Enter 키를 눌러 보았지만 xxd가 입력을받지 못했거나 dd로 파이프되지 않은 출력을 보였습니다.
는 예를 들어,이 완벽하게 작동합니다 :
내가 무엇을 달성하고자하는echo '0006303030304e430006303030304e43' | xxd -r -p | dd of=/home/user/test/hex.bin obs=16
: 내가, 일부 16 진수 문자열을 넣어 바이너리로 변환 한 후 16 비트 청크에 파일로 저장합니다. 스크립트는 끊임없이 stdin을 청취해야합니다.
xxd가 이런 식으로 작동합니까? 나는 16 진수 문자열 끝에 \ n 또는 \ r \ n을 넣으려고했지만 xxd 출력에는 아무 것도 나타나지 않았습니다.
도움 주셔서 감사합니다.
감사합니다.
문제는 내가 명령을 종료하고 싶지 않다는 것입니다. 나는 이것을 다음과 같이하고 싶다 stdin (16 진수 문자열) -> xxd (2 진수) -> dd -> myfile.bin -> stdin ... 등등. – user2311165