Previous: Alias Up: No Title Next: 환경 설정
C Shell 명령의 인수들은 스페이스나 탭으로 구분이 된다.
C Shell 의 명령은 RETURN 키로 끝이 난다.
C Shell 에는 다음과 같은 wildcard 글자가 있다.
다음은 wildcard 를 이용한 예이다.
화일 dict1, dict2, dict3 를 newdict 로 합한다.
/bin 디렉토리 및에서 t 글자를 포함하는 모든 화일을 나열.
만약 우리가 현재 디렉토리에, test.c, test.o 를 가지고 있다면, 그 화일들을 지울 것이다. 물론 test.cc 같은 화일은 지우지 않는다.
. 으로 시작하고, 두번째 글자가 소문자인 모든 화일을 /home4/ms/jslee 디렉토리로 복사할 것이다.
당신의 홈 디렉토리로 갈 것이다. 는 당신의 홈 디렉토리를 가리킨다.
test.c, test.pas, test.f 세 화일을 프린터로 찍게 될 것이다.
command > file
예를 들어, 디스크의 사용량을 화일로 저장하고 싶으면,
% du > status
로 할 수있다.
출력을 이전의 화일 끝에 붙이기 위하여 사용한다.
% du >> status
% ls -l >> status
에러를 출력하는 것은 표준 출력과 다른데, 이 에러를 화일에 저장하기 위한 것이다. 다음과 같이 에러를 낼 때에는
% cc gets.c > compile_out
"gets.c": 7: newline in string or char constant
Error in file gets.c: Error. No assembly.
%
다음과 같이 에러를 화일에 저장할 수 있다.
% cc gets.c >& compile_error
%
또한 출력을 화일 끝에 붙이려면, 다음과 같이 하면 된다.
% cc gets.c >>& compile_error
%
만약 status 화일이 있을 경우에 다음은 에러를 출력할 것이다.
% ls -l > status
만약 당신이 현재의 status 화일을 없애고, 표준 출력을 화일에
저장하고 싶어한다면, 다음과 같이 하면 된다.
% ls -l >! status
그러면, 현재의 status 화일 위에, ls -l 을 한 결과가
덮여 씌여질 것이다.
당신은 입력을 화일로부터 받을 수도 있다.
% elm chitos < thanks_for_documentation
위의 명령은 chitos 라는 사용자에게
thanks_for_documentation 화일의 내용을 전자우편으로
보낼 때에 사용이 된다.
이것은 한 명령의 표준 출력을 다른 명령의 표준 입력으로 사용하고자 할 때에 이용이 된다. 다음 명령을 보자.
% ps auxw | grep chitos
ps auxw 명령은 모든 process 를 표준 출력으로 내
보낸다. 그리고, grep chitos 는 표준 입력에서
chitos 라는 문자열을 포함하는 라인을 찾아서 출력한다.
즉, 현재의 process 중에서 chitos 라는 사용자에
의하여 수행되고 있는 process 를 고르는 일을 할 것이다.
% cat dict[1-3] | sort +1 | lpr
위의 명령은 dict1, dict2, dict3 화일을 합쳐서,
두번째의 field 로 sort 한 후에 프린터로 찍으라는
명령이 된다.
% pscat test.c | lpr
위의 명령은 test.c라는 화일을 postscript 화일로
만든 후에, 그것을 프린터로 출력하라는 명령이 된다.
여러 개의 명령을 한 줄에 실행을 하고자 할 때에는 세미콜론을 사용한다. 즉, 다음과 같이 하면 된다. 그러면 첫 명령부터 차례대로 실행할 것이다.
% mkdir proposal; cd proposal
위의 명령을 수행하면, proposal이라는 디렉토리를 만든 후에,
그 디렉토리로 이동을 할 것이다.
현재의 환경( environment) 을 바꾸지 않고, 여러개의 명령을 수행할 경우에 사용한다.
% (cd utils; cc -o gets gets.c)
위의 명령을 수행하면, 현재의 디렉토리에는 변함이 없다. 즉, 다음과
같은 명령이 되는 것이다.
% cd utils; cc -o gets gets.c; cd ..