파일을 찾는 법
- 파일의 용도
1) 데이터를 보관하기 위한 용도
2) 명령 즉, 실행파일을 보관하기 위한 용도
1. locate와 find
1) locate
- locate [파일명].[확장자]
- mlocate라는 데이터베이스에서 파일을 찾음
- sudo updatedb : 컴퓨터의 파일들을 저장, 정기적으로 처리
2) find
- 디렉토리에서 직접 파일을 찾음
- find [디렉토리] [파일명].확장자
- find . [파일명].[확장자] : 현재 디렉토리에서의 하위 디렉토리에서 찾음
- 에러 시 sudo 사용
- find . -type f : 파일 확장자(f) 지정, file만 directory 나오지 않음
- find . -name [파일명].[확장자] : 이름과 일치하는 것 찾아냄
- find . -type f -name "tecmint.txt" -exec rm -f {} \; : 검색된 파일을 삭제
2. whereis와 $PATH
1) whereis
- 실행 파일을 찾아 위치를 알려주는 명령어
2) $PATH
- 명령의 전체 경로를 적지 않아도됨
- 환경 변수
백그라운드 실행
- Ctrl + z : 실행중인 프로그램을 백그라운드로 보내는 단축키. 이 기능을 실행하면 명령어가 일시 정지됨
- fg : 직전에 작업하던 것이 켜짐 (jobs 에서 +)
- jobs : 백그라운드 작업들의 목록을 보여줌
- fg %2 : jobs 에서 2인 작업 켜짐
- kill %4 : jobs 에서 4인 작업 꺼짐
- kill -9 %4 : 더 강력한 종료
- ls -alR / > result.txt 2> error.log & : 바로 백그라운드로 이동해서 명령 실행, 작업 끝날 시 Exit 표시
- -R : 현재 디렉토리 밑의 디렉토리에서 검색
항상 실행(daemon, service)
1. 데몬의 개념
- 데몬은 항상 실행되는 특성을 가짐
- 서버
2. service와 자동실행
1) sudo apt-get install apache2 : apache 설치
- cd /etc/init.d/ : 데몬 위치, apache 위치
2) sudo service apache2 start : apache 실행
- ps aux | grep apache2 : apache 실행 확인
3) sudo service apache2 stop : apache 종료
- 데몬 프로그램은 service로 우회해서 실행
4) cd.. 후 cd r, cd /rc3.d, ls -l
- l : 링크라는 뜻
- 실제 프로그램은 ../init.d/apache2에 위치
- S로 시작 : rc3.d 디렉토리에 있으면 콘솔로 부팅되는 컴퓨터는 컴퓨터가 실행될 때 자동으로 실행됨
- K로 시작 : 콘솔로 실행될 때 프로그램이 시작되지 않음
- rc3.d : CMD 방식
- rc5.d : GUI 방식
5) ./S0Zapache2
정기적으로 실행(cron)
- Cron : 정기적으로 명령을 실행시켜주는프로그램
1. Usage
1) crontab -e
- m h dom mon dow command
- m : 분당
2) m h
- * : 시간과 상관없이 실행
- */1 : 1분에 한번
- 10 1 : 1시 10분에 실행됨
3) dom(day of month)
- 24 : 매달 24일 실행
4) mon : 월
5) dow : 요일
6) ctrl + z, date > date.log, cat date.log, date >> date.log, cat date.log
7) */1 * * * * date >> date.log
8) crontab -l 로 확인
9) cd ~ : 본인 계정의 home 디렉토리로 이동
10) tail -f date.log : 파일의 제일 뒤에 있는 텍스트 Refresh해서 출력
11) ctrl + c로 빠져나감
12) crontab -e
13) */1 * * * * date >> date.log 2>&1 : 표준에러(2)를 표준출력(&1)으로, 에러 발생시 함께 저장됨
2. Example
- 웹서버
- 이메일을 보내는 작업
쉘을 시작할 때 실행
- 쉘의 스타트업 설정(스크립트) : 쉘을 시작할 때 특정 명령 실행
- alias l='ls -al' : l 입력 시 ls -al 실행
- alias ..='cd ..' : .. 입력 시 부모 디렉토리로 이동
- alias c='clear'
- home 디렉토리에서 nano .bashrc : 쉘이라는 프로그램이 .bashhrc라고 하는 파일 안에 있는 코드를 실행하도록 약속, 기본적으로 마련되어 있음
- echo 'Hi, bash'
- 다시 접속시 Hi, bash 실행됨, 명령어로 bash 입력 시에도 실행됨
-alias는 재부팅하면 초기화되므로 .bashrc 에 맨 하단에 작성하여 저장하면 로그인할때 마다 적용됨