시작합시다     파일 시스템 (file system)
명령어 I     명령어 II              명령어 III
방향 변경 (Redirection)     파이프 (Pipe) 사용


 
1. 시작합시다 


                                                                                                ▲ 위로 

UNIX 시스템 사용 순서는 다음과 같습니다. 

 

 
 
 

(1) 시스템 관리자에게 log-in name 등록 요청
(2) 배너라인에서 로그인 이름 입력
(3) 패스워드 입력
(4) 로그인시 발생하는 문제
(5) 로그아웃
 
 

Password 사용시의 주의점 

 

 
 
 

(1) 각 패스워드가 적어도 2개이상 영문자와 하나 이상의 숫자 또는 특수 문자를 포함해야 합니다.
(2) 자신의 login name과 같은 password를 사용해서는 안됩니다.
(3) 자신의 성명 Initial을 딴 password를 사용해서는 안됩니다.
(4) 영어 단어만으로 password를 만들면 안됩니다.

예를들면, elephant, genius, mermaid, dully, power 등 ......

 
 
2. 파일 시스템 (file system)


                                                                                               ▲ 위로 

/ (root) ---+-- bin

                 | 
                 +-- dev

                 |
                 +-- etc 
                 |
                 +-- usr --+-- bin +-- modules 
            |              |                           |
            +--    vmunix  +--  etc  --+--  acct       +--  nserve
            |              |           |               |
                           +--  games  +--  ctrace     +--  openwin
                           |           |               |
                           +--  lib    +--  debug      +--  sm
                           |           |               |
                           +--  man    +--  defaults   +--  sm.bak
                           |           |               |
                           +--  ucb    +--  find       +--  uucp
                                       |
                                       +--  font
                                       |
                                       +--  fontinfo
                                       |
                                       +--  fonts
                                       |
                                       +--  lint
                                       |
                                       +--  locale
                                       |
                                       +--  misalign
                                       |
                                       |
                                       |

 
 
3. 명령어 I


                                                                                               ▲ 위로 

1) pwd 명령어 사용법 

 

 
 
 

2) cd 명령어 사용법

3) ls 명령어 사용법

4) mkdir 명령어 사용법

5) rmdir 명령어 사용법

6) date 명령어 사용법

7) cal 명령어 사용법

8) ps 명령어 사용법

9) kill 명령어 사용법

10) who 명령어 사용법

11) w 명령어 사용법

12) df 명령어 사용법

13) du 명령어 사용법


1) pwd 명령어 사용법

pwd 명령어(print working directory)를 사용하여 현재 작업 디렉토리의 절대 경로를 출력한다.

(1) 명령 형식 :

pwd
(2) 예 제 :
% pwd
/home/student1 
2) cd 명령어 사용법 

cd [디렉토리 이름]을 사용하여 새로운 작업 디렉토리를 변경한다. cd명령은 절대경로나 상대경로를 취할 수 있다.

(1) 명령 형식:

cd [ 디렉토리 이름 ]
(2) 예 제:
절대경로의 사용예:
% cd /home/student1/dir2

상대경로의 사용예:
% cd beans

상대경로의 사용예:
% cd dir2/flowers

cd 명령을 디렉토리 이름 지정없이 사용하면 사용자홈 디렉토리로 이동한다.
% cd

3) ls 명령어 사용법

ls 명령어를 사용하여 디렉토리의 내용을 확인한다.

(1) 명령 형식:

ls [-algsF][경로이름]
(2) 예 제:
% cd

% pwd
/home/student1

% ls
dir1 dir2 dir3 dir4

% ls dir1
coffee fruit trees

% ls /var/mail
saved root quest student1

4) mkdir 명령어 사용법

mkdir 명령은 디렉토리를 생성하는 데 사용된다.

(1) 명령 형식:

mkdir 디렉토리 [디렉토리들]
(2) 예 제:
① 현재 디렉토리 아래 디렉토리를 만든다.

% pwd
/home/student1

% mkdir reports

% ls -F
bigfile dir2/ dir4/ file2
reports/ dir1/ dir3/ file1
file3

② 상대경로 이름을 사용한 디렉토리 생성

