![스크립트에서 sudo tee를 사용하면 가비지를 터미널로 보냅니다. bash Debian 11 [복제]](https://linux55.com/image/210285/%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EC%97%90%EC%84%9C%20sudo%20tee%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EB%A9%B4%20%EA%B0%80%EB%B9%84%EC%A7%80%EB%A5%BC%20%ED%84%B0%EB%AF%B8%EB%84%90%EB%A1%9C%20%EB%B3%B4%EB%83%85%EB%8B%88%EB%8B%A4.%20bash%20Debian%2011%20%5B%EB%B3%B5%EC%A0%9C%5D.png)
명령줄이 있습니다.
# Download and add the Nginx GPG key to verify the authenticity of the packages.
wget -O - https://nginx.org/keys/nginx_signing.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg
그러면 키링에 올바른 데이터가 기록될 뿐만 아니라 터미널에도 스프레이됩니다. sudo tee를 sudo cat >으로 변경해 보았으나 ">"가 sudo의 일부가 아니어서 파이프가 깨졌습니다.
또한 stdout을 /dev/null로 리디렉션하는 다양한 방법을 시도했지만 파이프가 여전히 손상되었습니다.
핵심 바이너리 코드를 터미널로 보내는 것을 방지하는 깔끔한 방법이 있습니까?
답변1
정의( man tee
)에 따라 이 tee
명령은 읽은 내용을 복사합니다.표준 입력이름이 지정된 파일에 복사하여표준 출력.
출력을 원하지 않으면 다음으로 리디렉션하십시오 /dev/null
.
... | sudo tee outfile >/dev/null