ssh-copy-id 앞에 추가 콘텐츠 추가

ssh-copy-id 앞에 추가 콘텐츠 추가

이 명령을 사용하고 있지만 ssh-copy-id공개 키를 추가하기 전에 새 줄과 이름 같은 것을 추가하고 싶습니다. 예를 들어:

new line    
#Name of the person
pub.key here ..asdadsdad

이는 많은 서버에서 for 루프를 통해 스크립트를 실행하므로 어떻게 연결할 수 있습니까? 이제 나는 이것을 가지고 있습니다 :

for i in $( cat file_servers ) do 
ssh-copy-id -i keyfile root@$i 

하지만 키를 추가하는 마지막 줄 앞에 새 줄과 "#사람 이름"을 추가하는 방법을 모르겠습니다.

답변1

ssh-copy-id기본적으로 로컬 keyfile( identity또는 공개 키)을 원격 서버에 복사하므로 keyfile원하는 내용을 편집하고 추가할 수 있습니다.

keyfile원하는 내용을 편집 하고 추가하세요.

#
#이름
ssh-rsa NF 사용자 이름@호스트

이제 이 작업을 수행하면 ssh-copy-id -i keyfile <host>이 줄이 원격 서버의 .ssh/authorized_keys.

답변2

sed를 사용하여 다음과 같은 인라인 대체 항목을 추가할 수 있습니다.

sed -i '1s/^/\nName of person\n/' $i

그러면 파일 시작 부분의 첫 번째 줄이 흰색 줄(\n), 사람 이름 및 캐리지 리턴(\n)으로 대체됩니다.

이것은 스크립트의 두 줄 사이에 있습니다.

관련 정보