% mkdir reports/weekly

% ls -F reports
weekly/

③ 절대경로 이름을 사용한 디렉토리 생성

% mkdir /tmp/games

% ls -F /tmp
games/

디렉토리를 생성하기 위해서는 적절한 허가상태를 가져야 한다. 허가상태에 대한 내용은 나중에 설명하기로 한다. 만일 어떤 파일이나 디렉토리에 대해 적절한 허가 상태를 가지지 못한 경우 다음과 같은 메시지가 출력된다.

% mkdir /home/games
mkdir : Failed to make directory "games": Permission denied

5) rmdir 명령어 사용법 

rm과 rmdir 명령을 사용하여 디렉토리를 삭제한다.

(1) 명령 형식 :

rmdir [ - 옵션 ] 파일이름(들) rm [ -옵션 ] 파일이름(들)
(2) 예 제 :
rmdir 명령은 빈 디렉토리를 삭제한다.
% rmdir /tmp/games

만일 비어 있지 않은 디렉토리를 rmdir로 삭제할 경우, 명령은 실행되지 않는다.
% rmdir dir2
rmdir : dir2 : Directory not empty

비어 있지 않은 디렉토리를 삭제하려면 -r 옵션을 사용한다.
% pwd
/home/student1

% rm -r reports

------------------------------------------------------------------------- 
주의 : -r 옵션만 사용하는 것은 파일과 디렉토리 전체를 삭제 하므로 위험이 있다. 이를 방지하기 위해 -ri옵션을 사용한다. -i 옵션은 디랙토리와 그 모든 내용이 삭제되기전 y/n로 확인한다.
-------------------------------------------------------------------------

6) date 명령어 사용법

시스템의 시간을 보거나 시간을 설정한다. 단, 시스템의 시간을 설정하는것은 시스템관리자만이 할 수 있다.

(1) 명령 형식 :

% date [+format]
(2) 예 제 :
% date
Mon Feb 5 16:35:43 KST 1996

% date '+DATE: %m/%d/%y%nTIME:%H:%M:%S'
DATE: 02/12/96
TIME: 16:38:27

7) cal 명령어 사용법

달력을 보여준다.

(1) 명령 형식 :

% cal [ [month] year ]
(2) 예 제 :
% cal 
     February  1996
S   M  Tu   W  Th   F   S
         1   2   3
4   5   6   7   8   9  10
11  12  13  14  15  16  17
18  19  20  21  22  23  24
25  26  27  28  29
% cal 1996
1996년도 calendar가 출력됨

% cal 12 1995
1995년 12월 calendar가 출력됨

8) ps 명령어 사용법 

터미널에서 사용중인 프로세스의 목록을 보려면 ps만 입력하면 된다.
(어느 UNIX에서나 공통사항임)

(1) 명령 형식 :

ps -option process_number kernel-name
(2) 예 제 :
ps 명령어로 알수 있는 것들 (Berkley계열 UNIX는 다를 수도 있음)

helpdesk:/user/assist/help > ps

    PID                 TTY             TIME            COMMAND
   12342               ttyp0            0:01              csh
   12343               ttyp1            0:00              ps
     ^                   ^                ^                ^
     |                   |                |                |
process ID           프로세스가   프로세스를    프로세스를
UNIX식별기호      시작된         실행하는데    시작한 
로 프로세스에    터미널         걸린시간      명령어
고유번호제공              
helpdesk:/user/assist/help > ps -f
UID        PID       PPID      C          STIME       TTY       TIME     COMMAND
help      12345      3812      0        10:01:03     ttpy3      0:00     /usr/bin/emacs
help      12346     12345      0        10:01:05     ttpy3      0:00     /bin/sh -r
help      11769     12346     10        10:01:11     ttpy3      0:00     ps -f
help       3812      3804      0        10:00:00     ttpy3      0:00     -sh
 ^           ^         ^       ^            ^          ^                   ^
 |           |         |       |            |          |                   |
사용자  Process   Parent  최근에  시작시간   사용된             login shell
이름      ID       ID      process                터미널이름
(User ID)                  가 실행된
                           횟수
