
다음은 디렉토리에 있는 파일의 내용을 인쇄하는 코드입니다. 파일 내용은 다음과 같습니다.
apple
banana
grapes
mango
이름=()
FILES=/path_to_dir/*
for f in $FILES
do
names+=($f)
done
result="$(cat ${names[@]})"
echo "$result"
echo "The names are "$result"" | mailx -s "names are " [email protected]
이를 위해 결과 변수에 대한 출력이 아래에 표시됩니다.
apple
banana
grapes
mango
그러나 이메일에서 "$result"를 인쇄하면 이메일 텍스트에 아래와 같은 출력이 표시됩니다.
apple banana grapes mango
다음과 같이 여러 줄로 된 이메일로 이름을 보내고 싶습니다.
apple
banana
grapes
mango
같은 것을 달성하는 방법은 무엇입니까?
답변1
시도해 보세요echo -e "The names are:\n" "$result"
이 -e
옵션은 개행 기호 \n
해석을 허용합니다. 그런 다음 변수는 자체 큰따옴표를 사용하여 올바르게 확장됩니다.