","가 포함된 구분 기호를 사용하여 파일을 반복하고 "목록"의 값을 인쇄하려고 하는데 구분 기호에 대한 모든 값을 가져오는 방법을 잘 모르겠습니다.
다음과 같은 이메일이 포함된 파일이 있습니다(모두 한 줄에 있음).
[email protected],[email protected],[email protected]
내 스크립트는 다음과 같습니다
EmailsFile="/dev/fs/C/Users/myuser/Desktop/EMAILSTOREAD.txt"
for email in $(cat ${EmailsFile} | cut -d "," -f 1-100)
do
echo "${email}\n"
done
파일에 얼마나 많은 값이 포함될 수 있는지 확신할 수 없기 때문에 1-100을 했습니다.
내가 얻는 결과는 다음과 같습니다.
[email protected],[email protected],[email protected]
예상 출력:
[email protected]
[email protected]
[email protected]
어떤 아이디어가 있나요?
답변1
한 가지 해결책은 다음과 같습니다.
awk '{ gsub(",","\n"); print $0 }' $EmailsFile
답변2
솔루션이 패키지 tr
에 포함되어 있기 때문에 솔루션을 사용하는 것을 선호합니다 .coreutils
tr ',' '\n' < ${EmailsFile}