% ps -arux

-a : 다른 사용자에 의해서 소유된 process들을 포함
-r : 출력을 실행중인 프로세서들로 제한
-u : 각 prcess의 소유자를 포함하는 긴 출력을 생성
-x : 제어 터미널을 갖지 않는 프로세서들을 포함

9) kill 명령어 사용법

특정 process에 대해서 signal을 보내거나 중지시키는 명령어이다.

(1) 명령 형식 : 

% kill [ -signal ] pid
(2) 예 제 
% ps 
PID  TT  STAT  TIME  COMMAND
1247  co  IW  0:00  /bin/sh /usr/openwin/bin/openwin -noauth
1249  co  IW  0:00  /usr/openwin/bin/xinit --/usr/openwin/bin/xnews:0
1250  co  S   6:58  /usr/openwin/bin/xnews :0
1257  co  IW  0:00  sh /user/assist/yangyh/.xinitrc
1263  co  S   0:00  olwm -3
1273  co  IW  0:00  olwmslave
1274  co  I    0:00  /usr/openwin/bin/xterm
1321  co  IW  0:00  /usr/openwin/bin/xterm
1683  p0  S   0:00  -csh (csh)
1712  p0  R   0:00   ps
1271  p1  IW  0:00  -csh (csh)
1275  p2  I    0:00  -csh (csh)
1578  p2  S  65:41   /cad/HWPX-3.0/bin/hwp_sunos
1710  p2  I    0:00  vi aaa
1322  p3  IW  0:00  -csh (csh)
% kill 1710 
(3) kill 명령어로 보낼수 있는 signal은 16가지 (0 - 15)이고, 중요한 것은 다음과 같다.
-0 (HUP) : Process를 reset 시킨다.
-9 : Sub process에 관계없이 process를 중지시킨다.
10) who 명령어 사용법

시스템에 login한 사용자를 보여준다.

(1) 명령 형식 :

% who [ am i ]
(2) 예 제 :
% who
yangyh  console  Jan 23  11:32
yangyh   ttyp0   Jan 23  11:32  (:0.0)
yangyh   ttyp1   Jan 23  11:32  (:0.0)
yangyh   ttyp2   Jan 23  11:32  (:0.0)
yangyh   ttyp3   Jan 23  11:39  (:0.0)
% who am i
edumaster!std01  ttyp0  Feb 6  11:25   (:0.0)
11) w 명령어 사용법 

시스템에 login한 사용자와 작업내용을 보여준다.

(1) 명령 형식 :

% w  -hls  user
(2) 예 제 : 
% w
7:51pm   up 9 days,   7:54   12 users,   load average:  1.25, 1.10, 0.86
User    tty      login@     idle      JCPU   PCPU     what
gmcad   ttyp0    10:56am    5:27        4             -csh
leesk   ttyp1    Sun 4pm    2days                     -csh
chagu   ttyp2    6:01pm     1:45                      rlogin mcu20
chosi   ttyp3    7:06pm     4          26      1      -csh
root    ttyp4    Sun 6pm    2:56       42             -csh
chosi   ttyp5    7:21pm     12         14             -csh
kimjw   ttyp8    Mon 8am    29       5:44      1      -csh
kimsb   ttyp9    8:14am     11:37                      vi mbox
kimjw   ttypd    2:59pm     4:48                      -csh
kimsb   ttyq6    5:20pm     2:26                      -csh
gmcad   ttyq7    11:28am    6:04     1:55      2      vi DRCPRT.drc
help    ttyr1    Mon 5pm    9:01     1:26             -csh
help란 user의 작업내용을 보려면,
% w help
7:51pm   up 8 days,    9:25   15 users,   load average: 0.08, 0.37, 0.14
User   tty      login@     idle    JCPU     PCPU   what
help   ttyp8    Mon 8am    29      5:44       1    -csh
help   ttypd    2:59pm     4:48                    -csh
12) df 명령어 사용법 

File system에서 free space를 보여준다.

(1) 명령 형식 :

