작업제어 관련 명령어
1 background 작업 프로세스의 정지와 삭제
정지는 아래의 stop 명령어로 제어될 수 있다. 그리고 현재의 진행중인 작업을 보려면 jobs라는 명령어로 체크할 수 있다. %job_number는 현재 실행중인 프로세스 번호를 적는 것으로서 pid와 동일한 값을 갖는다.
# stop %job_number [Enter]
# jobs (show job#) [Enter]
삭제를 위해서는 명령어를 사용하는데 사용법은 다음과 같다. 여기서 pid는 프로세스 id이며, 'ps -a' 명령어로 알 수 있다.
# kill -9 pid [Enter]
2 foreground 작업 프로세스의 정지와 삭제
현재 작업중인 프로세스를 background작업으로 돌리기 위해서는 '[Ctrl][Z]'를 입력한다. 그리고 이렇게 background로 전환된 작업은 다음의 명령어로 제어될 수 있다.
# fg [Enter] ☞ foreground 로 다시 전환시킴
# [Enter] ☞ 종료를 시킴
# bg [Enter] ☞ 계속 진행시킴
3 기타 작업제어 관련 명령어
# command& [Enter] ☞ background 작업개시
# ps [Enter] ☞ 현재 실행중인 프로세스 id 디스플레이
# jobs [Enter] ☞ background 작업번호 및 상태 디스플레이
# nohup command& [Enter] ☞ logout 후에도 명령 실행 계속유지
# fg [Enter] ☞ 현재작업을 foreground 로 전환시킴
# fg %n [Enter] ☞ n 번 작업을 foreground 로 전환시킴
4 history
이전에 사용된 명령어를 호출하는 명령어이다. history의 개수지정은 자신의 shell에서 변수로 지정할 수 있으며, 지정하는 방법은 다음과 같다. 개수를 50개로 한다면,
set history=50
위와 같이 50 이라는 부분만 수정해주면 된다. history의 역할은 DOS에서 doskey와 같다. 즉 이전에 실행한 명령어를 기억하며 필요에 따라 호출할 수 있다. 그럼 history관련 명령어를 보도록 하자.
command)
# history ☞ 기억된 이전 명령어 리스트를 디스플레이
# !3 ☞ 3 번째 실행한 명령어를 호출
# !str ☞ str로 시작하는 가장 최근의 명령어를 호출
# !-1 ☞ 뒤로 첫 번째 실행한 명령어를 호출
# !?str? ☞ str를 포함하는 가장 최근 사건을 호출
# !! ☞ 바로 직전에 실행한 명령어를 호출
# !$ ☞ 바로 직전에 실행한 명령어 중 마지막 단어를 호출
modifier(:)를 사용한 history 이용
# :0 ☞ 0번째 명령어 호출
# :n ☞ n번째 명령어 호출
# :^ ☞ 1번째 명령어 호출
# :$ ☞ 가장 최근 명령어 호출
# !n:$ ☞ n번째 명령의 마지막 단어
# !n:^ ☞ n번째 명령의 첫 번째 단어
# !N:n ☞ N번째 명령어의 n번째 단어
# !N:n-m ☞ N번째 명령어의 n번부터 m까지의 단어들
# !N:-n ☞ N번째 명령어의 0번부터 n까지의 단어들
# !N:* ☞ N번째 명령어의 1번부터 끝까지의 단어들
# !N:n* ☞ N번째 명령어의 n번부터 끝까지의 단어들
# !N:n- ☞ N번째 명령어의 n번부터 끝 바로 앞 까지의 단어들
# cat !15:* ☞ 단어 1에서 끝까지
# cat !15:1 ☞ 단어 1
# cat !15:^ ☞ 단어 1
# cat !15:3-5 ☞ 단어 3에서 5까지
# cat !15:2- ☞ 단어 2에서 끝까지
# cat !15:2* ☞ 단어 2에서 끝까지
# cat -2 ☞ 단어 0에서 2까지
# cat !15:$ ☞ 단어 마지막 것