Linux 셸의 여러 명령

Linux 셸의 여러 명령

방금 컨테이너D 런타임 설치 프로세스를 설명하는 기사를 보았는데 언급된 명령에 대해 약간 회의적입니다. 오타일 수도 있지만 알아내고 싶습니다. 명령은 다음과 같습니다

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.lis

이제 내가 아는 한 apt-key add - 키를 추가하는 데 사용되며 파이프 표준 출력에서 ​​내용을 읽습니다. 하지만 그 뒤의 에코는 어떻습니까? 이것이 별도의 명령인 경우 || 또는 세미콜론;으로 구분하면 안 됩니다. 명령이 저장소에서 키를 가져온 다음 적절한 소스 목록을 업데이트하는 것이라는 것을 알고 있지만 명령 구문이 혼란스럽습니다.

답변1

이것은 오타입니다. 올바른 명령은 다음과 같습니다:

curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | 
   sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | 
  sudo tee /etc/apt/sources.list.d/kubernetes.list

첫 번째 명령은 gpg 서명을 다운로드한 https://packages.cloud.google.com/apt/doc/apt-key.gpg다음 이를 파이프 sudo apt-key add -( -"표준 입력에서 읽음"을 의미)로 연결하여 알려진 apt 키 목록에 키를 추가합니다.

그런 다음 두 번째 명령은 관련 저장소를 설명하는 줄을 인쇄하고 sudo tee이를 /etc/apt/sources.list.d/kubernetes.list.

이 두 명령을 결합하여 시스템에 서명된 새 저장소를 추가합니다.

관련 정보