.txt 파일의 내용을 등호 뒤에 bash 명령에 대한 인수로 전달하는 방법

.txt 파일의 내용을 등호 뒤에 bash 명령에 대한 인수로 전달하는 방법

공개 키의 내용을 입력하는 대신 해당 내용을 입력으로 전달하고 싶습니다. 사용된 명령은

ipa user-mod user --sshpubkey='ssh-rsa AAA ........'

이 일.

내가 할 때

ipa user-mod user --sshpubkey=`cat ~/.ssh/id_rsa.pub`

또는 다른 조합으로 오류가 발생합니다.

ipa: 오류: 'user_mod' 명령은 최대 1개의 인수를 사용합니다.

등호 다음에 텍스트 파일을 단일 매개변수로 변환하는 방법은 무엇입니까?

답변1

cat쉘이 명령의 출력을 문자(기본적으로 공백, 탭 및 줄 바꿈)의 별도 단어로 분할하는 것을 방지 $IFS하고 쉘이 각 단어에 대해 파일 이름 글로빙을 수행하지 않도록 하려면 명령 대체를 인용해야 합니다 .

요컨대,

ipa user-mod user --sshpubkey="`cat ~/.ssh/id_rsa.pub`"

또는 더 새롭고 친숙한 $(...)구문을 사용하고 다음을 제거하십시오 cat.

ipa user-mod user --sshpubkey="$(<~/.ssh/id_rsa.pub)"

또한보십시오:

관련 정보