OverTheWire: Level Goal: Bandit Level 2 → Level 3
·
OS/LINUX
[ Bandit Level 2 → Level 3 문제 리뷰 ] Bandit Level 2 → Level 3 레벨 목표 다음 레벨의 password는 home 디렉토리의 spaces in this filename 이라는 파일에 저장되어 있습니다. 이 문제를 풀기 위해 필요할 수도 있는 명령어들 ls, cd, cat, file, du, find 문제 해설 (1) 파일명에 공백이 포함된 파일을 읽는 법 spaces in this filename이라는 파일을 읽기 위해 cat spaces in this filename 을 입력한다면 아래와 같이 실행될 것이다. 이렇게 실행이 되는 이유는 띄어쓰기를 할 때마다 다른 파일로 인식을 하기 때문이다. cat 은 여러 파일의 내용을 한 번에 출력시키기도 가능하다. 그래서..
OverTheWire: Level Goal: Bandit Level 1 → Level 2
·
OS/LINUX
[ Bandit Level 1 → Level 2 문제 리뷰 ] Bandit Level 1 → Level 2 레벨 목표 다음 레벨을 위한 password는 이름이 - 인 파일에 위치 해 있습니다. 이 문제를 풀기 위해 필요할 수도 있는 명령어들 ls, cd, cat, file, du, find 문제 해설 (1) - 파일(dashed file) 읽기 ① "cat -" 의 문제점 - 라는 파일을 읽기 위해 cat - 을 입력했더니 파일이 읽어지기는 커녕 다음 명령어도 듣지 않을 것이다. 일단 Ctrl + c 를 눌러 다시 명령어를 입력할 수 있는 환경을 만들고, 왜 "cat -"을 입력하면 파일명이 읽히지 않는 지 알아보자. 리눅스에서 "-" 기호는 표준입력 기호로 cat 바로 다음에 - 을 입력하면 옵션 시..
OverTheWire: Level Goal: Bandit Level 0 → Level 1
·
OS/LINUX
[ Bandit Level 0 → Level 1 문제 리뷰 ] Bandit Level 0 → Level 1 레벨 목표 다음 레벨의 비밀번호는 home 디렉터리에 있는 readme 파일에 저장되어 있습니다. 이 비밀번호를 SSH를 이용해 bandit1로 로그인하세요. 레벨을 위한 비밀번호를 찾으면 SSH(2220번 포트)로 로그인하여 게임을 이어가세요. 이 문제를 풀기 위해 필요할 수도 있는 명령어들 ls, cd, cat, file, du, find 문제 해설 (1) pwd pwd란 print working directory의 약자로서, 현재 작업 중인 디렉터리의 절대 경로를 출력하는 명령어이다. 사용 방법 pwd [옵션] 옵션 설명 -L 심볼릭을 포함하더라도 pwd 환경 변수를 사용 -P 심볼릭 정보를 ..
OverTheWire: Level Goal: Bandit Level 0
·
OS/LINUX
[ Bandit Level0 문제 리뷰 ] Bandit Level 0 레벨 목표 이 레벨의 목표는 SSH를 이용해 게임에 로그인하는 것입니다. 당신이 연결해야 하는 호스트는 2220번 포트의 bandit.labs.overthewire.org 입니다. username은 bandit0이고 password는 bandit0입니다. 로그 인하면 Level 1 페이지로 이동 후 Level 1을 깨는 방법을 찾아보세요. 문제 해설 (1) SSH (Secure Shell Protocol) SHH란 Secure Shell Protocol의 약자로 원격지 호스트에 접속하기 위한 프로토콜이다. 안전하지 못한 네트워크에서 안전하게 통신할 수 있는 기능을 제공한다. (2) SSH로 서버 접속 방법 SSH로 리눅스 서버에 접속하..
C언어 멘토링 | 2주차 [과제]
·
Programming Language/C
문제 1 Switch문을 이용한 사칙연산 프로그램 작성하기 입력 : [정수1] [사칙연산 부호] [정수2] 출력 : [정수1] [사칙연산 부호] [정수2] = [연산 후의 값] 출력 결과 예시 풀이 #include int main(){ int num1, num2, result; //계산할 숫자와 결과값을 저장할 변수 선언 char calcul; //사칙연산 기호를 저장할 변수 선언 printf("수식을 입력하시오.: "); scanf("%d %c %d", &num1, &calcul, &num2); //'1 + 2'의 형태로 입력값을 받음 switch (calcul) { case '+' : //calcul변수에 저장된 문자가 '+'일 때 result = num1 + num2; break; //break문을..
C언어 멘토링 | 1주차 [과제]
·
Programming Language/C
문제 입력 : 임의의 정수 2개를 입력받는다. 출력 : 임의의 정수 2개를 삼항 연산자를 이용해 더 큰 수만 출력한다. #include int main(){ int num1, num2; printf("비교하여 출력할 정수를 두 개 입력하시오.:"); scanf("%d %d",&num1, &num2); (num1 > num2) ? (printf("%d", num1)) : (printf("%d", num2)); } 느낀 점 / 배운 점 오랜만에 하니 삼항 연산자도 어떻게 사용하는지 잊어버렸다. ➥ 꾸준함의 중요성을 알게 되었다. 삼항 연산자를 쓸 때 (a>b) ? (printf("True")) : (printf("False")) 이렇게 구분하기 쉽도록 괄호를 하나 더 쓸 수 있다는 것을 알게 되었다. (분홍..
C언어 멘토링 - 1주차
·
Programming Language/C
배운 내용 입출력 (printf, scanf) 형식 지정자 변수와 자료형 연산자의 종류 [C언어의 입력과 출력] 1. 입력 - printf() 콘솔 창에 특정 문자, 문자열, 변수 등을 출력할 때 사용한다. printf( )의 이름은 출력(print)과 형식(format)이 합쳐져 만들어진 것이다. printf( ) 함수를 사용하기 위해서는 1행과 같이 stdio.h라는 헤더 파일이 포함되어야 한다. stdio.h란 Standard Input/Output library (표준입출력 라이브러리)의 약어이다. (1) 제어 문자, 이스케이프 시퀀스(Escape Sequence) 제어 문자(이스케이프 시퀀스)란 특정 문자를 출력하고자 할 때 사용하는 문자이다. [예제] #include main(){ printf..