분류 전체보기 (65) 썸네일형 리스트형 Linux 표준스트림, 리다이렉션 표준스트림keypoint입력스트림과 출력스트림에는 버퍼가 있는 반면 오류 출력 스트림에는 버퍼가 없다.이는 프로그램 충돌 시 오류메세지를 디스플레이로 즉각 전달하기 위해서다.오류메시지가 버퍼를 거친다면 프로그램 비정상 종료시 할당되었던 버퍼가 해제되고 오류메시지가 모니터에 도달하지 못할 수도 있다.리다이렉션리다이렉션이란, 실행되는 프로그램의 표준 스트림을 사용자 임의로 변경할 수 있는 기능이다.예를 들어, 출력 리다이렉션을 한다면 위 그림에서 출력 스트림이 모니터가 아니라 다른 프로그램을 향하게 할 수 있다. 출력 리다이렉션date > today.txt위 명령어는 date 명령어의 출력을 모니터가 아니라 today.txt 파일을 향한다.* 주의 : today.txt가 이미 존재한다면 덮어씌워진다. dat.. Linux 와일드카드 touch abc.txt abc a123.txt bcd.txtlsa123.txt abc abc.txt bcd.txtls *.txta123.txt abc.txt bcd.txt*0개 이상의 임의의 문자에 대응됨. touch abc.txt abc a123.txt bcd.txtlsa123.txt abc abc.txt bcd.txtls ???.txtabc.txt bcd.txt?1개의 임의의 문자에 대응됨. touch a1.txt a2.txt a3.txtlsa1.txt a2.txt a3.txtecho a[123].txta1.txt a3.txt[ ]대괄호 안에 있는 문자들에 대해 하나의 문자와 일치 touch a1.txt a2.txt a3.txtlsa1.txt a2.txt a3.txtecho.. Linux 파일시스템(윈도우와 차이점) 단일 파일 시스템리눅스는 윈도우와 달리 단일 파일 시스템이다.리눅스에서는 모든 디렉토리의 최상위 부모 디렉토리는 root다.윈도우에서는 폴더가 존재하는 파티션에 따라 최상위 부모 디렉토리가 C:\가 될 수도 있고 D:\가 될 수도 있다. * root 디렉토리는 단순히 슬래쉬(/)로 표현된다. 경로 구분자리눅스에서는 경로 구분자로 슬래쉬(/)가 사용된다. 윈도우에서는 경로 구분자로 백슬래쉬(\)가 사용된다.디렉터리사용자 디렉터리리눅스에서는 사용자 경로가 /home/username 에 존재한다.윈도우에서는 사용자 경로가 C:\Users\username에 존재한다. 디렉터리Linux에서 디렉터리는 폴더가 아니라 '파일'로 간주한다.파일의 종류리눅스에서 파일의 종류는 크게 4가지가 있다.1. 정규 파일(regu.. Linux 자주 사용되는 명령어 명령어의 종류'type 명령어'를 통해 명령어의 종류 확인 가능. 1. 실행 파일type rmrm is hashed (/bin/rm) 2. 셸 내장 명령어type cdcd is a shell builtin 3. 사용자 정의(alias) 명령어type lsls is aliased to `ls --color=auto' 명령어 매뉴얼# 쉘 내장명령어 매뉴얼help 명령어# 실행 파일 매뉴얼명령어 -h / --helpman 명령어command [a] [b] : command / command a / command b / command a b /command [a|b] : command / command a / command b man (1/2/3) 명령어1: 사용자 명령어(실행 파일 명령어) → 생략 가능2:.. Linux 스크립트 if문, 반복문, 트랩 if문if 명령어then 명렁어의 종료 코드가 0인 경우 수행될 명령어fi if 명령어; then 명렁어의 종료 코드가 0인 경우 수행될 명령어fi if then .. else문if 명령어; then 명렁어의 종료 코드가 0인 경우 수행else 명령어 종료 코드가 0이 아닌 경우 수행fiif then .. else if .. else문if 명령어1; then 명렁어1의 종료 코드가 0인 경우 수행elif 명령어2; then 명렁어2의 종료 코드가 0인 경우 수행elif 명령어3; then 명렁어3의 종료 코드가 0인 경우 수행else 모든 명령어의 종료 코드가 0이 아닌 경우 수행fi case문case $variable in value1) command1-0 command1-1;; .. Linux 스크립트 구조, 실행권한, 환경변수, 변수, 확장 스크립트의 구조vi script.sh스크립트는 .sh 확장자를 갖는다.[+] 참고 : Linux에는 확장자 개념이 존재하지 않는다. 다만, 사용자의 편의성을 위해 확장자처럼 보이도록 파일명을 지을 뿐이다. #!/bin/bash스크립트의 맨처음에는 셔뱅(Shebang)이 온다.Bash 쉘의 경로를 지정해준다. # 주석 : 'hello world!' 출력주석은 #으로 단다. echo hello world!Linux 명령어가 스크립트에 그대로 사용될 수 있다.실행권한스크립트 실행 권한 부여 방법chmod u+x script.sh환경변수Linux는 윈도우와 다르게 linux는 입력된 명령어를 환경변수에서 명령어를 검색한다.즉, 현재 디렉토리(pwd)는 전혀 검색하지 않는다. 환경변수는 명령어 env 또는 ech.. Linux 셸, 커널의 의미와 리눅스의 역사 Unix의 계보 Linux는 엄밀히 Unix 계열이 아니다.Unix와 매우 유사하지만 Unix-like OS다. 그리고 Unix 계열 OS가 매우 다양한데, 옛날에는 AT&T 사의 System V와 Berkeley Software Distribution(BSD)가 Unix의 양대산맥을 이루었다. 그리고 다양한 회사가 변종을 만들어내어 Unix는 중구난방이었고 OS 간의 호환성도 떨어졌다. 그래서 IEEE는 POSIX(Portable Operating System interface)를 제안하였고 POSIX를 통해 유닉스 소스 간 호환성을 보장한다. 최근에 나오는 Unix 계열 OS 대부분은 POSIX-compliant하다.다만, 대부분의 Linux OS는 POSIX를 100% 준수(POSIX-complia.. Linux vim 편집기 VIM 편집기란?VIM은 Vi IMproved의 약자로써 vi 편집기의 클론 확장판이다.[+] 참고로 vi 편집기는 라인 에디터만 쓰던 시절 혁신이었다.VIM 편집기 모드기본적으로 VIM 편집기를 시작하면 명령 모드.명령 모드에서 i를 누르면 편집 모드 진입.명령 모드에서 :를 누르면 EX 모드 진입.편집 모드에서 esc를 누르면 명령 모드로 복귀.EX 모드에서 명령어 수행 시 자동으로 명령 모드로 복귀.단축키명령모드yy : 커서가 위치한 행 통채로 복사dd : 커서가 위치한 행 통채로 잘라내기p : 붙여넣기x 또는 delete : 문자 한개 삭제u : undoCTRL + r : redo명령모드 → 편집모드i : 커서 앞 부분 삽입I : 행 첫 부분 삽입a : 커서 뒷 부분 삽입A : 행 마지막 부분 삽.. Linux 프로그램, 프로세스, 쓰레드 프로그램프로그램이란, HDD 또는 SSD에 저장된 실행가능한 바이너리 코드(0100011...)프로세스프로세스란?프로그램이 RAM에 로드되어 있는 상태.* 비유 : 프로세스 = 작업장 / 쓰레드 = 일꾼multi-process = 프로세스가 여러개새 프로세스 생성 시Windows : 맨땅에서 process를 새로 만듬Linux : fork() 함수를 사용하여 기존 process를 복제해서 만듬.부모/자식 프로세스란? 부모 프로세스 : 복제를 수행한 프로세스자식 프로세스 : 복제된 프로세스자식 프로세스가 모종의 이유로 죽을 경우, Linux kernel은 부모 프로세스에게 자식 프로세스가 죽었다는 signal을 보낸다. 이 signal이 바로 '종료 코드(종료 상태)'다.프로세스 아이디(PID)란?프로세스.. Wesnoth 해킹하기 (9) Code Caves with DLL Wesnoth 해킹하기 (5)편 요약 Wesnoth 해킹하기 (5) 편에서 x64WinDbg를 이용하여 code cave을 만들었고 인게임에서 Terrain Description으로 진입 시 골드를 추가해주는 해킹을 해봤다. https://bithub.tistory.com/32 Wesnoth 해킹하기 (5) Code Cave Wesnoth 해킹하기 (4) 편에서는 assembly어의 기능을 유추함으로써 인게임에서 terrain description, recruit, recall 등에 해당하는 assembly어를 찾을 수 있었다. Wesnoth 해킹하기 (5)편에서는 code cave를 만들고 terr bithub.tistory.com Wesnoth 해킹하기 (5)편을 간략하게 요약하자면, 우리는 code.. 이전 1 2 3 4 5 6 7 다음