나열된 각 항목에 쉼표를 추가하는 방법

나열된 각 항목에 쉼표를 추가하는 방법

내 쉘 프로그램에서는 서버에서 이름을 잘라서 표시했습니다.

echo `last | grep "pts" | sort | cut -d' ' -f1 | uniq |  grep -v / `"."

나에게 출력을 줘

a22casti 
a22sahot 
a25zhang 
a298wong 
a2abdiri 
a2arya 
a2mukhop 
a3vena.

쉼표를 추가하여 어떻게 만들 수 있습니까?

a22casti,
a22sahot,
a25zhang,
a298wong,
a2abdiri,
a2arya,
a2mukhop,
a3vena.

추가하려고 했는데 tr '\n' ','문장 끝에 쉼표가 추가됩니다. a3vena,.

답변1

각 줄 끝에 쉼표를 추가하고 마지막 줄에서 제거할 수 있습니다.

sed -e 's/$/,/' -e '$s/,$//'

답변2

paste -sd, -

원하는 출력을 제공합니다. 또는 다음 sed버전을 사용해 보세요.

파이프라인에 grep다음을 추가한 후 :

sed -Ez 'y/\n/,/;s/,$//'

이것은 당신이 gnu sed를 가지고 있고 -z그것을 slurp 모드와 확장 정규식 모드에서 작동하고 있다고 가정합니다 -E. 먼저 모든 줄 바꿈을 쉼표로 변경한 다음 마지막 쉼표를 제거합니다.

관련 정보