문제
The password for the next level is stored in the file data.txt and is the only line of text that occurs only once
풀이
data.txt 파일에 단 한번 나타나는 특정 텍스트가 다음 레벨로 가는 비밀번호이다!
이번에 우리가 알아야할 내용은 파일안에 특정 문자가 한번만 나오도록 바꿔주는게 문제인 것 같다.
어떻게 문제를 풀면 될까?!
곰곰히 생각해보면 몇가지 키워드를 우리가 알 수 있다.
- 리눅스 파일에서 중복 단어 제거!
- 리눅스 파일에서 한번만 나온 단어 출력!
이 내용을 구글링을 한 결과 너무 바로 나와서 놀랐다.
바로 sort 와 uniq 명령어 두개를 통해 풀 수 있는 문제였다! (여기까지 힌트를 얻었다면, sort 또는 uniq로 문제를 풀어보세요!)
리눅스 문자 정렬 sort
먼저 sort 명령어이다.
sort는 말그대로 정렬을 해주는 명령어이다.
sort 사용법
sort [옵션] [파일명]
sort 옵션 종류
- -r : 역순으로 정렬
- -u : 정렬 후, 유니크 값만 출력
리눅스 중복단어 제거 uniq
다음은 uniq 명령어이다.
uniq는 중복내용을 처리해주는 명령어이다.
uniq 사용법
uniq [옵션] [파일명]
기본적으로 옵션이 없다면, 중복 단어는 단 하나만 출력해준다!
uniq 옵션 종류
- -u: 유일한 라인 출력
- -d : 유일한 라인 제거
- -c : 중복된 횟수 카운트
우리는 여기서 -u 메소드를 통해 한번에 출력할 수 있다!
cat data.txt | uniq -u
data.txt를 읽고! uniq 메서드를 통해 중복제거!
짠! 깔끔하게 유니크한 라인 한줄이 출력됨을 확인할 수 있다.
단순히 '문제를 풀었다'에서 멈추지않고 명령어들을 완벽하게 이해하는데에 목표를 잡자!
더보기를 눌러 비밀번호를 확인하세요!
비밀번호는 다음과 같다
EN632PlfYiZbn3PhVK3XOGSlNInNE00t
'Bandit' 카테고리의 다른 글
리눅스 문자 변환, 삭제 명령어 tr | Bandit Level 11 -> Level 12 (0) | 2023.08.31 |
---|---|
Bandit Level 9 -> Level 10 -> level 11 | 리눅스 문자만 추출 strings, base64 인코딩 (0) | 2023.08.31 |
Bandit Level 7 -> Level 8 | 리눅스 특정 단어 찾기 vi, grep (0) | 2023.08.30 |
Bandit Level 6 -> Level 7 - 리눅스 특정 파일명 검색 (0) | 2023.08.28 |
Bandit Level 5 -> Level 6 - 리눅스 하위 폴더 파일 찾기 (0) | 2023.08.28 |