명령값을 변수에 저장하고 출력하는 방법

명령값을 변수에 저장하고 출력하는 방법

sed 명령으로 실행 중이며 변수에 저장하고 있지만 변수를 에코하면 출력이 표시되지 않습니다.

new_ip=$(sed -i 's/\./-/g' iplist)
echo $new_ip

미리 감사드립니다

답변1

-i파일을 내부에서 수정하고 출력을 생성하지 않는 sed의 (in-place) 옵션을 사용하고 있습니다 . 모든 마침표를 대시로 바꾸도록 파일 이 수정되었을 수 있지만 변수 iplist에 저장할 출력이 없습니다 . 파일을 수정하지 않으려면 이 옵션을 제거할 수 있습니다.new_ip-i

또한 변수 확장을 인용해야 합니다.

echo "$new_ip"

관련 정보