cat 및 tee를 사용할 때 명령 출력 숨기기

cat 및 tee를 사용할 때 명령 출력 숨기기

일부 IP가 포함된 텍스트 파일이 있습니다. 터미널에 출력을 표시하지 않고 이 텍스트 파일의 내용을 복사하고 싶습니다 /etc/ansible/hosts(예제 2 참조).

노트:루트 사용자가 비활성화되었습니다.

다음을 사용하는 경우:

  1. sudo cat myfile.txt >> /etc/ansible/host

sudo cat은 리디렉션에 영향을 주지 않기 때문에 작동하지 않습니다(예상).

  1. cat myfile.txt | sudo tee --append /etc/ansible/hosts

터미널에 출력을 표시한 다음 /etc/ansible/hosts AAAA BBBB CCCC에 복사합니다.

  1. 추가하면 /dev/null결과가 손상됩니다(아무것도 에 복사되지 않음 /etc/ansible/hosts).

답변1

sudo tee -a /etc/ansible/hosts <myfile.txt >/dev/null

또는 다음을 사용하려는 경우 cat:

cat myfile.txt | sudo tee -a /etc/ansible/hosts >/dev/null

이들 중 하나라도 작동해야 합니다. /dev/null시도할 때 어떻게 "추가"하는지 명확하지 않지만 tee이렇게 하면 표준 출력이 /dev/null.

답변2

"-c" 스위치와 함께 bash를 사용해 보십시오. 예를 들어:

sudo bash -c "cat /etc/hosts >> /etc/ansible/hosts" >> /dev/null

관련 정보