김승현
[OverTheWire] Bandit Level 8 → Level 9 본문
문제
암호는 data.txt 파일 안에 있으며 암호는 한 줄인데 중복되지 않는 내용의 한 줄만 있다는 문제이다.
홈페이지에서 주어진 명령어 중 uniq가 있는데 이 명령어는 중복을 제거하는 명령어이기 때문에
uniq를 활용해서 문제를 해결하면 될 것 같다.
풀이
ls를 해보면 설명에서 있던 것처럼 data.txt가 있는 걸 확인할 수 있다.
data.txt를 cat 해보면 한 줄씩 암호들이 나열되어 있다.여기서 중복되지 않고 하나만 있는 문자를 찾아야 한다.
이때 필요한 명령어가 uniq와 sort이다.
uniq : 중복된 내용이 연속된 행에 존재한다면 하나만 남기고 제거한다.
ex1) asd asd zxc → zxc asd asd |
ex2) asd asd asd → zxc zxc |
uniq의 옵션
-c : 몇 번 중복되는지 표시
-u : 중복되지 않는 것만 표시
그러나 data.txt를 보면 중복된 내용이 있어보이지만 연속된 행에 존재하진 않는다. 이때 필요한 게 sort 명령어이다.
sort : 오름차순으로 문자들을 정렬한다.
ex) abcd abcd bcde → addd addd bcde |
오름차순으로 정렬해서 중복되는 것들을 연속된 행에 정렬시킨 후,
uniq -u를 통해 중복되지 않는 문자열만 출력해서 나오는 문자열이 다음 단계로 가는 암호이다.
다음 문제
[OverTheWire] Bandit Level 9 → Level 10
문제 암호는 data.txt 파일에 있다. 암호는 앞에 몇개의 =문자가 있고 사람이 읽을 수 있는 문자열 중 하나라는 것 같다. 필요한 명령어에 보면 strings라는 명령어가 있는데 문제에도 strings가 있고
kshind.tistory.com
'Linux > OverTheWire : Bandit' 카테고리의 다른 글
[OverTheWire] Bandit Level 10 → Level 11 (0) | 2023.02.16 |
---|---|
[OverTheWire] Bandit Level 9 → Level 10 (0) | 2023.02.16 |
[OverTheWire] Bandit Level 7 → Level 8 (0) | 2023.02.16 |
[OverTheWire] Bandit Level 6 → Level 7 (0) | 2023.02.16 |
[OverTheWire] Bandit Level 5 → Level 6 (0) | 2023.02.15 |