% df [ -a ] [ -i ] [ -t type ] [ filesystem ... ]
(2) 예 제 : 
% df
Filesyatem             kbytes     used    avail   capacity  Mounted on
/dev/sd0a               14127     6743     5972     53%       /
/dev/sd0g              807590   168223   558608     23%       /usr
chrock:/cad           1952573  1553233   204083     88%       /cad
bobae:/cad/HWPX-3.0   1952573  1610248   147068     92%    /tmp_mnt/cad/HWPX-3.0
% df -i
Filesyatem             iused    ifree   %iused   Mounted on
/dev/sd0a               1163     6389    15%       /
/dev/sd0g              12995   391037     3%       /usr
chrock:/cad              *        *       *        /cad
bobae:/cad/HWPX-3.0      *        *       *        /tmp_mnt/cad/HWPX-3.0
13) du 명령어 사용법

각 directory나 file에 의해 사용된 디스크의 block수를 보여준다.

(1) 명령 형식 : 

% du [ -s ] [ -a ] [  filename ...  ]
(2) 예 제 : 
% du /tmp
1    /tmp/.NeWS-unix
1    /tmp/.X11-unix
1650    /tmp
% du -s /user
722   engr2
-----------------------------------------------------------------------------
  주 의 : SUN  OS를 사용하고 있는 경우 du 결과의 단위는 kbytes
          이고, IBM OS를 사용하고 있는 경우는 512  bytes 단위의
          Block 수이다.
-----------------------------------------------------------------------------

 
 
4. 명령어 II


                                                                                               ▲ 위로 

1) cat 명령어 사용법 

 

 
 
 

2) more 명령어 사용법

3) cp 명령어 사용법

4) mv 명령어 사용법 (디렉토리 이동과 이름변경)

5) rm 명령어 사용법

6) grep 명령어 사용법 (텍스트 찾기)

7) find 명령어 사용법 (파일들찾기)

8) awk 프로그램 가능한 텍스트 처리

9) 파일에 대한 표준 퍼미션

10) chmod 명령어 사용법 (부호모드에 의한 퍼미션 변경)

11) chmod 명령어 사용법 (숫자(Octal) 모드)

12) man 명령어 사용법

13) tar 명령어 사용법


1) cat 명령어 사용법 

파일의 내용을 보기위해 cat 명령을 사용한다.

(1) 명령 형식: 

cat 파일이름(들) cat 명령어는 파일의 내용을 보여주는데, 파일의 처음부터 끝까지 멈추지 않고 빠르게 화면에 보여진다. cat 명령은 두 개 또는 여러 개의 파일을 연결하여 하나의 큰 파일로 만드는 데에도 사용된다.
(2) 예 제 : 
% ls -al
-rw-r--r--r 1 help  2042 Aug 20 10:06 sample.txt
% cat sample.txt
Release notes for this version of Netscape are
available online.  After starting the program,
select "Release Notes" from the "Help" menu.
This will take you to the URL
                    :
                    :
txt01 txt02란 두 파일을 하나의 파일로 합칠 때;
% cat txt01 txt02 > txt_all
2) more 명령어 사용법 

more 유틸리티를 사용하여 파일의 내용을 볼 수 있다. 파일의 내용은 화면을 스크롤해서 보는데 파일이 한 화면보다 큰 경우 다음 메시지가 나타난다.

                  --More-- (nn%) 
여기서 nn은 지금까지 보여진 파일의 퍼센트이다.

(1) 명령 형식 :

more 파일이름 
 -more- 프롬프트에서 다음과 같은 기능키들을 사용할 수 있다.
-----------------------------------------------------------
 스크롤 Key    |       용           도
-----------------------------------------------------------
 space bar       | 계속해서 다음화면을 읽음
 리턴키        | 한 라인 아래로 스크롤함
 b               | 이전화면으로 이동함
 h               | more 명령기능의 도움말을 보여준다
 q               | 종료
 /문자열       | 앞방향으로 문자열을 찾는다
-----------------------------------------------------------
3) cp 명령어 사용법 

파일을 복사하기 위해 cp 명령을 사용한다.

(1) 명령 형식 :

cp  -ir  source_file dir   target_file dir
    -i : 대화형으로 복사
    -r : 디렉토리 전체 복사
