리눅스 / sed, cut, sort

support·2022년 1월 11일
0

코드스테이츠 과제 제출 프로그램


코드스테이츠에서는 과제제출 확인 명령어를 아래처럼 알려준다
이렇게 터미널에 입력하면 과제제출을 만약 두세번 했을 때의
그 목록까지 전부 출력되어서 보기가 힘들었다
코드스테이츠 과정을 듣고 난 선배님이 중복을 제거해서 출력되는 명령어를 만들어 놓으셔서
어떻게 작동되는 건지 원리를 찾아봤다

npx codestates-submission ls


아래 명령어를 입력하면 중복과 제출한 시간이 제외된 목록이 출력된다
npx codestates-submission ls | sed '/name/!d' | cut -d':' -f2 | cut -d',' -f1 | sort -u

📝summary

1 sed '/name/!d' filename

file에서 name이 포함된 라인만 출력

2 cut -d':' -f2
필드를 기준으로 잘라내서 표시
:로 구분된 필드 중 2번째 구역 출력

{ name: 'async-and-promise', timestamp: '2021-12-06T18:29:17.178Z' }
1구역 name
2구역 'async-and-promise', timestamp
3구역 : '2021-12-06T18:29:17.178Z'

3 cut -d',' -f1
, 로 구분된 필드 중 1번째 구역 출력

1구역 : 'async-and-promise'
2구역 : , timestamp

4 sort -u
정렬 후 중복 값 제거

참고자료
linux cut
linux sort

0개의 댓글