(2) 예 제 :

다음 예제는 Netscape디렉토리내의 모든 파일들이 utility디렉토리 안으로 복사되는 방법을 보여준다.

i
% pwd
/user/assist/help
% ls -al
drwxr-xr-x 2 help  512  Jan 22 11:02  Netscape
% cp -r Netscape ./utility
% ls -al ./utility
drwxr-xr-x  2 help  512 Dec 21 10:00  .
drwxr-xr-x  9 help   512 Jan 23 17:19  ..
drwxr-xr-x  2 help  512 Feb 12 13:00  Netscape
현재 directory의 aaa.txt 파일을 ./example directory에 bbb.txt란 이름으로 copy하려면, 
% pwd
/user/assist/help
% cp  aaa.txt  ./example/bbb.txt
4) mv 명령어 사용법 (디렉토리 이동과 이름변경)

mv 명령을 이용하여 현재 디렉토리 안에서 디렉토리의 이름을 바꾼다.

(1) 명령 형식 :

mv [-if]  source_file dir   target_file dir
(2) 예 제 :
HSPICE란 directory명을 hspice로 변경 하려면 
% pwd
/user/assist/help
% ls -aF
Netscape/  test@   sample.txt   HSPICE/    GIS/
OPUS/
% mv  HSPICE  hspice
% ls -aF
Netscape/  test@   sample.txt   hspice/    GIS/
OPUS/
5) rm 명령어 사용법

rm 명령은 파일과 디렉토리를 삭제하기 위해 사용된다.

(1) 명령 형식 :

rm [ -irf ] 파일이름(들)
     -i : 파일을 삭제하기전 사용자에게 확인을 요구
     -r : sub_directory를 포함한 모든 파일 삭제
     -f : 어떤 에러 메시지나 지시 사항도 나타내지 않음
(2) 예 제 :
% pwd
/home/student1
% ls
bigfile  dir1  dir2  dir3  dir4  file1  file2  file3  reports
% rm file3
% ls
bigfile  dir1  dir2  dir3  dir4  file1  file2  reports
-i 옵션을 사용하면 파일 삭제전 확인을 위한 프롬프트가 나온다.
% rm -i file2
rm: remove file2:  (y/n)? n
6) grep 명령어 사용법 (텍스트 찾기)

grep 명령을 사용하면 파일에서 지정된 텍스트 문자열을 찾는다.

(1) 명령 형식:

grep  문자열 파일이름
(2) 예 제:
/etc/passwd 파일에서 "assist"가 들어간 행을 찾으려면
% grep assist /etc/passwd
/etc/hosts 파일에서 "edumaster" 를  찾으려면
% grep edumaster /etc/hosts
7) find 명령어 사용법 (파일들찾기)

특별한 텍스트 문자와 일치하는 파일을 찾거나 나타내기 위해서는 find 명령을 사용할수 있다.

(1) 명령 형식:

find directoryname [ -options ]
(2) 예 제:
아래의 명령어는 현재 디렉토리와 그 서브 디렉토리의 파일들 중에서 끝이 s로 끝나는 파일을 나타내는 것이다. 
% find . -name '*s' -print
./dir1/trees
./dir1/coffees
./dir1/coffees/beans
./dir1/constellations/planets
./letters
./memos
./stars
파일이 수정된지 1일 이내 인것만 찾으려면
% find . -mtime -1 -print
Note : find 명령어는 디렉토리 구조에서 하부구조까지 반복적으로 찾는다.

8) awk 프로그램 가능한 텍스트 처리

awk는 하나 이상의 파일을 scan하여 특정한 조건에 맞는 모든 줄에 필요한 동작을 실행한다. 조건과 동작들은 awk 프로그램에 의해 설명되는데, 매우 단순한 것에서부터 복잡한 것까지 다양하다.

(1) 명령 형식 :

awk -Fc [ -f fileName ] program { variable = value } { fileName }
awk 프로그램은 명령어 줄에 포함될 수 있는데, 이때는 단일 따옴표(' ')로 싸여 있어야 한다. 그 대신 파일에 저장할 수도 있고, -f 옵션으로 명시될 수도 있다. 변수의 초기값은 명령 줄에 명시될 수 있다. 디폴트로서, 항목들은 탭(tab)과 공백으로 구분된다. 이것을 무시하려면, -F 옵션 뒤에 새로운 항목 구분자를 사용하면 된다. 만일 파일명이 명시되지 않으면, awk는 표준 입력으로부터 읽어들인다. 
(2) 예제 : 
ls 명령으로 부터 다음 format으로 display하려면
[permitmode]  [filename]
 -rwxr-xr-x     xbombs
 drwxr-xr-x     tmp
%  ls -l | awk '{print $1,"\t",$8}'
9) 파일에 대한 표준 퍼미션

% ls -l /home/student1/bigfile

-rw-r--r-- 1  student1  other   433  dec  9  11:23  bigfile
             - r w - r - - r - -
             _ _____ _____ _____
             ^   ^     ^     ^
             |   |     |    Others
             |   |     Group 
             |   Owner
        File type
10) chmod 명령어 사용법 (부호모드에 의한 퍼미션 변경)

(1) 명령 형식 :

chmod  mode  filename
mode :    who       op          permission (s)              
           |         |              |
           |         |              +----  r  read
           |         |                     w  write
           |         |                     x  execute
           |         |
           |         +---- =  set permissions
           |               -  remove access
           |               +  give access
           |
           +---- u  user or owner of the file
                 g  group to which the file belongs
                 o  others outside owner and group
                 a  all of the above
chmod 명령어는 파일 퍼미션을 변경하기 위해 파일 소유자에 의해 사용된다.

파일의 소유자나 superuser만이 파일의 퍼미션을 변경 할 수 있다. 

11) chmod 명령어 사용법 (숫자(Octal) 모드)

(1) 명령 형식 :

chmod  octal_mode  파일명
숫자 모드는 8개의 숫자(0-7)에 기초를 두고 있다.
컴퓨터는 3개의 2진 비트를 가지고 8진수를 나타낸다.
각각의 허가는 다음의 8진 값을 갖는다.:
   4 = 읽기 허가
   2 = 쓰기 허가
   1 = 실행 허가
(2) 예 제 : 
% ls -alg
-rwx------  1  jrpark  57344 Feb 1  12:39  tetris
% chmod 755 tetris
% ls -al
-rwxr-xr-x  1  jrpark  57344 Feb 1  12:39  tetris
ftp 명령으로 파일을 전송받으면 실행 모드가 없어진다.
이럴때, chmod 명령을 이용해 실행모드로 변경한다.
12) man 명령어 사용법

대부분의 Solaris 명령어의 온-라인 도움말(manual page)을 보기 위해 man명령을 사용한다. 온-라인 도움말은 선택적인 소프트웨어로 Solaris의 한 부분이다.

(1) 명령 형식 :

man  명령어
man  -k  keyword
man  -t  명령어     ; printer로 출력
(2) 예 제 :
% man cd
    cd(1)                     User commands                                
    NAME                                                                   
       cd -  change working directory                                      
    SYNOPSIS                                                               
       cd [ directory ]                                                    
    DESCRIPTION                                                            
             If directory is not specified the value of shell parameter    
           $HOME  is  used as  the  new  working  directory.   If          
           directory specifies  a complete  path starting with/,  or ..,  
           directory becomes the  new working directory.  If  neither     
           case  applies cd  thies  to find  the  designated directory    
           relative to  one of the  paths specified by the  $CDPATH 
           shell variable.   $CDPATH has the  same syntas as,  and 
           similar semantics to  the &PATH shell variable. Cd  must 
           have execute(search) permission in directory. 
13) tar 명령어 사용법

tar 명령을 사용하여 data를 tape에 저장, 추가하거나 저장된 data를 다시 HDD에 resttore 할 수 가 있다.

(1) 명령 형식 

tar  c|t|x|u   tar_filename   source_file
Device SUN IBM
8mm Tape /dev/rstXX  /dev/rmtXX 
1/4 inch magnetic tape /dev/rstXX /dev/rmtXX
Floppy diskette drive /dev/fd0 /dev/fd0
 
* tar file을 Create  할때 : c v f
* tar file을 eXtract 할때 : x v f
* tar file의 목록을 lisT : t v f
                                | |
                                | file_name을 지정
                                |
                                +-- tar 되는 file명을 display
(2) 예 제 
① pureun:/user/assist/jrpark/sample.txt라는 화일을 Floppy로 copy 할 때
   % cd /user/assist/jrpark  [enter]
   pureun:/user/assist/jrpark > tar cvf /dev/fd0  sample.txt [enter]
   위에서 copy한 화일 목록을 볼 때
   % tar  tvf  /dev/fd0  [enter]
   위에서 copy한 화일을 다시 pureun:/user/assist/jrpark/DATA로
   copy하고자 할 때
   % cd /user/assist/jrpark/DATA
   pureun:/user/assist/jrpark/DATA > tar xvf /dev/fd0  [enter]
주의 ) 만일, floppy로 다른 화일을 저장하려 할 때 다시
       tar cvf /dev/fd0  file_name 명령을 사용하면 저장
       되어있던 sample.txt 화일은 삭제 됩니다.
       sample.txt화일을 보존하면서 다른 화일을 추가로
       copy하려 한다면 다음과 같이 option을 주어야 합니다.
       (단, quater-inch magnetic tape에서는 아래 명령을
       사용할 수 없습니다.)
 
   % tar  rvf  /dev/fd0  source_name  [enter]
     ; source_name file을 /dev/fd0에 존재하는 파일의 다음에 write
   % tar  uvf  /dev/fd0  source_name [enter]
     ; source_name file이 /dev/fd0에 존재하지 않거나 또는
       source_name file이 마지막으로 보관(save)된 이후로
       수정되어 졌다면 /dev/fd0에 add 한다.

 
②  bobae의 8mm Tape에 있는 date를 pureun:/user/assist/jrpark/EXAM으로
   RESTORE 할 때
   % cd  /user/assist/jrpark/EXAM  [enter]
   % pureun:/user/assist/jrpark/EXAM > rsh bobae "dd if=/dev/rst1 
     bs=20b" | tar xvf -
   만일, 위와 같이 rsh bobae 하는 경우 "permission denied" error가
   난다면 bobae에서 자신의 home directory에 있는 .rhosts에 pureun
   host를 등록하면 된다.
   tar  cvf  /dev/rst1  /user/assist/jrpark/db/16mb  같이 절대 path
   ('/')를 사용해서는 안된다.  반드시 아래와 같이 상대 path를
   사용해야 한다.
   예) tar cvf /dev/rst1  user/assist/jrpark/db/16mb

 
 
5. 명령어 III


                                                                                               ▲ 위로 

    ( 문서 출력 )
1) lpr 명령어 사용법 

 

 
 
 

2) lpq 명령어 사용법

3) lprm 명령어 사용법


1) lpr 명령어 사용법 

출력 유틸리티

(1) 명령 형식 :

lpr  -m   -Pprinter   fileName
      |    | 
      |    +-- 옵션에 의해 명시된 프린터로 파일을 출력
      |
      +------- 프린트 작업이 종료되었을 때 작업을 지시한 사용자에게 전자우편을 전송
(2) 예 제 :
% cat  example.txt
  이 파일은 example입니다.
  unix를 배우는 여러분에게 행운을.....
  Independence through knowledge
% lpr  -Passist example.txt
; assist로 지칭된 printer로 example.txt의 내용을 출력한다.
% lpr  example.txt
; 출력  프린터가 명시되어 있지 않기 때문에 현재 사용중인 system에
  default로 지정된 printer로 출력한다.
2) lpq 명령어 사용법

프린터의 상태를 볼 수 있다.

(1) 명령 형식 :

lpq  -l    -Pprinter    job#    userid
      |     |           +------+------+
      |     |                  |
      |     |            특정 작업 or 사용자가 내린 출력 정보를 보여준다.
      |     |            생략되면 프린터 상의 모든 작업 상태를 보여준다.
      |     |
      |     +-- 옵션에 의해 명시된 프린터 상의 작업 상태를 볼 수 있다.
      |
      +-------- 추가적인 정보를 제공
(2) 예 제:
% lpq  -Passist
assist is ready and printing
Rank    Owner    Job   Files           Total Size
active  jrpark   848   example.txt        333 bytes
1st     help     849   cadhelp.txt      45000 bytes
2nd     yangyh   850   edumaster.ps    964580 bytes
; assist로 지정된 프린터의 작업 상태를 볼 수 있다.
% lpq
edu is ready and printing
Rank   Owner Job    Files           Total Size
active  edu1    4      test.org         1000 bytes
1st     edu6    8      sample        69000 bytes
; default printer의 작업 상태를 볼 수 있다.
3) lprm 명령어 사용법

프린트 작업을 취소할때 사용

(1) 명령 형식 : 

lprm   -l    -Pprinter    -    job#    userid
              |           |     |         |
              |           |     |    superuser일 경우, 사용자 id를
              |           |     |    명시하여 특정 user의 모든 print
              |           |     |    작업을 취소 할 수 있다.
              |           |     |
              |           |  지정된 job#의 프린트 작업을 취소함
              |           |  (단, 해당 job#의 owner만이 프린트 작업을
              |           |   취소할 수 있음)
              |           |
              |    현재 사용하고 있는 username에 의해 시작된 모든 print
              |    작업을 취소한다.
              |
             명령이 수행될 프린터를 지정
(2) 예 제 :
% lpq -Passist
assist is ready and printing
Rank    Owner    Job    Files            Total Size
active  jrpark   848    example.txt        333 bytes
1st     help     849    cadhelp.txt      45000 bytes
2nd     yangyh   850    edumaster.ps    964580 bytes
% whoami
help
% lprm -Passist 849
% lpq -Passist
assist is ready and printing
Rank    Owner    Job    Files            Total Size
active  jrpark   848    example.txt        333 bytes
1st     yangyh   850    edumaster.ps    964580 bytes

 
 
6. 방향변경 (Redirection)


                                                                                               ▲ 위로 

    모든 CPU 동작은 입력과 출력(I/O)을 갖는다.

    키보드는 표준 입력이고 모니터는 표준 출력이다.

    명령어는 표준 입력과 표준 출력을 갖는다.
    표준입력  >  명령어  >  표준 출력
    표준 입력은 명령어로 입력되는 데이터이다.
    표준 출력은 명령어로 출력되는 데이터이다.
    UNIX 방향  바꿈 (redirect)에 의해서 명령어의  입력/출력을 제어 할 수 있다.
    부등호 부호(<)´a>
    예 제 :
    % echo "my file" > test.txt
    % cat test.txt
    my file
    % cat  file_name << !
    aaaa
    bbbb
    !
    %

 
 
7. 파이프 (Pipe) 사용


                                                                                               ▲ 위로 

    가장 유용한 메타문자중의 하나인 파이프는 한 명령어의 출력을 다음 명령어의 입력으로 전달한다. 결국 최소한의 프로그램을 만드는 것이다.

    파이프(|)의 사용은 특정 명령어의 표준출력을 또 다른 명령어의 표준입력으로 입력 되도록 할 수 있다.

    사용자들은 파이프의 각 측면에 하나의 명령어를 반드시 갖도록 해야 한다.

    예 제 :

    %  cal  1  1996
                  Jan  1996
     S     M    TU     W    TH     F     S
           1     2     3     4     5     6
     7     8     9    10    11    12    13
    14    15    16    17    18    19    20
    21    22    23    24    25    26    27
    28    29    30    31
    %  cal  1  1996 | lp
    1996년 1월 달력이 printer로 출력됨
    큰 디렉토리를 스크롤 하면서 보기 위해서는 다음의 명령어를 사용한다.
    %  ls -al | more
    ------------------------------------------------------------------------------
      주의 : 위 명령어에서 파이프의 왼쪽에 있는 명령어는 스크린
             (표준출력)에 출력하는 것이고, 오른쪽 명령어는 표준
             입력으로 읽어 들인다.
    ------------------------------------------------------------------------------
 ▲ 위로