¶i¶¥¾Þ§@ - »{ÃѶV²`,¶V¯à¤F¸ÑUNIX¨t²Îªº±j¤j¥\¯à

chgrp¡]chang group¡^

¡i¥\¯à¡j

§ïÅÜÀɮתº¸s¾Ö¦³ªÌ¦WºÙ

¡i»yªk¡j

chgrp [-R] [-h] group file...

¡i»¡©ú¡j

§ïÅÜ file ªº¸s¾Ö¦³ªÌ¬° group¡C

¬°¤F¨ÏÀɮצs¨ú¯à¦³®ÄªººÞ²z¡AÀÉ®×¥i¤À¬°¤GºØÄÝ©Ê¡A¤@¬°¾Ö¦³ªÌ¦WºÙ¡A¥t¤@¬°¸s¾Ö¦³ªÌ¦WºÙ¡C¦Ó­n§ïÅÜÀɮתº¸s¾Ö¦³ªÌªºÄݩʮɡA¥²¶·¬O¸ÓÀɮתº¾Ö¦³ªÌ©Î¬O¶W¯Å¨Ï¥ÎªÌ¤~¦³¦¹Åv¤O¡A§ïÅܮɥi¨Ï¥Î 10 ¶i¦ìªº¸sÃѧO½X©Î¸sªº¦WºÙ¨Óªí¥Ü¡A¨Ï¥ÎªÌ¥i±q /etc/group ³o­ÓÀɮפ¤±oª¾¦³¨º¨Ç¸sÃѧO½X©M¸sªº¦WºÙ¦b³o­Ó¨t²Î¤¤¥i³Q¨Ï¥Î¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-R¡]recursive¡^

¥H»¼°j¤è¦¡§ïÅܥؿý¥H¤Î©Ò¦³¤l¥Ø¿ýªº¸sÃѧO½X¡A­Y¬O²Å¸¹³s±µÀÉ«h¥ç·|³Q§ïÅÜ¡C

-h

­YÀɮ׬O²Å¸¹³s±µ®É¡A¥u§ïÅܲŸ¹³s±µÀɪº¸s¦WºÙ¡CµL¨Ï¥Î¦¹¿ï¶µ®É¡A«h¬°§ïÅܲŸ¹³s±µ©Ò°Ñ¦Ò¨ìÀɮתº¸s¦WºÙ¡C

¡¹µù¡G©Ò¦³ªº¿ï¶µ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. §ïÅÜÀɮתº¸s¾Ö¦³ªÌ¡G

$ ls -l report
-rw-r--r-- 1 eric    other 85 Nov 1 06:56 report
$ chgrp project report
$ ls -l report
-rw-r--r-- 1 eric    project 85 Nov 1 06:56 report

­Y§A¬O report Àɮתº¾Ö¦³ªÌ¡A«h¥i¥Î chgrp «ü¥O§ïÅܳoÀɮתº¸s¾Ö¦³ªÌ¡C¦¹¨Ò¤¤§Ú­Ì±N¤§§ïÅܦ¨ÄÝ©ó project ¸sªº¦WºÙ¡]project ¥ç¥i¨Ï¥Î¨ä¬Û¹ïÀ³ªºÃѧO½Xªí¥Ü¡^¡C­Y­n¬d¸ßÀɮתº¾Ö¦³ªÌ¡B¸s¾Ö¦³ªÌ¥i¨Ï¥Î ls -l«ü¥O¦L¥X¡C

chmod¡]change mode¡^

¡i¥\¯à¡j

³]©wÀɮשΥؿýªº¦s¨úÅv­­

¡i»yªk¡j

chmod [-R] mode file...
chmod [ugoa] {+|-|=} [rwxlstugo] file...

¡i»¡©ú¡j

chmod «ü¥O¥i­«·s³]©w©Î­×§ïÀɮסB¥Ø¿ýªº¦s¨úÅv­­¡A §ïÅÜ®Émode ¥i¨Ï¥Î¼Æ­È©Î²Å¸¹«ü©w¡C

¦b§ïÅÜÀɮתº¦s¨úÅv­­®É¡A¥²¶·¬O¸ÓÀɮתº¾Ö¦³ªÌ¡A§_«h±N¤£·|³Q¤¹³\¡C

¥t¥~ sticky ¦ì¤¸¬O¥u¦³¶W¯Å¨Ï¥ÎªÌ¤~¥i³]©w¡C

¨ä¨Ï¥Î¼Æ­È®É®æ¦¡¦p¤U¡G

chmod nnnn file...

nnnn ¬O 4 ­Ó 8 ¶i¦ìªº¼Æ¦r¡A¨C­Ó n ªº­È¬O±q 0 ¨ì 7¡A¥Ñ¤U­±©Ò»Ý­nªº¼Ò¦¡¡]mode¡^¬Û¥[¦Ó±o¨ìªº­È¡]¦p 0740 ªí¥Ü³]©w0400¡B0200¡B0100 ¥H¤Î 0040 ªºÅv¤O¡^¡C

mode

»¡ ©ú

4000

¸ÓÀɮצb°õ¦æ®É·|¥h³]©w¨Ï¥ÎªÌÃѧO½X¡C

20#0

# ¬O 1¡B3¡B5¡B7 ®É¬O«ü¸ÓÀɮצb°õ¦æ®É·|¥h³]©w¸sÃѧO½X¡C

# ¬O 0¡B2¡B4¡B6 ®É¬O¨ÏÀÉ®×Âê¦í¡AÁקK¦h­Óµ{¦¡¦P®É¦s¨ú¡C­Õ­Yfile ¬O¥Ø¿ý®É«hµL®Ä¡C

1000

³]©w sticky ¦ì¤¸¡C

0400

¤¹³\¾Ö¦³ªÌªºÅª¨úÅv¡C

0200

¤¹³\¾Ö¦³ªÌªº¼g¤JÅv¡C

0100

¤¹³\¾Ö¦³ªÌªº°õ¦æÅv¡]¹ï¥Ø¿ý¦Ó¨¥¬°¤¹³\·j´MÀɮצWºÙ¡^¡C

0040

¤¹³\¸sªºÅª¨úÅv¡C

0020

¤¹³\¸sªº¼g¤JÅv¡C

0010

¤¹³\¸sªº°õ¦æÅv¡]¹ï¥Ø¿ý¦Ó¨¥¬°¤¹³\·j´MÀɮצWºÙ¡^¡C

0004

¤¹³\¨ä¥L¨Ï¥ÎªÌªºÅª¨úÅv¡C

0002

¤¹³\¨ä¥L¨Ï¥ÎªÌªº¼g¤JÅv¡C

0001

¤¹³\¨ä¥L¨Ï¥ÎªÌªº°õ¦æÅv¡]¹ï¥Ø¿ý¦Ó¨¥¬°¤¹³\·j´MÀɮצWºÙ¡^¡C

¨Ï¥Î²Å¸¹®É¡A®æ¦¡¦p¤U¡G

chmod [who] operator [permissions ] file...

operator ¨Ï¥Î®É¥i¥Î³r¸¹¤À¹j¦h­Ó²Å¸¹¡Achmod «ü¥O·|¨Ì¶¶§Ç³B²z¡C

¦r ¤¸

»¡ ©ú

who ¥i±q 'u'¡B'g'¡B'o' ¤Î 'a' ¦r¤¸¤¤¿ï¥X¦h­Ó¦P®É¨Ï¥Î¡]­Y¬Ù²¤®É«h¨t²Î¹w³]¬° a¡^¡C

u

¾Ö¦³ªÌªº¤¹³\Åv¡C

g

¸sªº¤¹³\Åv¡C

o

¨ä¥L¨Ï¥ÎªÌªº¤¹³\Åv¡C

a

¤W¦C¤TªÌªºÁ`ºÙ¡C

operator ¥i¨Ï¥Î '+'¡B'-' ¤Î '=' ¨ä¤¤¤@­Ó¦r¤¸¨Ó«ü©w¤¹³\Åvªº³]©w

+

¼W¥[¤¹³\Åv¡C

-

§R°£¤¹³\Åv¡C

=

­«·s³]©w¤¹³\Åv¡A¹ï¨S¦³«ü©w¨ìªºpermission §Y¥Nªí§R°£¡C

permission¥i±q¤U¦C¦r¤¸¤¤¥ô·Nµ²¦X¨Ï¥Î¡C

r

Ū¨úªº¤¹³\Åv¡C

w

¼g¤Jªº¤¹³\Åv¡C

x

°õ¦æªº¤¹³\Åv¡C

s

¦bÀÉ®×°õ¦æ®É·|¥h³]©w¾Ö¦³ªÌ©Î¸sªºÃѧO½X¡]¥²¶·»P 'u' ©Î 'g' ¦r¤¸°t¦X¨Ï¥Î¡^¡C

t

³]©w sticky ¦ì¤¸¡]¥²¶·»P 'u' ¦r¤¸°t¦X¨Ï¥Î¡^

l

±NÀÉ®×Âê¦í¡C

u¡Bg¡Bo

¬O«ü©w permission ¹ï¨Ï¥ÎªÌ (u)¡B¸s (g) ©Î¨ä¥L¤H (o) ²£¥Í¼vÅT¡C

¡¹µù¡GÀÉ®×Âê¦íªº l ¦r¤¸¬O¦b SVR3 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-R¡]recursive¡^

¥H»¼°j¤è¦¡³]©w«ü©w¥Ø¿ý¤U©Ò¦³ÀɮפΤl¥Ø¿ýªº¤¹³\Åv¡C

¡¹µù¡G©Ò¦³ªº¿ï¶µ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. ³]©wÀɮתº¦s¨úÅv­­¡G

chmod a+rwx letter
chmod 0777 letter

¦b²Ä¤@­Ó chmod «ü¥O¤¤ªº 'a' ¦r¤¸¡A¥Nªí all¡A«ü¨C­Ó¨Ï¥ÎªÌ³£¦³Åv¤O¥hŪ¡]r¡^¡B¼g¡]w¡^¤Î°õ¦æ¡]x¡^³o­ÓÀɮסC¦Ó²Ä¤G­Ó chmod «ü¥Oªº¥\¯à»P²Ä¤@­Ó¬Û¦P¡A'7' ¬O¥Ñ 4¡]Ū¡^¡B2¡]¼g¡^¤Î 1¡]°õ¦æ¡^µ¥ 3 ­Ó¼Æ¦r¬Û¥[¦Ó±o¡A¥Nªí¤¹³\¨C¤@ºØÅv¤O¡A¦Ó¥B¥X²{¦b¾Ö¦³ªÌ¡B¸s¤Î¨ä¥L¨Ï¥ÎªÌªº¦ì¸m¤W¡A¬G±N¦¹Àɮ׶}©ñµ¹¨t²Î¤W¨C¤@­Ó¨Ï¥ÎªÌ¨Ï¥Î¡C

2. ­­¨îÀɮתº¦s¨úÅv¤O¡G

chmod ugo-w note
chmod a-w note
chmod -w note

¤W­± 3 ­Ó«ü¥O³£¬O±N note Àɮתº¼g¤JÅv§R°£¡A½d³ò¬°¨C­Ó¨Ï¥ÎªÌ¡]¥]§t¨Ï¥ÎªÌ¥»¨­¥çµLÅv¤O¥h­×§ïÀɮתº¤º®e¡^¡C

3. ¶}±Ò°õ¦æÀɮ׮ɪº³]©w¸sÃѧO½X¡G

chmod =rx¡Ag+s access

¤¹³\¨C­Ó¤H¥hŪ¡]r¡^©M°õ¦æ¡]x¡^¨Ã¶}±Ò³]©w¸sÃѧO½X¡C

4. ¸T¤î¨ä¥L¨Ï¥ÎªÌ¨Ï¥Î¡]Ū¡B¼g¤Î°õ¦æ¡^¡G

chmod o-rwx

'o' ¦r¤¸¬O¥Nªí¨ä¥L¨Ï¥ÎªÌ¡]¤£¥]§t¸s¤Î¨Ï¥ÎªÌ¦Û¤v¡^¡C

5. ÀɮתºÂê¦í¡G

chmod a+l bank

¦b¦s¨ú®É·|¦Û°ÊÂê¦íÀɮסA¥B¦P¤@­Ó®É¶¡¤º¥u¯à¤¹³\ 1 ­Óµ{¦¡¦s¨ú¦¹Àɪº¤º®e¡C

chown¡]change owner¡^

¡i¥\¯à¡j

§ïÅÜÀɮתº¾Ö¦³ªÌ

¡i»yªk¡j

chown [-R] [-h] owner file...

¡i»¡©ú¡j

§ïÅÜÀÉ®× file ªº¾Ö¦³ªÌ¬° owner¡C

¨Ï¥ÎªÌ¦b«Ø¥ß¤@­ÓÀɮ׮ɡA¨t²Î·|¦Û°Ê³]©wÀɮתº¾Ö¦³ªÌ¡A¦Óchown «ü¥O´£¨Ñ§ïÅÜÀÉ®×¾Ö¦³ªÌªº¥\¯à¡C°£¤F¶W¯Å¨Ï¥ÎªÌ¥~¡A¤@¯ëªº¨Ï¥ÎªÌ¥²¶·¬O¸ÓÀɪº¾Ö¦³ªÌ¤~¯à¨Ï¥Î chown «ü¥O§ïÅÜÀɮתº¾Ö¥ÎªÌ¡C

owner ¥i¬° 10 ¶i¦ìªº¨Ï¥ÎªÌÃѧO½X©Î¬O¨Ï¥ÎªÌªº¦WºÙ¨Óªí¥Ü¡C¨Ï¥ÎªÌ¥i±qÀÉ®× /etc/passwd ¤¤±oª¾¦³¨º¨Ç¨Ï¥ÎªÌÃѧO½X©M¨Ï¥ÎªÌ¦WºÙ¦b³o­Ó¨t²Î¤¤¥i³Q¨Ï¥Î¡C

¤@¯ë¨Ï¥ÎªÌ¦b¨Ï¥Î chown «ü¥O®É¡AÀÉ®×file ªº³]©w¨Ï¥ÎªÌÃѧO½X¡]set-user-ID¡A04000¡^¦ì¤¸·|³Q²M°£¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-R¡]recursive¡^

¥H»¼°j¤è¦¡§ïÅܥؿý¥H¤Î©Ò¦³¤l¥Ø¿ýªº¨Ï¥ÎªÌÃѧO½X¡A­Y¬O¦³²Å¸¹³s±µÀÉ«h¥ç·|³Q§ïÅÜ¡C

-h

­YÀɮ׬O²Å¸¹³s±µ«h¥u§ïÅܲŸ¹³s±µÀɪº¨Ï¥ÎªÌ¦WºÙ¡CµL¨Ï¥Î¦¹¿ï¶µ®É¡A«h¬°§ïÅܲŸ¹³s±µ©Ò°Ñ¦Ò¨ìÀɮתº¨Ï¥ÎªÌ¦WºÙ¡C

¡¹µù¡G©Ò¦³ªº¿ï¶µ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. §ïÅÜÀɮשҦ³ªÌ¡G

chown manager table

±NÀÉ®× table ªº¾Ö¦³ªÌ¦WºÙ§ï¦¨¥Ñ manager ¨Ï¥ÎªÌ©Ò¦³¡C

ª`·N¡G·íÀɮתº¾Ö¦³ªÌ§ïÅܦ¨§O¤H©Ò¾Ö¦³«á¡A­ì¨Óªº¨Ï¥ÎªÌ§YµLªk¦A³]©w¸ÓÀɮתº¾Ö¦³ªÌ¡C

cmp¡]compare¡^

¡i¥\¯à¡j

¶i¦æ¤GÀɮתº¤ñ¸û

¡i»yªk¡j

cmp [-l] [-s] file1 file2

¡i»¡©ú¡j

cmp «ü¥O·|±NÀÉ®× file1¡Bfile2 ¶i¦æ¤ñ¸û¡A¨Ã¥B§â²Ä¤@­Ó¤º®e¤£¦P³Bªº¦r¤¸¼Æ¡]¦ì¤¸²Õ¼Æ¡^¤Î¦æ¼Æ¦L¥X¡C

¤GÀÉ®×­Y§¹¥þ¬Û¦P¡]§Y¦ì¸m¤Î¤º®e¡^¡A±N¤£·|¦³¥ô¦ó°T®§¥X²{¡C­YÀÉ®× file1 ¬O '-' ¦r¤¸®É¡A«h±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-l

¥H 10 ¶i¦ì¤è¦¡¦L¥X¤£¦Pªº¦ì¸m¤Î¥H 8 ¶i¦ì¦L¥X¸Ó¦ì¸mªº¤º®e¡C

-s¡]silent¡^

¤GÀɮפ£¦P®É¡A±N¤£·|¦L¥X¥ô¦ó°T®§¡A¦Ó¥u¦³¶Ç¦^­È°e¦^¡C

¡i¶Ç¦^­È¡j

0 ¡Ð ªí¥Ü¤GÀɮתº¤º®e§¹¥þ¬Û¦P¡C
1 ¡Ð ªí¥Ü¤GÀɮתº¤º®e¦³¤£¦P¡C
2 ¡Ð ªí¥ÜÀɮפ£¦s¦b©ÎµL¦s¨úªºÅv¤O¡C

¡i½d¨Ò¡j

1. §ä¥X¤GÀɮפ£¦Pªº¦ì¸m¡G

$ cmp task1 task2
task1 task2 differ: char 3¡Aline 1

¦L¥Xµ²ªG¬°¤GÀɮתº¦WºÙ¤Î²Ä¤@­Ó¤£¦Pªº¦a¤è¬O¦b²Ä 3 ­Ó¦ì¤¸²Õ¡A¬Û·í©ó²Ä 1 ¦æªº¦ì¸m¡C

2. §ä¥X©Ò¦³ªº¤£¦P³B¤Î¤º®e¡G

$ cmp -l task1 task2
3 162 170
20 61 65

¨äµ²ªG¬°¦³ 2 ­Ó¦ì¸mªº¤º®e¬O¤£¦Pªº¡A²Ä¤@­Ó¤£¦P³B¬O¦b²Ä 3 ­Ó¦ì¤¸²Õ¡Atask1 ªº¤º®e¬O 162¡]8 ¶i¦ì¼Æ¡^¦Ótask2ªº¤º®e¬O 170¡]8 ¶i¦ì¼Æ¡^¡F²Ä¤G­Ó¤£¦P³B¬O¦b²Ä 20 ­Ó¦ì¤¸²Õ¡Atask1 ªº¤º®e¬O 61 ¦Ó task2 ªº¤º®e¬O 65¡C

ASCII 162 ¡]8¶i¦ì¼Æ¡^ªº­Èªí¥Ü¦r¤¸ 'r'
ASCII 170 ¡]8¶i¦ì¼Æ¡^ªº­Èªí¥Ü¦r¤¸ 'x'
ASCII 61¡]8¶i¦ì¼Æ¡^ªº­Èªí¥Ü¦r¤¸ '1'
ASCII 65¡]8¶i¦ì¼Æ¡^ªº­Èªí¥Ü¦r¤¸ '5'

comm¡]common¡^

¡i¥\¯à¡j

¹ï¤G­Ó¤w±Æ§Çªº¤å¦rÀɶi¦æ¤ñ¸û

¡i»yªk¡j

comm [-[123]] file1 file2

¡i»¡©ú¡j

comm «ü¥O·|¥hŪ¨ú³o¤G­ÓÀɮס]³o¤G­ÓÀɮתº¤º®e¶·¤w³Q±Æ§Ç¹L¡A¦p¨Ï¥Î sort «ü¥O±Æ§Ç«áªºµ²ªG¡^¡AµM«á·|¦³¤TÄ榡ªºµ²ªG¦L¥X¡C

²Ä¤@Äæ«ü¥XÀÉ®× file1 ¤~¦³ªº¦æ¡C
²Ä¤GÄæ«ü¥XÀÉ®× file2 ¤~¦³ªº¦æ¡C
²Ä¤TÄæ«h«ü¥XÀÉ®×file1¡Bfile2 ¦@¦³ªº¦æ¡A¦Ó³o¨Ç¿é¥Xªºµ²ªG¥i¥Î¿ï¶µ¨Ó±±¨î¬O§_­n¦L¥X¡C

­YÀÉ®× file1 ¬O '-' ¦r¤¸®É¡A«h±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-1

¬Ù²¤²Ä¤@Ä檺¿é¥X¡C

-2

¬Ù²¤²Ä¤GÄ檺¿é¥X¡C

-3

¬Ù²¤²Ä¤TÄ檺¿é¥X¡C

¡¹µù¡G-1¡B-2¡B-3 ªº¿ï¶µ¥i¦X¨Ö¨Ï¥Î¡A¦p -12 ªí¥Ü¨ú®ø²Ä 1¡B2 Äæ¡A¥u¿é¥X²Ä 3 Ä欰 file1¡Bfile2 ³£¦³ªº¦æ¡C

¡i½d¨Ò¡j

ÀÉ®× version1 ªº¤º®e ÀÉ®× version2 ªº¤º®e
aback aback
abacus abandon
abandoned abandoned
abase abase
abash abash
abatoir abate
abbess abatoir
abbey abbey

¡@

1. ¤ñ¸û¤G­Ó±Æ§Ç¹Lªº¤å¦rÀɸê®Æ¡G

$ comm version1 version2
aback
abacus
abandon
abandoned
abase
abash
abate
abatoir
abbess
abbey

¿é¥Xªºµ²ªG§Ú­Ì¥i¬Ý¥X¨º¨Ç¦æ¬O¥u¦s¦bÀÉ®× version1 ¤¤ªº¦æ¡A¦p³Ì¥ªÃ䪺Äæ¦ì 'abacus'¡B'abbess'¡A±µµÛ¤¤¶¡¨º¤@Äæ¬O¥u¦s¦bÀÉ®× version2¤¤ªº¦æ¡A¨Ò¦p 'abandon'¡B'abate'¡A¦Ó³Ì¥kÃäÄæ¦ì«h¬O¤G­ÓÀɮ׳£¦³ªº¦æ¡C

2. ¥u±N¤GÀɮ׳£¦³ªº¦æ¦L¥X¡G

$ comm -12 version1 version2
aback
abandoned
abase
abash
abatoir
abbey

¨Ï¥Î -12 ¿ï¶µ¥i¬Ù²¤²Ä 1¡B2 Ä檺¿é¥X¡A¥u³Ñ¤U²Ä 3 Äæ¬O 2 ­ÓÀɮצ@¦³ªºÄæ¦ì¡A¦]¦¹·|±NÀÉ®× version1¡Bversion2 ¤¤¦³¬Û¦Pªº¦æ¦L¥X¡C

compress uncompress zacat

¡i¥\¯à¡j

¹ïÀɮ׶i¦æÀ£ÁY¡B¸ÑÀ£ÁY©MÅã¥ÜÀ£ÁYÀɤºªº¸ê®Æ

¡i»yªk¡j

compress [-cfv] [-b bits] [filename ...]
uncompress [-cv] [filename...]
zcat [filename...]

¡i»¡©ú¡j

compress¡Buncompress¡B zcat ¬O¦³¬Û¤¬Ãö³s©Êªº¤T­Ó«ü¥O¡A ¥¦­Ì¥i¥H¹ï«ü©wªºfilename ÀɮפÀ§O°µÀ£ÁY¡B¸ÑÀ£ÁY¥H¤ÎÅã¥Ü¤º®e¡CÀ£ÁYªºÀuÂI¦b©ó´î§CÀɮתº¤j¤p¡A¥H¸`¬ÙºÏºÐ¾÷¤WªºªÅ¶¡©Î¬O¦b¶Ç¿é®É´î¤Ö³B²zªº®É¶¡¡A¹ï©ó¤@­Ó¦³®Ä²vªº¹q¸£¨t²Î¦Ó¨¥¡A³o¤GÂI³£¬O¬Û·í­«­nªº¦]¯À¡C±µ¤U¨Ó«h¤¶²Ð³o´X­Ó«ü¥Oªº¸Ô²Ó¥\¯à¡Gcompress «ü¥O¬O±Ä¥Î Lempel-Ziv ªº½s½X¤è¦¡¶i¦æÀ£ÁY¡A¸û pack «ü¥O©Ò±Ä¥ÎªºHuffman ½s½X¤è¦¡¦³¸û§Öªº³t«×©M§ó¨Îªºµ²ªG¡A¤@¯ëªº¤å¦rÀɮס]­^¤å¡^¥i¨ÏÀɮתº¤j¤pÁY´î¨ì­ì¨Óªº¤@¥b¡A¹ï¨t²Î¦Ó¨¥´î»´¤F¤£¤Öªº­t¾á¡CÀ£ÁY«á·|¦Û°Ê±N¨Ï¥ÎªÌ©Ò«ü©wªºÀɮצWºÙ§ï¬°ªþ¥[ÀɦW¬° .Z ªºÀɮסA¥H°Ï§OÀɮ׬O§_¦³³QÀ£ÁY¹L¡Cuncompress«ü¥O©Ò°µ°Ê§@­è¦n»Pcompress«ü¥O¬Û¤Ï¡A¥Ñ©ócompress«ü¥O·|±NÀɮ׶i¦æÀ£ÁY¡A¦Ó¦¨¬°¹ï¨Ï¥ÎªÌµL·N¸qªº¸ê®Æ¡A
¦]¦¹¨Ï¥ÎªÌ­Y»Ý­n§â¸ÓÀɮ׫ì´_¦¨­ì¨Óªº¤º®e©M¤j¤p¡A«h»Ý°µÁ٭쪺¨BÆJ¡Czcat «ü¥O¤]¥i¹F¦¨ uncompress ¬Û¦PªºÁÙ­ì³B²z¡A¦ý¬O¨Ã¤£·|§ïÅܭ즳À£ÁYÀɪº¤º®e¡A¥¦¬O±N¸ÑÀ£ÁY«áªºµ²ªG°e¨ì¼Ð·Ç¿é¥Xªº¿Ã¹õ¤WÅã¥Ü¡C¦]¦¹­ì¥ýªºªþ¥[ÀɦW¬°.Z ªºÀɮפ´·|¦s¦b¡A­Y¨Ï¥ÎªÌ­n±N¸ÑÀ£ÁYªºµ²ªG«O¯d°_¨Ó¡A¥i¨Ï¥Î­«·s¾É¦Vªº¤è¦¡±Nµ²ªG¼g¤J«ü©wªºÀɮפº¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-c

±N³B²z¹Lªºµ²ªG°e¨ì¼Ð·Ç¿é¥X¡A¨Ã¤£·|¹ïÀɮתº¤º®e°µ­×§ï¡A¦]¦¹¨Ï¥ÎªÌ­Y¬O¨Ï¥Î uncompress -c ªº«ü¥O¡A«h¿é¥Xªºµ²ªG±N¬O»Pzcat«ü¥O¬Û¦P¡C

-f

¦b¤w¦³À£ÁYÀÉ .Z ¦s¦b®É¡A±j¨î­n¨D compress «ü¥O¶i¦æÀ£ÁY¡A¦Ó¤£·|Åã¥Ü­n¨D½T»{ªº°T®§¡C

¡]·íµL¨Ï¥Î¦¹¿ï¶µ¦Ó­n¨DÀ£ÁY®É¡A­Y¦b¥Ø«e¤u§@¥Ø¿ý¤U¦³ÀɦW¬Û¦P¦Óªþ¥[ÀɦW¬° .Z ®É¡A·|­n¨D¨Ï¥ÎªÌ½T»{¡A¬O§_­n±N­ì¦³ªºÀ£ÁYÀɳQ·sªº¸ê®Æ©Ò¨ú¥N¡C¡^

¥t¤@ºØ±¡ªp¬O compress «ü¥O¦b¶i¦æÀ£ÁY®É¡A­Yµo²{²£¥ÍªºÀ£ÁYÀɸû­ì¨ÓªºÀɮפj®É¡A¦]¤£²Å¦XÀ£ÁYªº¥Øªº¡A¬G¤£·|¶i¦æÀ£ÁY³B²z¦Ó«O¯d¥¼À£ÁYªº¤º®e¡C¦b³o®É­Y¨Ï¥Î -f ¿ï¶µ¡A«h¬°¤£¦Ò¼{®Ä²v¦]¯À¤´¬°²£¥ÍÀ£ÁYÀÉ¡C

-v ¸Ô²ÓÅã¥Ü³B²zªº±¡§Î¡A¦L¥X¨C­ÓÀɮ׳QÀ£ÁY¦¨­ì¨Ó¤j¤pªº¦Ê¤À¤ñ¡C
-b bits ³]©wÀ£ÁY®Éªº°Ñ¼Æ¡Abits ¥i¬° 9 ¨ì16 ¤§¶¡ªº¼Æ¡A¨ä¹w³]­È¬O 16¡C¨Ï¥ÎªÌ­Y­°§C bits ªº¼Æ­È«hÀ£ÁY«áªºÀÉ®×±N·|¸û¤j¡C

¡i¶Ç¦^­È¡j

0 ¡Ð¥¿½Tªº°õ¦æ§¹¦¨¡C
1 ¡Ð¦³¿ù»~±¡§Î²£¥Í¡C
2 ¡ÐÀ£ÁY«áªºÀɮ׸û¤j¡A¦Ó¤£²£¥ÍÀ£ÁYÀÉ¡C

¡i°T®§»¡©ú¡j

Usage: compress [-fvc] [-b maxbits] [filename...]
¿ï¶µ¿ù»~¡C

Missing maxbits
¨Ï¥Î-b¿ï¶µ®É¥²¶·­n¦³°Ñ¼Æ¡C

filename: not in compressed format
¦b¸ÑÀ£ÁY®É©Ò«ü©wªºÀÉ®×¥²¶·¬O¤@­ÓÀ£ÁY¹LªºÀɮסA§_«hµLªk¶i¦æ¸ÑÀ£ÁYªº°Ê§@¡C

filename: compressed with xxbits, can only handle yybits
% µLªk³Q«ü©wªºÀ£ÁY¦ì¤¸©Ò³B²z¡AÀ³§ï¥Î¸û¤pªº¼Æ­È¡C

filename: already has .Z suffix--no change
% ¸ÓÀɮתºªþ¥[ÀɦW¤w¬° .Z ¡A¥²¶·±N¤§ÅܧóÀɦW¡A¤~¥i¶i¦æÀ£ÁY¡C

filename:already exists; do you wish to overwrite(y or n)?
% ¿é¥Xªº·sÀɮפw¦s¦b¡A­n¨D¨Ï¥ÎªÌ½T»{¬O§_±NÂÂÀɮקR°£¡C­Y¿é¤J 'y'«h±NÂÂÀÉ®×Âл\¡A¿é¤J 'n' «h¤£²£¥Í·sªºµ²ªG¡C

uncompress: corrupt input
compress µ{¦¡¦¬¨ì SIGSEGV ªº±±¨î°T¸¹¡Aªí¥Ü¿é¤Jªº¸ê®ÆÀÉ®×µLªkÄ~ÄòŪ¨ú¡C

Compress: xx.xx%
% ¦b¨Ï¥Î -v ¿ï¶µ®É¡A·|¦L¥XÀɮפj¤p´î¤Öªº¦Ê¤À¤ñ¡C

-- not a regular file: unchanged
¨Ï¥ÎªÌ©Ò«ü©wªºÀɮרëD¤@­Ó¥¿±`ªºÀɮסA¦Ó¬O­Ó¯S®íÀÉ¡]¥Ø¿ý¡^¡A¦]¦¹µLªk¶i¦æÀ£ÁY¡C

-- has xx other links: unchanged
¨Ï¥ÎªÌ©Ò«ü©wªºÀɮ׬°³sµ²ÀÉ¡A¬GµLªk¶i¦æÀ£ÁY¡C

-- file unchanged
¦]À£ÁY«áªºµ²ªGµLªk¬°¨Ï¥ÎªÌ¸`¬ÙªÅ¶¡¡A¬G¤£¶i¦æÀ£ÁY³B²z¡C

¡i½d¨Ò¡j

1.À£ÁYÀÉ®×

compress -v document

2.¸ÑÀ£ÁYÀÉ®×

uncompress document

3.¬d¬ÝÀ£ÁYÀɮתº¤º®e

zcat document

cpio¡]copy in/out¡^

¡i¥\¯à¡j

±NÀÉ®×Âà´«¦¨«O¦sÀÉ¡]archieve file¡^§Î¦¡©Î±N«O¦sÀÉÁ٭즨¤@¯ëÀÉ®×

¡i»yªk¡j

cpio -i [bBcdfkmrsStuvV6] [-C size] [-E file] [-H hdr] [-I file [-M message]] [-R ID]] [pattern...]
cpio -o [aABcLvV] [-C size] [-H hdr] [-O file [-M message]]
cpio -p [ adlLmuvV ] [-R ID]] directory

¡i»¡©ú¡j

cpio «ü¥O¥D­n¥\¯à¬O±N³\¦h­ÓÀÉ®×Âà´«¦¨¤@­Ó«O¦sÀÉ¡A©Î¬O¤Ï¤è¦V±N«O¦sÀÉÁ٭즨¤@¯ëÀɮסC

¥i¨Ì¾Ú¿ï¶µªº¤£¦P¦Ó¹F¦¨«ü©wªº¥\¯à¡A¨ä¥D­nªº¿ï¶µ¬O-i¡B-o¡B-p¡A³o¤T­Ó¿ï¶µ¤£¥i¦P®É¨Ï¥Î¡C¦U¥D¿ï¶µ¥\¯à»¡©ú¦p¤U¡G

¥D ¿ï ¶µ

»¡ ©ú

-i¡]copy in¡^

ÁÙ­ì¥\¯à¡A±q¼Ð·Ç¿é¤JŪ¨ú«O¦sÀɪºÀɦWÁ٭즨¤@¯ëÀɮסA©ñ¸m¦b¥Ø«eªº¤u§@¥Ø¿ý¤U¡CÁÙ­ì¹Lµ{¤¤­Yµo²{­n©ñ¤Jªº¥Ø¿ý¤U¦³®É¶¡¬Û¦P©Î¸û·sªºÀɮ׮ɡAcpio «ü¥O·|²£¥Íĵ§i°T®§¦Ó¤£·|±N­ì¨ÓªºÀɮפº®e§R°£¡A°£«D¥H -u ¿ï¶µ±j­¢°µ§R°£ªº³B²z¡C

pattern ¬O¥Î¨Ó«ü©wÁ٭쪺ÀɮצWºÙ¡A¥i¨Ï¥Î¸U¥Î¦r¤¸¦p '?'¡B'*' µ¥²Å¸¹¡C¦bÁÙ­ì®ÉÀÉ®×¾Ö¦³ªÌ¤Î¸sµ¥¤¹³\Åv­­³£»P¨Ï¥Î cpio «ü¥OªÌ¬Û¦P¡A°£«D¨Ï¥ÎªÌ¬O¶W¯Å¨Ï¥ÎªÌ¤~·|¨Ï¤¹³\Åv­­»P¦bÂà´««e¬Û¦P¡C

-o¡]copy out¡^

Âà´«¥\¯à¡A·|±q¼Ð·Ç¿é¤JŪ¨ú­nÂà´«ªº¸ô®|¤ÎÀɮצWºÙ¡A¸g¹LÂà´««á°e¨ì¼Ð·Ç¿é¥X¡Acpio «ü¥O±`¥H­«·s¾É¦Vªº¤è¦¡±N¿é¥Xªºµ²ªG¸m©ó«ü©wªº«O¦sÀɤº¡A¥H¤Î¥Î find¡Bls µ¥«ü¥O¨Ó¿ï¾Ü­nÂà´«ªºÀɮצWºÙ¡A¦A±N³o¨Ç¦WºÙ¸g¹L pipe ­«·s¾É¦V¡A°µ¬° cpio «ü¥OªºÀɮצWºÙ¡C

Âà´««áªº¸ê®Æ¦h¥H 512 ­Ó bytes ¬°³Ì¤pªº³B²z³æ¦ì¡A°£«D¦³¨Ï¥Î -B ©Î -C ¿ï¶µ§ïÅܨt²Îªº¹w³]­È¡C

-p¡]pass¡^

³B²z¥Ø¿ýªº½Æ»s¡A¥i±N¤@­Ó¥Ø¿ý¤U©Ò¦³ªºÀɮ׽ƻs¨ì«ü©w³B¡Ccpio «ü¥O·|±q¼Ð·Ç¿é¤JŪ¨úÀɮצWºÙ¤Î¸ô®|«á½Æ»s¨ì«ü©wªº¦ì¸m¡C¦b³o¿ï¶µ¤¤¡A¤£·|°µ«O¦sÀɪºÂà´«¤ÎÁÙ­ì¡C

¹ï¦r¤¸¯S®íÀÉŪ¨ú¡]-i¡^©Î¼g¤J¡]-o¡^¸ê®Æ¡]¥BµL¨Ï¥Î -O¡B-I¡^®É¡A­Y¨ìºÏ©ÊÀx¦sÅ骺§ÀºÝ¡Acpio «ü¥O·|¥X²{¤U­±ªº°T®§¡C

If you want to go on¡Atype device/file name when ready

¦¹®É¡A§ó´«ºÏ©ÊÀx¦sÅé«á¡A¥´¤J¦r¤¸¯S®íÀɪº¦WºÙ¡A±µµÛ¦A«ö¤U <ENTER> Áä´N¥iÄ~Äò³B²z¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-a (access)

±NÀɮתº¦s¨ú®É¶¡§ó·s¬°¥Ø«eªº®É¶¡¡C·í¨Ï¥Î cpio -pla «ü¥O®É¡A¹ï³s±µÀɪº¦s¨ú®É¶¡¤£·|§ó·s¡C¦¹¿ï¶µ¤£¥i»P -m ¿ï¶µ¦P®É¨Ï¥Î¡C

-A (append)

±NÀɮתþ¥[¨ì«O¦sÀɪº§ÀºÝ¡C¦¹¿ï¶µ¥²¶·»P -O ¿ï¶µ°t¦X¨Ï¥Î¡A¥Î¨Ó«ü©w«O¦sÀɪº¦WºÙ¡C

-b

¹ï¨C­Ó¦r²Õ¤¤ªº byte ¥H¬Û¤Ï¶¶§Ç©ñ¸m¡C¦¹¿ï¶µ¥²¶·»P -i ¿ï¶µ°t¦X¨Ï¥Î¡C

-B (block)

¿é¥X¿é¤J®É¡A¥H 5,120 ­Ó bytes ¬°¨C¦¸³B²zªº³æ¦ì¡C¹ï©ó¬Y¨ÇÀx¦s³]³Æ¥i´£°ª³B²z³t«×¡C¹w³]¨C¦¸³B²zªº³æ¦ì¬O 512 ­Ó bytes¡C

-c

¹ïÀɮ׫eºÝ¡]header¡^¥Î ASCII¦r¤¸¼g¤J¡A¥H´£°ª¥iÄâ©Ê¡A¤è«K©ó¤£¦P¾÷¾¹¤Wªº¨Ï¥Î¡C¦¹¿ï¶µ¤£¥i»P -H¡B-6 ¿ï¶µ¦P®É¨Ï¥Î¡C

-C bufsize

«ü©w¨C¦¸¿é¥X¿é¤J³B²zªº³æ¦ì¬° bufsize­Óbytes¡Cbufsize ¬°¥¿¾ã¼Æ¡A¦bµL«ü©w -C¡B-B ¿ï¶µ¨Ï¥Î®É¡A¹w³]ªº¤j¤p¬O 512 ­Ó bytes¡C¦¹¿ï¶µ¥u¹ï¦r¤¸¯S®íÀɦ³·N¸q¡C

-d (directory)

¦b¥²­n®É¤¹³\«Ø¥ß¥Ø¿ý¡A¦p¦b½Æ»s¥Ø¿ý®É¡C

-E file (extract)

«ü©wÀÉ®× file¡A¤º®e¬O­n±q«O¦sÀÉÁ٭쪺ÀɮצWºÙ¡Afile Àɮפºªº©ñ¸m¤è¦¡¬°¨C¦æ¤@­ÓÀɦW¡C

-f

±N¤£ÄÝ©ó pattern ¤¤©Ò«ü©wªºÀÉ®×ÁÙ­ì¡C¦¹¿ï¶µ¥u¯à»P -i ¿ï¶µ¦P®É¨Ï¥Î¡C

-H hdr (header)

¹ïÀɮ׫eºÝªº¸ê®Æ¬O¥H hdr ªº®æ¦¡³B²z¡C­Y¦b¤£¦Pªº¾÷¾¹¤W°µÂà´«¤ÎÁ٭쪺¤u§@¡A«h¶·¨Ï¥Î¦¹¿ï¶µ©Î¬O -c ¿ï¶µ¡C¦¹¿ï¶µ¤£¥i»P -c¡B-6 ¿ï¶µ¦@¦P¨Ï¥Î¡C

hdr ªº¦WºÙ¥i¬°¤U­± 4 ºØ¡G

crc ©Î CRC ¨Ï¥Î ASCII ªºÀɮ׫eºÝ¤ÎÂX¥Rªº³]³Æ¸¹½X¡A¥B¨C­ÓÀɮ׳£·|¥[¤WÀˬd½X¡]check sum¡^¡C
ustar ©Î USTAR ¨Ï¥Î IEEE/P1003®æ¦¡ªº¼Ð·Ç¸ê®Æ¥æ´«ªºÀɮ׫eºÝ¡C
tar ©Î TAR ¨Ï¥Î tar «ü¥OªºÀɮ׫eºÝ¤Î®æ¦¡¡C
odc ¨Ï¥Î ASCII ªºÀɮ׫eºÝ¤Î¤p«¬ªº³]³Æ¸¹½X¡C
-I file (input)

±qÀÉ®× file Ū¨ú¸ê®Æ¥N´À«O¦sÀÉ¡C­Y file¬O¦r¤¸¯S®íÀÉ¥B¥Ø«eªººÏ©ÊÀx¦sÅé¡]medium¡^¤w³QŪ¨ì§ÀºÝ¡A¦¹®É¥i§ó´«¥t¤@­ÓºÏ©ÊÀx¦sÅé¡AµM«á«ö <ENTER> Áä¨Ï cpio«ü¥OÄ~Äò³B²z¡C¦¹¿ï¶µ¥²¶·»P -i ¿ï¶µ°t¦X¨Ï¥Î¡C

-k (skip)

¸õ¹Lµo¥Í°ÝÃDªºÀɮ׫eºÝ©Î¿é¥X¤J¿ù»~ªº³¡¥÷¡A¥u±N¥¿±`¡B¥iŪ¨úªº¸ê®ÆÁÙ­ì¡C¦¹¿ï¶µ¥²¶·»P -i ¿ï¶µ°t¦X¨Ï¥Î¡C

-l (link)

¦b¥i¯àªº±¡§Î¤U¡A¨Ï¥ÎÀɮ׳s±µ¤è¦¡¦Ó«D¥h½Æ»sÀɮסC¦¹¿ï¶µ¥²¶·»P -p ¿ï¶µ°t¦X¨Ï¥Î¡C

-L (follow)

¹ï©ó²Å¸¹³s±µÀɪº³B²z¤è¦¡¬°±N¤º®e½Æ»s¤@¥÷¡A¹w³]ªº³B²z±¡§Î¬O¥u¦s©ñÀɦW¡C

-m (modification)

¨ÏÀɮתº­×§ï®É¶¡¤£ÅÜ¡A¦ý¹ï¥Ø¿ýµL®Ä¡C¦¹¿ï¶µ¤£¥i»P -a ¿ï¶µ¦P®É¨Ï¥Î¡C

-M message

©w¸q§ó´«ºÏ©ÊÀx¦sÅé®É©Ò²£¥Íªº°T®§¡C¦¹¿ï¶µ±`»P -O ©Î -I ¿ï¶µ°t¦X¡A¨Ã«ü©w¦r¤¸¯S®íÀÉ¡C

-O file (output)

±N cpio «ü¥O©Ò²£¥Íªº¿é¥X¼g¨ì file Àɮפ¤¡A­Yfile ¬O¦r¤¸¯S®íÀÉ¡A¥B³B²zªººÏ©ÊÀx¦sÅé¤w¤£°÷ªÅ¶¡®É¡A¦b§ó´««á«ö <ENTER> ÁäÄ~Äò³B²z¡C¦¹¿ï¶µ¥²¶·»P -o ¿ï¶µ°t¦X¨Ï¥Î¡C

-r (interactive)

¥H¥æ½Íªº¤è¦¡§ó§ïÀɮצWºÙ¡A­Y¨Ï¥ÎªÌ¥u«ö <ENTER> Áä¡A«h¸ÓÀɮפ£³B²z¡C­Y¨Ï¥ÎªÌ¿é¤Jªº¬O '.' ¦r¤¸¡A«h«O¯d­ì¨Óªº¦WºÙ¡C¦¹¿ï¶µ¤£¥i»P -p ¿ï¶µ¦P®É¨Ï¥Î¡C

-R ID (reassign)

¹ï¨C­ÓÀɮ׳]©w©Ò¦³ªÌ¤Î¸sªºÃѧO½X¡C¦¹¿ï¶µ¥u¯à¥Ñ¶W¯Å¨Ï¥ÎªÌ¨Ï¥Î¡C

-s (swap)

¨Ï¥b­Ó¦r²Õ¤¤ªº 2 ­Ó bytes ¤¬´«¤º®e¡]¨C­Ó§¹¾ãªº¦r²Õ¬° 4 ­Ó bytes¡^¡C

-S (swap)

¨Ï¨C­Ó¦r²Õ¤¤ 2­Ó¥b¦r²Õ¤¬´«¤º®e¡]¨C­Ó§¹¾ãªº¦r²Õ¬° 4 ­Ó bytes¡A¥b­Ó¦r²Õ¬° 2 ­Ó bytes¡^¡C

-t (table)

¦L¥X«O¦sÀɤºªºÀɮצWºÙ¡C¦¹¿ï¶µ¤£·|ÁÙ­ìÀɮסA¶È¬O¦C¥X¦³¨º¨ÇÀɮצ¹¿ï¶µ¤£¥i»P -V ¿ï¶µ¦P®É¨Ï¥Î¡C

-u

(unconditional)

¦b½Æ»s®É¤£¦Ò¼{®É¶¡ªº¥ý«á¡A¤@«ß½Æ»s¡C¥¿±`ªº±¡§Î¤U·|¥hÀˬdÀɮתº®É¶¡¡A¦b½Æ»sªº¹Lµ{¤¤¡A­Yµo²{¦³ÂÂÀÉ®×·|±N·sÀɮקR°£®É«h¸õ¹L¤£³B²z¡C

-v (verbose)

¦L¥XÀɮצWºÙ¡C·í»P -t ¿ï¶µ¦@¦P¨Ï¥Î®É¡A¦L¥Xªº®æ¦¡¦p¦P¨Ï¥Î ls -l «ü¥Oªº¿é¥X¡C

-V (verbose)

¨C­ÓÀɮצbŪ¨ú©Î¼g¤JÀɮ׮ɷ|¦L¥X '.' ¦r¤¸¡AÅý¨Ï¥ÎªÌª¾¹D²{¦b¥¿³B²z¸ê®Æ¤¤¡A¦Ó¤£¥Î±NÀɮצWºÙ¦L¥X¡C

-6 (sixth edition)

­n¨D¨Ï¥Î UNIX ¨t²Îª©¥» 6 ªº®æ¦¡¨Ó³B²z«O¦sÀÉ¡C¦¹¿ï¶µ¥²¶·»P -i ¿ï¶µ°t¦X¨Ï¥Î¡A¥B¦¹¿ï¶µ¤£¥i»P -c¡B-H ¿ï¶µ¦P®É¨Ï¥Î¡C

¡¹µù¡G¿ï¶µ -S¡B-s¡B-b¡B-6 ¬O¦b SVR3 ª©¥»®É¤~¶}©l´£¨Ñ¡C¿ï¶µ -A¡B-C¡B-E¡B-H¡B-I¡B-k¡B-L¡B-M¡B-O¡B-R¡B-V¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. ±N«ü©wªºÀÉ®×¥H«O¦sÀɧΦ¡°e¨ìºÏ©ÊÀx¦sÅé¡G

$ ls -1 text* | cpio -o -O /dev/fd0
10 blocks

ls «ü¥O·|±N¥Ø«e¤u§@¥Ø¿ý¤U¥H text ¬°°_©lªºÀɮצWºÙ¦C¥X¡A°e¨ì cpio «ü¥O°µ¬°­n¨DÂà´«ªºÀɦW¡AÂà´««áªº«O¦sÀɵ²ªG«h°e¨ì -O ¿ï¶µ©Ò«ü©wªº /dev/fd0 ªº³]³Æ¤W¡]¦p¦¹±N·|§R°£«O¦sÀɤº­ì¦³ªº¸ê®Æ¡^¡C

2. ·s¼WÀɮרìºÏ©ÊÀx¦sÅ餺ªº«O¦sÀÉ¡G

$ cpio -oA -O /dev/fd0
data
110 blocks

¤U§¹³o«ü¥O«á¡A·|­n¨D¨Ï¥ÎªÌ¿é¤J­n·s¼WªºÀɮצWºÙ¡]¦b¦¹§Ú­Ì¿é¤JªºÀɮצWºÙ¬° data¡^¡A¿é¤J«á«ö¤U <ENTER> Áä¡A¦A«ö <Ctrl-D> Áäµ²§ô¡AµM«á±N³oÀÉ®×Âà´««á¡A·s¼W¨ìºÏ©ÊÀx¦sÅé¤W«O¦sÀɪº§ÀºÝ¡A¦Ó¤£·|§R°£­ì¨Ó¦b«O¦sÀɤW­ì¦³ªº¸ê®Æ¡C

3. Àˬd«O¦sÀɮפº¥]§t¦³¨º¨ÇÀɮסG

$ cpio -itv -I /dev/fd0
-rw-r--r-- 1 eric other 1804 Nov 1 21:29 1992¡Atext1
-rw-r--r-- 1 eric other 1096 Nov 1 21:29 1992¡Atext2
-rw-r--r-- 1 eric other 700 Nov 1 21:29 1992¡Atext3
-rw-r--r-- 1 eric other 12 Nov 2 03:30 1992¡Adata
10 blocks

cpio «ü¥O¤¤¨Ï¥Î¤F -it ¿ï¶µ¡A¬O±q«O¦sÀÉŪ¨ú¸ê®Æ¡A­n¨D¦C¥X¦³¨º¨ÇÀɮצs¦b«O¦sÀɤº¡A¦Ó -v ¿ï¶µ«h¬O­n¨D¦C¥X¸û¬°¸Ô²Óªº¸ê®Æ¦pÀÉ®×¼Ò¦¡¡B¾Ö¦³ªÌ¡B¸s¦WºÙµ¥¡C¿ï¶µ -I «h¬O¥Î¨Ó«ü©w«O¦sÀɮתº³]³Æ¦WºÙ¡C

4. ±N¥Ø«e¤u§@¥Ø¿ý¤U©Ò¦³ªºÀɮפΤl¥Ø¿ýÀx¦s¨ì«O¦sÀÉ¡G

find . -depth -print | cpio -oc >/usr/miller/m11d24

find «ü¥O·|±N¥Ø«e¤u§@¥Ø¿ý¤U©Ò¦³ªºÀɮצWºÙ¡]¥]§t¤l¥Ø¿ý¤UªºÀɮס^°e¨ì cpio «ü¥O³B²z¡C¦b cpio «ü¥O¤¤¥Ñ©ó¨Ï¥Î¤F -c ¿ï¶µ¡A¬G¹ïÀɮ׫eºÝ¬O¥Î ASCII ¦r¤¸¼g¤J¡A¥H´£°ª¥iÄâ©Ê¡C³Ì«á¥H­«·s¾É¦V¤è¦¡§â«O¦sÀɪº¤º®e¦s©ñ¨ì«ü©wªºÀÉ®× /usr/miller/m11d24¡C

5. ±N«O¦sÀɪº¸ê®ÆÁÙ­ì¨ì¥Ø«e¤u§@¥Ø¿ý¡G

cpio -icd </usr/miller/m11d24

­n¨D cpio «ü¥O±qÀÉ®× /usr/miller/m11d24 Ū¨ú¸ê®Æ¡AµM«á±NÀÉ®×ÁÙ­ì©ñ¨ì¥Ø«eªº¤u§@¥Ø¿ý¡C

6. ¥Ø¿ýªº½Æ»s¡G

find . -print | cpio -pdlmv /usr/stan

­º¥ý¡Afind «ü¥O·|±N¥Ø«e¤u§@¥Ø¿ý¤U©Ò¦³ªºÀɮצWºÙ¤Î¤l¥Ø¿ý¦WºÙ¶Çµ¹ cpio «ü¥O¡Acpio «ü¥O·|±N³o¨ÇÀɮ׽ƻs¨ì«ü©wªº¥Ø¿ý /usr/stan ¤º¡A¦b½Æ»sªº¹Lµ{¤¤¤£·|²£¥Í«O¦sÀÉ¡C

csplit¡]context split¡^

¡i¥\¯à¡j

±NÀɮפÀ³Î¦¨¼Æ­Ó¤pÀÉ®×

¡i»yªk¡j

csplit [-s] [-k] [-f prefix] file arg1 [...argn ]

¡i»¡©ú¡j

csplit «ü¥O¥i±N¤@­Ó¤jªºÀɮפÀ³Î¦¨­Y¤z­Ó¸û¤pªºÀÉ¡C¤À³Îªº¼Æ¥Ø¥i¥Ñ¨Ï¥ÎªÌ«ü©w¡A¤À³Îªº¦ì¸m¬O§t¦³arg1...argn µ¥¦r¦êªº¦æ¬°¬É¡A¨Ì¦¹¤À³Î¦¨ n +1 ­ÓÀÉ¡C³o¨Ç¸û¤pªºÀɮצWºÙ¹w³]¬° xx00...xx99¡A³Ì¦h¥i¤À¬° 100­ÓÀɮסA¥H¤è«K¨Ï¥ÎªÌ³B²z¡C

²Ó¸Ôªº¤À³Î³B²z¦p¤U¡G

xx00 ±qÀÉ®×file ªº³Ì«eºÝ¨ì§t¦³ arg1 ªº¦æ¬°¤î¡]¤£¥]
§t arg1 ©Ò¦bªº¦æ¡^¡C
xx01 ±qÀÉ®×file ¤¤§t arg1 ªº¦æ¶}©l¨ì§t¦³arg2 ªº¦æ¬°
¤î¡]¤£¥]§t arg2 ©Ò¦bªº¦æ¡^¡C
.
.
.
.
.
. ¨ä¾l¨Ì¦¹Ãþ±À¡C
xx98
xx99

¦b¦¹«ü¥O°õ¦æ§¹·|¦L¥X¤À³Î«á¨C­ÓÀɮתº¤j¤p¡A­ì¨ÓªºÀÉ®×file ¤´·|¦s¦b¡Acsplit «ü¥O¤£·|¥D°Ê¥h§R°£¡C

¥Ñ csplit «ü¥O©Ò¤À³ÎªºÀÉ¥i¨Ï¥Î cat«ü¥O±N¤§¦X¨Ö¡A«ì´_¦¨­ì¨ÓªºÀɮסC

¤Þ¼Æ arg1...argn ¥i¥Ñ¤U­±§Î¦¡©Ò²Õ¦¨¡C

/rexp/ ¥H§t¦³ rexp ¬°¤À¹jÂI¡A«Ø¥ßªºÀÉ®×±q¤W¤@¦¸ªº³B²z¦ì¸m¨ì§t¦³ rexp ªº¦æ¬°¤î¡]¤£¥]§t¸Ó¦æ¡^¡C·sªº³B²z¦ì¸mÅܦ¨§t¦³ rexp ªº¦æ¡A¥B¦b¤U¤@­Ó«Ø¥ßªºÀɮפ¤¤~·|¥]§t¶i¨Ó¡A¦¨¬°²Ä¤@¦æ¡C¦b«ü©w¤À¹jÂI®É¥i°t¦X¨Ï¥Î +n¡B-n ¤À§Oªí¥Ü©¹¤U¡]©¹ÀɮקÀºÝ¡^©Î©¹¤W¡]©¹Àɮ׫eºÝ¡^­Y¤z¦æ¬°¤À¹jÂI¡A¨Ò¦p¡G/lesson/-2 ªí¥Ü¥H lesson ©Ò¦bªº¦æ©¹¤W 2 ¦æ¤~¬O¤À¹jÂI¡]¨Ï¥Î +n¡B-n ®É¤£¥i¦³¥ô¦óªÅ¥Õ¤¶©ó/rexp/ ¤§¶¡¡^¡C
% rexp % ¥\¯à»P /rexp/ ´X¥G¬Û¦P¡A¦ý¤£·|«Ø¥ßÀɮסC¾A¥Î©ó¸õ¹L¬Y¤@¬q¸ê®Æ¤£¤©³B²z®É¡C
lnno «Ø¥ßªºÀɮ׬O±q¤W¦¸³B²zªº¦ì¸m¨ì file ¤¤ªº²Ä lnno¦æ¬°¤î¡]¤£¥]§t²Ä lnno ¦æ¡^¡A¦Ó·sªº³B²z¦ì¸mÅܦ¨²Ä lnno ¦æ¡C
{ num } ­«½Æªº¦¸¼Æ¡C

­Y {num} ¬O¦b rexp ¤§«á¡Aªí¥Ü­n­«½Æ´M§ä¥]§t¦³ rexp ¦æ num ¦¸¼Æ«á¤~¬O¤À¹jÂI¡C

¦p /at/ {10} ¬Oªí¥Ü­«½Æ 10 ¦¸¥H¹J¨ì§t¦³ atªº¦æ°µ¬°¤À¹jÂI¡C­Y¬° /at/+3 {10} «hªí¥Ü­«½Æ 10¦¸¥H¹J¨ì§t¦³ at ªº¦æ¤§«áªº²Ä 3 ¦æ¬°¤À¹jÂI¡C­Y num ¬O¦b lnno ¤§«á¡Aªí¥Ü¨C¹j lnno ¦æ°µ¬°¤À¹jÂI¡AÁ`¦@¦A­«½Æ num ¦¸¡A¦p 20 {3} ªí¥Ü¬O¥H²Ä 20¡B40¡B60¡B80 ¦æ¬°¤À¹jÂI¡C

­YÀÉ®× file ¬O '-' ¦r¤¸®É¡A«h±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-s¡]silent¡^

¦b¥¿±`±¡§Î¤U¡Acsplit ·|¦L¥X¤À³Î«á¨C­Ó¤pÀɮתº¤j¤p¡]¥H¦r¤¸¬°³æ¦ì¡^¡C­Y¨Ï¥Î¤F -s ¿ï¶µ¡A«h¥i¨Ïµ²ªG¤£·|¦L¥X¡C

-k¡]keep¡^

¦b¥¿±`±¡§Î¤U¡Acsplit ·|¦b¹J¨ì¿ù»~«á±N¤w¤À³Î§¹¦¨ªº¤pÀɮקR°£¡A¦Ó¨Ï¥Î³o­Ó¿ï¶µ«á¥i¨Ï¨ä«O¯d¡C

-f prefix

«ü©w¤À³Î«á¤pÀɮתº¦WºÙ¡Cµ²ªG¬° prefix 00... prefix¡A­YµL¦¹³]©w«h¥H¹w³]­È xx00...xxn¡C

¡i½d¨Ò¡j

1. ³]©w 2 ­Ó¤À¹jÂI«á±N¤@ÀɮפÀ¦¨ 3 ³¡¥÷¡G

csplit -f data paper /chapter2/ /chapter3/

°õ¦æ§¹«á±N·|²£¥Í 3 ­ÓÀɮסA¤À§O¬O¡G

  1. ÀÉ®× data00¡A¤º®e¥]§t paper Àɮ׳̫eºÝ¨ì chapter2©Ò¦bªº¦æ¬°¤î¡]¤£¥]§t¸Ó¦æ¡^¡C
  2. ÀÉ®× data01 ¤º®e¥]§t chapter2 ªº¦æ¬°²Ä¤@¦æ¨ìchapter3 ©Ò¦bªº¦æ¬°¤î¡]¤£¥]§t¸Ó¦æ¡^¡C
  3. ÀÉ®× data02 ¤º®e¥]§t chapter3 ªº¦æ¨ìÀÉ®× paperªº§ÀºÝ¡C

¦b paper Àɮפ¤¡A§t¦³ chapter2¡Bchapter3 ¦r¦êªº¦æ¥²¶·«ö·Ó¥ý«áªº¦¸§Ç¡C

2. ¥H«ü©w¦æ¼Æ¬°¤À¹jÂI¡G

csplit paper 50 100 200

¦]µL«ü©w¿é¥XªºÀɦW¡A¬G¥H 'xx' ¬°¤À³Î«áÀɦWªº°_ÀY¡C

xx00 ²Ä 1 ¦æ¨ì²Ä 49 ¦æ¡C
xx01 ²Ä 50 ¦æ¨ì²Ä 99 ¦æ¡C
xx02 ²Ä 100 ¦æ¨ì²Ä 199 ¦æ¡C
xx03 ²Ä 200 ¦æ¨ì²Ä paper Àɮתº§ÀºÝ¡C

3. ¦b¤£ª¾¹D³Q³B²zÀɮצæ¼Æ®É¡A±N¤§¤À¦¨ 100 ¦æ¤@³æ¦ìªº¤pÀɮסG

csplit -k paper 100 {19}

paper ³o­ÓÀɮתº¤j¤p¥i¯à¦³¤U¦C¤TºØ±¡§Î¡G

  1. ¤p©ó 2000 ¦æ®É¡AÁöµM­n¨D csplit °õ¦æ 20¦¸¥H¨C 100 ¦æ¬°¤À¹jÂI¡A¦b³B²z«áÁöµM¦³¿ù»~°T®§¥X²{¡A ªí¥Ü¸ÓÀÉ®× paper »P«ü©wªº¤j¤p¤£¦X¡A¦ý¤´¦³¤À³Îªºµ²ªG²£¥Íxx00 ¨ì xx19 ªºÀɮסC
  2. ­è¦n 2000 ¦æ®É¡A«h¥¿±`µ²§ô¡C
  3. ¤j©ó 2000 ¦æ®É¡A«h·|²£¥Í xx00 ¨ì xx20 ªºÀɮסA¦ÓÀÉ®× xx20 ·|¥]§t¨ì paper Àɮתº§ÀºÝ¡C

cut

¡i¥\¯à¡j

±qÀɮפº¨C¦æ¨ú¥X«ü©wªºÄæ¦ì

¡i»yªk¡j

cut -clist [file...]
cut -flist [-dchar] [-s] [file...]

¡i»¡©ú¡j

­Y­n¹ï©ó¤@­ÓÀɮרú¥X¨C¦æªº¯S©w´X­Ó¦r¤¸¡]¥Î -c ¿ï¶µ¡^©Î¬O¨ú¥X¯S©wªºÄæ¦ì¡]¥i¨Ï¥Î -f ¿ï¶µ¡A«ü©wÄæ¦ìªº¤À¹j¦r¤¸¡^¡A¦p¦P¨ú¥XÀɮ׫«ª½ªº¬Y¤@³¡¥÷¡A¦b¨Ï¥Î®É¥²¶·±q -c ¡B-f ¿ï¶µ¿ï¾Ü¤@­Ó¡C

¿é¥Xªºµ²ªG¥i¥Ñ¨Ï¥ÎªÌ¦b list ¤Þ¼Æ¤¤³]©w¡A¦p¡G'c1¡A2¡A3¡A4'¬O¨ú¥X¨C¦æªº²Ä 1¡B2¡B3 ¤Î²Ä 4 ­Ó¦r¤¸¡A©Î¬O¨Ï¥Î 'c1-4' ¤]¥i¥Nªí¬Û¦Pªº¥\¯à¡C¦b³o­Ó¨Ò¤l¤¤ÁÙ¦³­Ó§ó²µuªºªí¥Üªk¬O 'c-4'¡A§Y¬O±q¨C¦æªº³Ì«eºÝ¨ì²Ä 4 ­Ó¦r¤¸¡]'c40-' ¬Oªí¥Ü±q²Ä40­Ó¦r¤¸¶}©l¨ì³Ì«á¤@­Ó¦r¤¸¬°½d³ò¡^¡C

Äæ¦ì¶¡ªº¹w³]¤À¹j²Å¸¹¬O¥H¸õ®æ¦r¤¸¨Ó°Ï§O¦UÄæ¦ì¡A¦ý¨Ï¥ÎªÌ¥i¥H¨Ï¥Î¿ï¶µ -d «ü©w¡A¦p '-d:' ¬O¥H«_¸¹ ':' °µ¬°Äæ¦ì¤À¹jªº¦r¤¸¡C¦bµLµ¹¤©ÀɮצWºÙ©Î¬Oµ¹¤© '-' ¦r¤¸®É¡A¬Oªí¥Ü±q¼Ð·Ç¿é¤J¤¤Åª¨ú¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-c list

¨C¦æ¨ú¥Xªº³æ¦ì¬O¦r¤¸¡A¦p '-c1-20' ¬Oªí¥Ü¨C¦æªº«e 20 ­Ó¦r¤¸¡C¦b¾ã­Ó¿ï¶µ -c list ¤¤¤£¥i¦³¥ô¦óªÅ¥Õªº¦r¤¸¡C

-f list

¨C¦æ¨ú¥Xªº³æ¦ì¬OÄæ¦ì¡A¦p -f3¡A5 ¬Oªí¥Ü¨C¦æªº²Ä 3 Äæ¤Î²Ä 5 Äæ¡A­Y¸Ó¦æ¤¤¤£¥]§tÄæ¦ì¤À¹j²Å¸¹®É¡A«h·|¾ã¦æ¦L¥X¡A¦Ó¤£¥[¥H³B²z¡C

-d char

³]©wÄæ¦ì¤À¹j²Å¸¹¡A¦p '-d/' ªí¥Ü¥H°£¸¹ '/' ¤À¹j¨C­ÓÄæ¦ì¡C­Y­n¨Ï¥ÎªÅ¥Õ©Î¬O¹ï shell ¨ã¦³¯S®í·N¸qªº¦r¤¸®É¡AÀ³¥H¤Þ¸¹¥]§t¡C

¨Ò¦p¨Ï¥ÎªÅ¥Õ¦r¤¸®É¶·¨Ì¤U­±ªº®æ¦¡¡G

-d" "

-s

­Õ­Y¸Ó¦æµLÄæ¦ì¤À¹j²Å¸¹¡A«h¸Ó¦æ¸õ¹L¤£¦L¥X¡]­ì¨Óªº¹w³]±¡§Î¬O±N¾ã¦æ¦L¥X¡^¡C

¡i½d¨Ò¡j

1. ±NÀɮפ¤ªº²Ä 40 ­Ó¦r¤¸«á¦L¥X¡G

cut -c40- personnel

µL½×¨ä¤º®e¬°¦ó¡A¸Ó«ü¥O·|±NÀÉ®× personnel ¤¤¨C¦æªº²Ä 40 ­Ó¦r¤¸¶}©l¦L¥X¡C

2. ¥u±N¸ê®ÆÀɤ¤ªº²Ä 1¡B5 ­ÓÄæ¦ì¦L¥X¡G

cut -f1¡A5 personnel

°²³] personnel ³o­ÓÀɮפ¤¦UÄæ¦ì¤w¨Ï¥Î¸õ®æ¦r¤¸¤À¹j¡A«h±N¥i±o¨ì¥¿±`ªºµ²ªG¡C­Y¹J¨ì¨S¥]§t¸õ®æ¦r¤¸ªº¦æ®É¡A·|±N¦æ¦L¥X¦ÓµL¥ô¦ó§ó§ï¡A©Î¬O¨Ï¥ÎªÌ¥i¥[¤J -s ¿ï¶µ¡A¨Ï¨S¥]§t¤À¹j²Å¸¹ªº¦æ¤£¦L¥X¡C

diff¡]differential¡^

¡i¥\¯à¡j

¤ñ¸û¤G­ÓÀɮתº¤£¦P³B

¡i»yªk¡j

diff [-bitw] [-c|-e|-f|-h|-n] filename1 filename2

diff [-bitw] [-C number ] filename1 filename2

diff [-bitw] [-D string ] filename1 filename2

diff [-bitw] [-c|-e|-f|-h|-n] [-l] [-r] [-s] [-S name ] directory1 directory2

¡i»¡©ú¡j

diff «ü¥O¥i«ü¥X­n¦p¦ó­×§ï¤~¯à¨Ï¤G­Ó¸ê®ÆÀɤ@­P¡C¥H ed ½s¿èµ{¦¡ªº script ¤¤ªº¼W¥[¡B§R°£©Î¨ú¥N¤è¦¡»¡©ú¡A¦p¡G

n1 a n3¡An4

n1¡An2 d n3

n1¡An2 c n3¡An4

¥i¨Ïfilename1 ­×§ï¦¨ filename2¡Cn ¬O«ü¦æ¼Æ¡A­Y n1 µ¥©ó n2 ©Î n3 µ¥©ón4 ®É¥i¥u¥Î 1 ­Ó¼Æ¦rªí¥Ü¡C ¦b­×§ïªºµ²ªG«á¥X²{ªº '>' ¤Î '<' ²Å¸¹¡A¤À§O¥Nªí filename1 ¤Î filename2 ¦³Åܰʪº¸ê®Æ¡C

­Y¬OÀÉ®× filename1 ©Î filename2 ¬O '-' ¦r¤¸¡A«h¥Nªí±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

­YÀÉ®× filename1¡]filename2¡^¬O­Ó¥Ø¿ý¦WºÙ¡A«h¬O«ü¸Ó¥Ø¿ý ¤º¨ú¥X»P filename2¡]filename1¡^ÀɦW¬Û¦PªºÀɮסC¨Ò¦p¡G

diff/usr/eric listing

/usr/eric ¬O­Ó¥Ø¿ý¡A¦Ó listing ¬O¤@­ÓÀɮסAªí¥ÜÀÉ®× filename1 ¬O«ü /usr/eric/listing¡A¦ÓÀÉ®× filename2 «h¬O²{¦æ¥Ø¿ý¤Uªº listing ÀɮסC

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-b¡]blank¡^

¹ï¨C¦æ§ÀºÝªºªÅ¥Õ¦r¤¸¤£¤©¤ñ¸û¡C

-i¡]ignore¡^

±N¤j¤p¼gªº¦r¥Àµø¬°¬Û¦P¡C

-t¡]tab¡^

¿é¥X®É·|±N¸õ®æ¦r¤¸¡]tab¡^ÂX®i¦¨ªÅ¥Õ¦r¤¸¡]space¡^¡C

-w¡]whitespace¡^

©¿²¤©Ò¦³ªºªÅ¥Õ¦r¤¸©M¸õ®æ¦r¤¸¡C

¤U­±ªº¿ï¶µ¥u¯à¾Ü¤@¨Ï¥Î¡G

-c

¿é¥X®É·|¥ý¦L¥X filename1¡Bfilename2 Àɮתº«Ø¥ß®É¶¡¡C¹ï©ó filename1 ¤¤³Q§R°£ªº¦æ·|¥H '-' ¼Ð¥Ü¡F·s¼W¨ì filename2 ªº¦æ·|¥H '+' ¼Ð¥Ü¡F¦³§ïÅܪº¦æ«h¬O¥H '!' ¼Ð¥Ü¡C

-C number

¦P -c ¿ï¶µ¡A·|²£¥Í¬Û²§¤Î¬Û¦Pªº¦Cªí¥H¤Înumber ¦æªº¥»¤å¡C

-e¡]ed¡^

²£¥Í ed «ü¥Oªº script ©R¥O a¡Bc ¤Î d¡A¤¹³\±q filename1 ²£¥Í filename2¡C

-f

¥H¬Û¤Ïªº¶¶§Ç¡A²£¥ÍÃþ¦ü©ó ed «ü¥O¤Wªº script ©R¥O¡A¦ýµLªk¨Ï¥Î©ó ed «ü¥O¤W¡C

-h¡]half-heart¡^

¥H§Ö³tªº¤è¦¡³B²z¤ñ¸û¡A¥u¯à³B²z§ïÅܤ£¤jªºÀɮסA¦ý¥i¾A¥Î©óµL­­¤jªºÀɮסC¦¹¿ï¶µ¤£¥i»P -e¡B-f ¿ï¶µ¦P®É¨Ï¥Î¡C

-n

¦P -e ¿ï¶µ¡A¦ý·|­pºâ´¡¤J¡B§R°£ªº¦æ¼Æ¡C

-D string

¥HÃþ¦ü C »y¨¥ªº«e¸m³B²zµ{¦¡ªº¤è¦¡²£¥Í filename1¡Bfilename2 Àɮתººî¦Xª©¥»¡C­Y©w¸q¤F string ¦r¦ê«h¬Û·í©ó²£¥Ífilename2¡A§_«h²£¥Í filename1¡C

¤U­±ªº¿ï¶µ¬O¥Î¦b¤ñ¸û¥Ø¿ý®É¡G

-l¡]long¡^

¥Hªø®æ¦¡¿é¥X¡C

¦b¨Ï¥Î diff «ü¥O«e¡A¤å¦rÀÉÀ³¥H pr «ü¥O³B²z¡C

-r¡]recursive¡^

­n¨D diff «ü¥O¥H»¼°j¤è¦¡³B²z¦b¤l¥Ø¿ý¤U¦WºÙ¬Û¦PªºÀɮסA¨Ã±N¤G¥Ø¿ý¤ºªºÀɮצWºÙ°µ¤@¤ñ¸û¡A¦p¨º¨ÇÀÉ®×¥u¦s¦b filename1 ¥Ø¿ý¤Î filename2 ¥Ø¿ý¤U¡C

-s¡]same¡^

­n¨D¦b¤G­ÓÀɮפº®e§¹¥þ¬Û¦P®É²£¥Í°T®§¡C

-S name¡]start¡^

±q¥Ø¿ý¤¤¦WºÙ¬° name ªºÀɮ׶}©l¤ñ¸û¡Cname¦WºÙ¥H«eªºÀɮפ£¤ñ¸û¤º®e¡C

¡¹µù¡G¿ï¶µ -i¡B-t¡B-w¡B-c¡B-C¡B-n¡B-D¡B-l¡B-r¡B-s¡B-S¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i¶Ç¦^­È¡j

0 ¡Ð ¤ñ¸ûªºµ²ªG¬Û¦P¡C
1 ¡Ð ¤ñ¸ûªºµ²ªG¤£¦P¡C
2 ¡Ð ¦³¿ù»~²£¥Í¡C

¡i½d¨Ò¡j

1. ¤ñ¸û¤G­ÓÀɮתº¤£¦P³B¡G

$ cat file1
Before we start our tour today of the United states
Senate¡Alet's review how a bill is introduced to Congress.
Some specialized vocabulary is used to describe the
process¡Abut I'll be defining these words as we go along.
$ cat file2
Before we start our tour today of the United states
Some specialized vocabulary is used to describe the
process
$ diff file1 file2
2d1
< Senate¡Alet's review how a bill is introduced to Congress.
4c3
< process¡Abut I'll be defining these words as we go along.
---
> process

±q¥H¤W¤ñ¸ûªº¿é¥Xµ²ªG¤¤¥i¬Ý¥X¡A'2d1' ªí¥Ü¥i±N²Ä¤@­ÓÀɮתº²Ä 2 ¦æ§R°£¦Ó»P²Ä¤G­ÓÀɮ׬ۦP¡A'4c3' ªí¥Ü¥i±N²Ä¤@­ÓÀɮתº²Ä 4 ¦æ¥H²Ä¤G­ÓÀɮתº²Ä 3 ¦æ¨ú¥N¡A³Ì«á¥i±N file1 Àɮתº¤º®eÂà´«¦¨ file2 ÀɮסC¦b¤ñ¸ûªº»¡©ú«áÁÙ¦³§ïÅܪº¤º®e¡A'<' ²Å¸¹¬O²Ä¤@­ÓÀɮרü¼vÅTªº¦æ¡A'>' ²Å¸¹¬O²Ä¤G­ÓÀɮרü¼vÅTªº¦æ¡C

2. ¦L¥X¸û¸Ô²Óªº¤ñ¸ûµ²ªG¡G

$ diff -c file1 file2
*** file1 Sun Nov 1 19:31:10 1992
--- file2 Sun Nov 1 19:31:12 1992
***************
*** 1¡A4 ****
Before we start our tour today of the United states
- Senate¡Alet's review how a bill is introduced to Congress.
Some specialized vocabulary is used to describe the
! process¡Abut I'll be defining these words as we go along.
--- 1¡A3 ----
Before we start our tour today of the United states
Some specialized vocabulary is used to describe the
! process

¤W­±¬O¼W¥[ -c ¿ï¶µ«áªº¿é¥Xµ²ªG¡A¥B·|¦L¥X¤G­ÓÀɮתº¦WºÙ©M«Ø¥ß®É¶¡¡A¥H¤Î¤G­ÓÀɮתº¥þ³¡¤º®e¡A¨Ã¦b¨C­ÓÀɮפº¦³®t²§ªº¦æ«eºÝ¥[¤W¼Ð¥Ü²Å¸¹¡C

dircmp¡]directory comparison¡^

¡i¥\¯à¡j

¹ï¤G­Ó¥Ø¿ý¤UªºÀɮ׶i¦æ¤ñ¸û

¡i»yªk¡j

dircmp [-d] [-s] [-wn ] dir1 dir2

¡i»¡©ú¡j

dircmp «ü¥O·|¹ï«ü©wªº¤G­Ó¥Ø¿ý¤UªºÀɮ׶i¦æ¤ñ¸û¡A¨Ã±Nµ²ªG¾ã²z«á¦L¥X¡C³oµ²ªG¥]§t¤F¦³¨º¨ÇÀɮ׶Ȧs¦b©ó dir1 ©Î dir2ªº¥Ø¿ý¤U¡A¥H¤Î¦³¨º¨Ç¬O¦WºÙ¡B¤º®e³£¬Û¦P¥H¤Î¥u¦³¦WºÙ¬Û¦P¦Ó¤º®e«o¤£¦PªºÀɮסC

¦b¨Sµ¹¤©¥ô¦ó¿ï¶µªº±¡§Î¤U¡Adircmp «ü¥O¹ï©ó¤G­Ó¥Ø¿ý¤UÀɦW¬Û¦P¡B¤º®e«o¤£¦PªºÀɮר䣷|»¡©ú¤º®e¤£¦P¤§³B¡A­Y­n¨D»¡©ú¤º®eªº¤£¦P³B¡A«hÀ³µ¹¤© -d ¿ï¶µ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-d¡]diff¡^

¹ï©ó¦PÀɦW¦Ó¤º®e¤£¦PªºÀɮ׶i¦æ¸Ô²Óªº¤ñ¸û¡A¨Ã¥H diff «ü¥Oªº¿é¥X®æ¦¡¦L¥X¦p¦ó¤~¯à§ó§ï¬°¬Û¦Pªº¤º®e¡C

-s¡]silent¡^

¹ï©ó§¹¥þ¬Û¦PªºÀɮפ£²£¥Í¥ô¦ó°T®§¡C

-wn¡]width¡^

§ïÅÜ¿é¥X¦æªº¼e«×¬°n ­Ó¦r¤¸¡A¹w³]ªº­È¬° 72 ­Ó¦r¤¸¡C

¡¹µù¡G¿ï¶µ -w ¬O¦b SVR3 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. ¤ñ¸û¤G­Ó¥Ø¿ý¡G

$ ls -l direc1 direc2
direc1:
total 6
-rw-r--r-- 1 eric other 42 Nov 1 07:24 spring
-rw-r--r-- 1 eric other 84 Nov 1 06:13 summer
-rw-r--r-- 1 eric other 88 Nov 1 07:17 winter
direc2:
total 6
-rw-r--r-- 1 eric other 56 Nov 1 07:18 autumn
-rw-r--r-- 1 eric other 42 Nov 1 07:18 spring
-rw-r--r-- 1 eric other 84 Nov 1 07:28 summer
$ dircmp direc1 direc2
Nov 1 07:31 1992 direc1 only and direc2 only Page 1
./winter

./autumn

Nov 1 07:31 1992 Comparison of direc1 direc2 Page 1
directory
different ./spring
same ./summer

¦b³o­Ó¦L¥Xªºµ²ªG¤¤­º¥ý¬O¦³ 1 ­ÓÀÉ®× winter ¥u¦s¦b©ó direc1 ³o­Ó¥Ø¿ý¤U¡A¥H¤Î 1 ­ÓÀÉ®× autumn ¥u¦s¦b©ó direc2 ³o­Ó¥Ø¿ý¤U¡C±µµÛªº¬O«ü¥X¤G­Ó¥Ø¿ý¤U¬Ò¦s¦bªºÀɮסA¦³ÀÉ®× same ¬O¤º®e§¹¥þ¬Û¦P¡A¦ÓÀÉ®× spring ªº¤º®e«h¤£¦P¡C

2. ¹ï©ó¤G­Ó¥Ø¿ý¤UªºÀɮ׸ԲӤñ¸û¨ä¤º®e¡G

$ dircmp -s -d direc1 direc2
Nov 1 07:33 1992 direc1 only and direc2 only Page 1
./winter ./autumn
Nov 1 07:33 1992 Comparison of direc1 direc2 Page 1
different ./spring
Nov 1 07:33 1992 diff of ./spring in direc1 and direc2 Page 1
2c2
< aba
---
> abandoned

¦b«ü©wªº direc1¡Bdirec2 ¤G­Ó¥Ø¿ý¤Uªº spring Àɮפº®e¤£¦P¡C¥Ñ©ó¨Ï¥Î¿ï¶µ -s¡A¨ÏÀɦW¤º®e¬Û¦PªºÀÉ®×µL¥ô¦ó°T®§¥X²{¡C¦Ó¿ï¶µ -d «h¨ÏÀɦW¬Û¦P¥B¤º®e¤£¦PªºÀÉ®×·|¥H diff «ü¥Oªº¿é¥X®æ¦¡¦L¥X¡C

file

¡i¥\¯à¡j

ÀˬdÀɮתººØÃþ

¡i»yªk¡j

file [-h] [-m mfile] [-f ffile] arg...
file [-h] [-m mfile] -f ffile
file -c [-m mfile]

¡i»¡©ú¡j

file «ü¥O¥i§i¶D§AÀɮ׬OÄݩ󨺤@ºØÃþ§O¡C

arg ¬O³QÀˬdªºÀɮצWºÙ¡]¥i¨Ï¥Î¸U¥Î¦r¤¸¡^¡A­Y arg ¬O­Ó¤å¦rÀɮסA«h file «ü¥O·|¥hÀˬd«e­± 512 ­Ó¦r¤¸¡AµM«á¥h¡u²q´ú¡v¬O¨ººØµ{¦¡»y¨¥¡F­Y arg ¬O­Ó¥i°õ¦æÀÉ¡A«h file «ü¥O·|¦L¥X¬O¨º­Óª©¥»¡F­Y arg ¬O­Ó²Å¸¹³s±µ«h·|Àˬd²Å¸¹³s±µ©Ò°Ñ¦Ò¨ìªºÀɮסC

file «ü¥O¦b§PÂ_ÀɮתººØÃþ¬O¨Ì¾Ú /etc/magic ³o­ÓÀɮתº¸ê®Æ¨Ó§PÂ_¡C¨Ï¥ÎªÌ¥i¦b -m ¿ï¶µ«á«ü©w¨Ì¾Ú¨º­ÓÀɮתº¤º®e°µ¬°§PÂ_¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-c¡]check¡^

Àˬd /etc/magic ³o­ÓÀɮשΥΨӧPÂ_¤£¦PºØÃþªºÀɮצb®æ¦¡¤W¬O§_¦³¿ù¡C

-f ffile

ffile¬O­Ó¤å¦rÀÉ¡A¤º®e¬°¨º¨ÇÀÉ®×­n³QÀˬd¡C

-h

¤£³B²z²Å¸¹³s±µÀÉ¡A­Y¦³Àɮ׬°²Å¸¹³s±µ«h¶È¦L¥X³s±µ¨ì¨º­ÓÀɮצӤ£·|¥hÀˬdÀɮתº¤º®e¡C

-m mfile¡]magic¡^

¨Ï¥Î mfile ³o­ÓÀÉ®×´À¥N /etc/magic °µ¬°§PÂ_Àɮ׺ØÃþªº¨Ì¾Ú¡C

¡¹µù¡G¿ï¶µ -h ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. Àˬd²{¦æ¥Ø¿ý¤U©Ò¦³ÀɮתººØÃþ¡G

$ file *
autumn: English text
check: commands text
file.1: ascii text
pen: ELF 32-bit LSB executable 80386 Version 1
season: directory
space.c: English text
spring: ascii text
summer: English text
time: empty file
winter: ascii text

2. Àˬd¦b data ³o­ÓÀɮפ¤¦U­ÓÀɦW©ÒÄݪººØÃþ¡G

$ cat data
pen
season
time
check
$ file -f data
pen: ELF 32-bit LSB executable 80386 Version 1
season: directory
time: empty file
check: commands text

data ¬O­Ó¤å¦rÀÉ¡A¤º®e¥]§t¤@¨ÇÀɮתº¦WºÙ¡Afile «ü¥O·|¥h¨ú¥X³o¨ÇÀɮתº¦WºÙ°µ¬°³QÀˬdªºÀɮצWºÙ¡C

find¡]find file¡^

¡i¥\¯à¡j

§ä´M²Å¦X¯S©w±ø¥óªºÀÉ®×

¡i»yªk¡j

find path-name-list expression

¡i»¡©ú¡jfind «ü¥O·|±q«ü©wªº¥Ø¿ý¤U¶}©l§ä´M©Ò»Ý­nªºÀɮסA§ä´Mªº½d³ò¬O¥H»¼°j¤è¦¡¥]¬A¸Ó¥Ø¿ý¤UªºÀɮפΩҦ³¤l¥Ø¿ý¤ºªºÀɮסCpath-name-list ¬O«ü©w¥Ø¿ýªº¦WºÙ¡A¥i¥Ñ¦h­Ó¥Ø¿ý²Õ¦¨¡A¨ä¶¡¥HªÅ¥Õ¦r¤¸¤À¹j¡A­Y­n§ä´Mªº¥Ø¿ý¬O±q²{¦æ¤u§@¥Ø¿ý¤U¶}©l¡A«h¥i¨Ï¥Î '.' ªí¥Ü¡F­Õ­Y¬O±q®Ú¥Ø¿ý¶}©l«h¨Ï¥Î '/' ªí¥Ü¡Cexpression ¬O¥Î¨Ó»¡©ú§ä´Mªº±ø¥ó¡A¥i¨Ï¥Î¥¦¨Ó³]©w´M§äªºÀɮ׮ɶ¡¡B¤é´Á«¬ºAµ¥¬ÛÃöªº¸ê®Æ¡C

¤U­±¬OÃö©óexpression ¸û¬°¸Ô²Óªº¤¶²Ð¡A¨ä¤¤¿ï¶µ¤ºªº n ¬° 10 ¶i¦ìªº¾ã¼Æ¡C

+ n ªí¥Ü¤j©ón¡C
- n ªí¥Ü¤p©ó n¡C
   n ¤£±a¥¿­t¸¹ªº n «hªí¥Ü­è¦n¬° n¡C

¿ï¶µªº¨Ï¥Î¥i°t¦XÅÞ¿è¹Bºâ and¡Bor¡Bnot µ¥ªº²Õ¦X¡A¥[¥HÆF¬¡¹B¥Î¡CÅÞ¿è¹Bºâªº¨Ï¥Î¦p¤U¡G

not¡G¦b¿ï¶µªº«eºÝ¨Ï¥Î '!' ²Å¸¹¡C

¨Ò¦p¡G! -links 1 ªí¥Ü§ä´M³s±µ¼Æ¤£¬° 1 ªºÀɮסC

and¡G³sÄòµ¹¤©¿ï¶µ¡A¤£»Ý¯S§O»¡©ú¡C

¨Ò¦p¡G-name 'project*' -mtime -7 ªí¥Ü­n¨D§ä´MªºÀɮצWºÙ¥²¶·¬O¥H project ¦r¦ê¬°°_©l¡A¥B¦b¤C¤Ñ¤º´¿³Q­×§ï¹LªºÀɮסC

or¡G¨Ï¥Î -o ¨Ó³s±µ¦U­Ó¿ï¶µ¡C

¨Ò¦p¡G-name 'project*' -o -name 'data' ªí¥Ü§ä´MªºÀÉ®×¥²¶·²Å¦X¦WºÙ¥H project¦r¦ê¬°°_©l¡A©Î¬O¦WºÙ¬O dataªºÀɮסC

¥t¥~¬A¸¹¤]¥i»²§UÅÞ¿è¹Bºâªº¨Ï¥Î¡A¦ý¬O¬°¤F­nÁקK shell µ{¦¡¤£¥¿½Tªº³B²z¡A¬G¥²¶·­n¦b¥ª¥k¬A¸¹«e¥[¤W '\'¦r¤¸¡A¨Ò¦p¡G

\¡]-name leaf -o -name stem \¡^

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-name pattern

³]©w­n§ä´MªºÀɮצWºÙ¡A­Y¨Ï¥Î¸U¥Î¦r¤¸«h¶·¨Ï¥Î¤Þ¸¹¡]½Ð°Ñ¦Ò½d¨Ò¡^¡C

-perm [-] onum

³]©w§ä´M¤¹³\Åv»P©Ò«ü©wªº onum¬Û¦PªºÀɮסC onum ¬O¥H 8¶i¦ìªº¼Æ¦r»¡©ú¤¹³\Åvªº±¡§Î¡C­Y¦b onum «e¥[¤W­t¸¹ '-' «hªí¥Ü¥u­n¨D»P onum ªº³]©w³¡¤À¬Û¦P§Y¥i¡C¨Ò¦p onum ¬° -040 ¬Oªí¥Ü­Y¸s¨Ï¥ÎªÌ¦³Åª¨úªºÅv¤O´N²Å¦X±ø¥ó¦Ó¤£¥²ºÞ¨ä¾lªº±ø¥ó¡C

-size n [c]

³]©w§ä´MªºÀɮפj¤p¡Cn ¬Oªí¥Ü°Ï¶ô¼Æ¥Ø¡]¤@­Ó°Ï¶ô block ¬O«ü 512 ­Ó bytes¡^¡C­Y n ¤§«á±µ 'c'¡A«hªí¥Ü n ¬°¦r¤¸¼Æ¡C

-atime n

³]©w­n§ä´MªºÀɮ׬O¦b«ü©wªº¤Ñ¼Æ¤º©Î¥~´¿³Q¦s¨ú¹Lªº¡Cpath-name-list ¤¤ªº¥Ø¿ý·|³Q find «ü¥O­×§ï¥¦ªº¦s¨ú®É¶¡¡C

-mtime n

³]©w­n§ä´MªºÀɮ׬O¦b«ü©wªº¤Ñ¼Æ¤º©Î¥~´¿³Q­×§ï¹Lªº¡C

-ctime n

³]©w­n§ä´MªºÀɮ׬O¦b«ü©wªº¤Ñ¼Æ¤º©Î¥~´¿³Q­×§ï¹LÀɮת¬ºA¡C

-exec cmd

³]©w­n§ä´MªºÀɮ׬O²Å¦X cmd ©R¥O¶Ç¦^­È¬° 0 ªºª¬ºA¡]ªí¥Ü¦¨¥\ªºµ²§ô¡^¡Ccmd ¤Þ¼Æªº§ÀºÝ­n¥[¤W '\;'¤~ªí¥Üµ²§ô¡A¥t¥~¡A¦b cmd ¦æ¤¤ªº '{}' ²Å¸¹ªí¥Ü²{¦æ¥Ø¿ý¡C

-ok cmd

¦P -exec cmd¡A¦ý -ok cmd ¦b°õ¦æ cmd¤§«e·|¥ý¦L¥X cmdªº¦r¦ê¡A±µµÛ·|­n¨D¨Ï¥ÎªÌ¿é¤J 'y' ½T»{«á¤~¥h³B²z¡C

-print

³]©w¬°¦L¥X¸ô®|¦WºÙ¤ÎÀɮצWºÙ¡C

-newer file

³]©w­n§ä´MªºÀɮתº­×§ï®É¶¡¬O¸ûÀÉ®× file ±ßªº¡C

-depth

³]©w­n§ä´MªºÀɮ׬O¥H¼h¦¸¤è¦¡¡A¥ý¬O«ü©w¥Ø¿ý¤U©Ò¦³ªºÀɮסAµM«á¤~¬O¥Ø¿ý¥»¨­¡C

-mount

³]©w­n§ä´MªºÀɮ׬O¦b«ü©w¥Ø¿ý¤UªºÀɮסC­YµLµ¹¤©¥Ø¿ý¦WºÙ¡A«h«ü²{¦æ³B²z¥Ø¿ý¤UªºÀɮסC

-local¡]express¡^

³]©w­n§ä´MªºÀɮ׬O¹ê»Ú¦b¥»¦a¨t²Î¤Wªº¡C

³]©w­n§ä´MªºÀɮ׬O²Å¦X¬A¸¹¤º express ªº¹Bºâ¦¡¡C

-type c

³]©w­n§ä´MªºÀɮ׬O²Å¦X©Ò«ü©wªºÀɮ׫¬¦¡c¡Ac ¥i¬°¤U­±¦r¤¸¤§¤@¡G

b °Ï¶ô¯S®íÀÉ

c ¦r¤¸¯S®íÀÉ

d ¥Ø¿ý

l ²Å¸¹³s±µÀÉ

p pipe ÀÉ¡]fifo¡^

f ¤@¯ëÀÉ®×

-follow

¦b³]©w­n§ä´MªºÀɮ׮ɡA²Å¸¹³s±µÀÉ©Ò³s±µ¨ìªºÀÉ®×¥ç·|³Q³B²z¡C¨Ò¦p²Å¸¹³s±µÀÉ©M³s±µÀÉ©Ò³s±µªºÀɮצUÄݩ󤣦Pªº¸s¡A¨Ï¥Î¦¹¿ï¶µ«á«h¬O¹ï³Q³s±µÀɮתº³]©w°µÀˬd¡C

-links n

³]©w­n§ä´M³s±µ¼Æ¬° n ªºÀɮסC

-user uname

³]©w­n§ä´MÄÝ©ó uname ¨Ï¥ÎªÌ©Ò¾Ö¦³ªºÀɮסC­Y uname ¬O¼Æ¦r«hªí¥Ü¨Ï¥ÎªÌªºÃѧO½X¡C

-nouser

³]©w¬°§ä´MªºÀɮפ£¬O¦b /etc/passwd Àɮפ¤©Ò¦C¨Ï¥ÎªÌ©Ò¾Ö¦³ªº¡C

-group gname

³]©w­n§ä´MÄÝ©ó gname ¸s©Ò¾Ö¦³ªºÀɮסC­Y gname ¬O¼Æ¦r«hªí¥Ü¸sÃѧO½X¡C

-nogroup

³]©w­n§ä´MªºÀɮפ£¬O¦b /etc/group Àɮפ¤©Ò¦Cªº¸s©Ò¾Ö¦³¡C

-fstype type

³]©w­n§ä´MªºÀɮשÒÄݤ§Àɮרt²Î«¬ºA¬°type¡C

-inum n

³]©w­n§ä´MÀɮתº i-node ¸¹½X¬On¡C

-prune

±N pattern ©Ò«ü©wªº¥Ø¿ý¸õ¹L¤£´M§ä¡C

¡¹µù¡G¿ï¶µ -mount¡B-local ¬O¦b SVR3 ª©¥»®É¤~¶}©l´£¨Ñ¡C¿ï¶µ -follow¡B-nouser¡B-nogroup¡B-fstype¡B-inum¡B-prune ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. §ä¥X«ü©wªºÀɮצWºÙ¡G

find . -name project* -print

±N²{¦æ¤u§@¥Ø¿ý¤U¦X©ó±ø¥óªºÀɮצL¥X¡C¿ï¶µ -name ­n¨D§ä´MÀɮצWºÙ¥Ñ project ¦r¦ê¬°°_©lªºÀÉ¡F¿ï¶µ -print«h·|¨Ï¤§¦L¥X¡]­Y¬O¿ï¶µªº¦¸§Ç¤£¦P¡A¨Ò¦p¡G

find . -print -name project*

«hµ²ªG·|§¹¥þ¬Û²§¡A³o©R¥Oªºµ²ªG·|±N©Ò¦³ªºÀɮצWºÙ¦L¥X¡^¡A­Y path-name-list ¬O '.' ¦r¤¸¡A¥Nªíªº¬O²{¦æ¤u§@¥Ø¿ý¡C

2. §ä¥X§t¦³«ü©w³s±µ¼ÆªºÀɮסG

find / ! -link 1 -type f -print

­n¨D find «ü¥O±q®Ú¥Ø¿ý¶}©l¡A¦L¥X©Ò¦³³s±µ¼Æ¤j©ó 1 ªº¤@¯ëÀɮתº¦WºÙ¡C

path-name-list ¬O '/' ¦r¤¸¡A¥Nªí®Ú¥Ø¿ý¡C

3. §ä´M«ü©w®É¶¡½d³ò¤ºªºÀɮסG

find . -mtime +365 -exec rm {} \;

±N²{¦æ¤u§@¥Ø¿ý¤U¶W¹L 365 ¤Ñ¥H¤W¡A¨Ã¥B¥¼´¿­×§ï¹LªºÀɮקR°£¡C

4. ¦L¥X²Å¦X¯S©w±ø¥óªºÀɮסG

find . -name civic -prune -o -print

±N¥Ø«e¥Ø¿ý¤U©Ò¦³ªºÀɮצWºÙ¡]°£¤F civic ¥Ø¿ý¤UªºÀɮס^¦L¥X¡C

5. ¦L¥X²Å¦X¯S©w±ø¥óªºÀɮסG

find . \¡] -name 'today' -o -name 'day*' \¡^-print

¥u­nÀɮצWºÙ¬O today ©Î¬O¥H day ¦r¦ê¬°°_©lªºÀɮצWºÙ¬Ò²Å¦X±ø¥ó¡C

fsck

¡i¥\¯à¡j

Àɮרt²Îª¬ºA³ø§i»P¿ù»~À˭סC

¡i»yªk¡j

fsck [-F FSType] [-V] [-m] [spe ...]
fsck [-F FSType] [-V] [cur_opt] [-o spe_opt] [spe ...]

¡i»¡©ú¡j

fsck·|ÀˬdÀɮרt²Îªº¤@­P©Ê (consist-ency) ¡A°²©l¦³¤£¤@­Pªº±¡ªp¥X²{¡Afsck ·|´£¥Ü¨Ï¥ÎªÌ¡A¨Ã¸ß°Ý¬O§_­n±N¦³°ÝÃDªº³¡¥÷§ó¥¿¡A¾ã­Ó¹Lµ{¬O¥H¤@°Ý¤@µªªº¤è¦¡¶i¦æªº¡C¦pªG¥Î¤á¹ï fsck ªº´M°Ý¨S¦³¦^À³¡A«h¨t²Îªº¹w³]³B¸m°Ê§@¬°¤£±Ä¨ú¥ô¦ó¦æ°Ê¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-F

«ü¦W­n "fsck" ªºÀɮרt²ÎÃþ§O¡A¦pªG¥¼«ü©w¥H¨t²ÎÀÉ®× "/etc/vfstab" ªº¤º®e¬°·Ç¡A¹w©w­È¬° s5¡C

µù¡G¨t²ÎÀÉ®× "/etc/vfstab" °O¸üµÛ·í¨t²Î¸ü¤J
(boot) ®É­n±¾¤W¨º¨ÇÀɮרt²Î¡C

-V Åã¥Ü©Ò«ü©w¤§¼h¯Å¡]¥H-c¿ï¶µ«ü©w¡^ªº±Æµ{ªí¡]schduling table¡^¡C
¥»¿ï¶µ¥Î©ó¬dÅç«ü¥O¤§°õ¦æ (verify& validate) ¡C
cur_opt ³o­Ó¿ï¶µ¥u¦³¦bÀɮרt²Î¬° s5 ®É¤~¥Î±o¤W¡C
-o ¦¹¿ï¶µ«á±µªº¬O¯S©wÀɮרt²Î©Ò±MÄݪº¤@¤z¦¸¿ï¶µ¡C
spe_opt ³o¬O«ü¤@³s¦ê¥Î³r¸¹¤À¶}ªº¦¸¿ï¶µ¡A¸Ó¿ï¶µ¦] -F ©Ò«ü©wªºÀɮרt²Î¤£¤@¦Ó¦³²§¡A spe_opt ªº­È¥²¶·¸ò¦b -o ¿ï¶µ¤§«á¡C
spe ³o­Ó¿ï¶µ«ü¦W¥Ø¼ÐÀɮרt²Î©Ò¦bªº³]³ÆÀɬ°¦r¤¸³]³ÆÁÙ¬O°Ï¶ô³]³Æ¡Cfsck ­Y­n³B²z°Ï¶ô³]³Æ¡A«h¥²¶·¥ý±N¨ä¸Ñ±¾ (unmount) ¡C
-m Àˬd¦ý¤£§@­×¥¿¡C

¡i½d¨Ò¡j

#fsck -F ufs /dev/dsk/hd0
/dev/dsk/hd0
/dev/dsk/hd0 File System: / Volume: i3861
/dev/dsk/hd0 ** Phase 1 - Check Blocks and Sizes
/dev/dsk/hd0 ** Phase 2 - Check Pathnames
/dev/dsk/hd0 ** Phase 3 - Check Connectivity
/dev/dsk/hd0 ** Phase 4 - Check Reference Counts
/dev/dsk/hd0 ** Phase 5 - Check Fress List
/dev/dsk/hd0 1438 files 19872 blocks 6701 free
#

¡i¸É¥R»¡©ú¡j

fsck ¦b SVR4.xª©°µ¤F«Ü¤jªº­×¥¿¡A3.x ª©©Ò´£¨Ñªº³\¦h¿ï¶µ¦p-y¡B-t¡B-n¡B-q µ¥³£¤w¤£¦A¤ä´©¡Afsck ¤§©Ò¦³¦p¦¹¥¨´T§ïÅܪº­ì¦]¬O UNIX ¦Û SVR4.0 ª©°_¤ä´©¦hºØÀɮרt²Î¦p ufs¡Bsfs¡Bvxfs µ¥¡C¨ä¥¦¦³Ãþ¦üª¬ªpªº«ü¥OÁÙ¦³ mkfs¡Blabelit µ¥¡C

join

¡i¥\¯à¡j

µ²¦X¤G­ÓÀɮסA¤GªÌ¶¡¶·¦³¦@¦Pªº³sµ²Äæ¦ì

¡i»yªk¡j

join [options ] file1 file2

¡i»¡©ú¡j

¥i±N¤G­ÓÀɮ׶¡¤¬¬Û¹ïÀ³ªº¦æ³sµ²¦b¤@°_¡A³sµ²Äæ¦ì¦h¬O¦b¨C¦æªº²Ä¤@­ÓÄæ¦ì¡A¥B¤GÀɮתºÄæ¦ì¤º®e¤w¨Ì·Ó ASCII ªº¤j¤p±Æ§Ç ¹L¡]¥Ñ¤p¨ì¤j¡^¡A­Y file1 ¬O '-' ²Å¸¹¡A«h·|±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

µ²¦X«áªºµ²ªG­º¥ý¬O¦L¥X³sµ²Äæ¦ì¡A«á­±¬O²Ä¤@­ÓÀɮתº¨ä¾l³¡¥÷¡A¦A¨Ó¬O²Ä¤G­ÓÀɮתº¨ä¾l³¡¥÷¡A­Y¤GÀɶ¡µL¦@¦PªºÄæ¦ì«hµLµ²ªG¿é¥X¡C

¿é¤J®É¡AÀɮפ¤ªºÄæ¦ì¬O¥HªÅ¥Õ¡]space¡^¡B¸õ®æ¡]tab¡^¡B©Î´«¦æ¡]new-line¡^µ¥¦r¤¸°µ¬°¤À¹j²Å¸¹¡A¿é¥X®É«h¥HªÅ¥Õ¦r¤¸¤À¹j¦UÄæ¦ì¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-an

¦b filen ¤¤­YµL¥i¥H¤¬¬Û¹ïÀ³ªº¦æ®É¡A¤]·|¦L¥X¸Ó¦æ¡C

-e s¡]empty¡^

¥Î¦r¦ê s ¨ú¥NªÅ¥Õªº¸ê®ÆÄæ¡]¥Ñ -o ¿ï¶µ©Ò²£¥Íªº¡^¡C

-jn m¡]join¡^

¨Ï¥Îfilen ªº²Äm ­ÓÄæ¦ì°µ¬°³sµ²Äæ¡C­Yn ¬Ù²¤¡A«h¨Ï¥Î¨C­ÓÀɪº²Ä m ­ÓÄæ¦ì¡A¦ÓÄæ¦ìªº½s¸¹¬O¥Ñ¥ª¦Ó¥k¡A±q1¶}©l­pºâ¡C

-o list¡]output¡^

¨Ì¾Ú list ªº«ü©w¦Ó±N¿é¥Xµ²ªG­«·s½s±Æ¡A¦b list ¤¤¥i¬°¦h­Ó n.m §Î¦¡ªº¶µ¥Ø¡A¨C¤@­Ó¶µ¥Ø¶¡¬O¥HªÅ¥Õ°Ï¹j¡Cn ¬O«üÀÉ®×½s¸¹¡Am ¬OÄæ¦ì½s¸¹¡C³sµ²Äæ°£«D¦³«ü©w§_«h¤£·|¦L¥X¡C

-tc

«ü©w¦r¤¸ c °µ¬°¿é¤J¤Î¿é¥XÄæ¦ì¶¡ªº¤À¹j¦r¤¸¡C

¡i½d¨Ò¡j

ÀÉ®× school

anne chicago
bean duke
peter utah

ÀÉ®× score

anne 3.0 1680 540
bean 2.7 1710 530
peter 3.2 1960 600
simon 2.8 1660 510

1. ¥H³sµ²Äæµ²¦X¤G­ÓÀɮסG

join school score

­YµL¯S§O«ü©w³sµ²Ä檺¦ì¸m¡A«h¹w³]¬°¨C¦æªº²Ä¤@­ÓÄæ¦ì¡C¤GÀɦ³¬Û¦P³sµ²Ä檺¦³ anne¡Bbean¡Bpeter ¤T¦æ¡C

¿é¥Xªºµ²ªG¦p¤U¡G

anne chicago 3.0 1680 540
bean duke 2.7 1710 530
peter utah 3.2 1960 600

2. «ü©wÄæ¦ìªºÅã¥Ü¡G

join -o 1.2 2.4 school score

³o­Ó¨Ò¤l¤¤¡A§Ú­Ì«ü©w¤F²Ä¤@­ÓÀÉ®× school ¤¤ªº²Ä¤GÄæ¡]1.2¡^¤Î²Ä¤G­ÓÀÉ®× score¤¤ªº²Ä¥|Äæ¡]2.4¡^¬°¿é¥Xµ²ªG¡C

chicago 540
duke 530
utah 600

labelit

¡i¥\¯à¡j

µ¹¤©Àɮרt²Î¼ÐÅÒ¡C

¡i»yªk¡j

labelit [-F FSType] [-V] [cur_opt] [-o spe_opt] spe

¡i»¡©ú¡j

labelit¥D­nªº¥\¯à¬Oµ¹¥¼±¾¤W(unmount-ed) ªººÏºÐÀɮרt²Î¤@­Ó¦WºÙ¡A©Î¬O¬°¤@­Ó«þ¨©¨ìºÏ±a¤WªºÀɮרt²Î©R¦W¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

spe «üªº¬O¥Ø¼Ð³]³Æªº¦WºÙ¡A¥¦¥i¥H¬O¤@
­ÓºÏ±a¡A¤]¥i¥H¬O¤@­ÓµwºÐªº¤À°Ï¡C
-F «ü¦W­n "labelit"ªºÀɮרt²ÎÃþ§O¡C
-V ¥»¿ï¶µ¥Î©ó¬dÅç«ü¥O¤§°õ¦æ (verify & validate) ¡F¨Ï¥Î -V ¿ï¶µ®É¡A«ü¥O¨ä¹ê¨Ã¥¼¯u¥¿°õ¦æ¡A¥¦¥u¬O±N°õ¦æ®Éªºª¬ªp¦^À³ (echo) ¥X¨Ó¡C

µù¡G¦³ÂI¹³ DOS ªº chkdsk«ü¥O¡A¦b¥¦¨S¥[ /F °Ñ¼Æ®É¡A¸Ó«ü¥O¤£·|¯u¥¿­×§ïºÏºÐ¤Wªº°ÝÃD¡C

-o ¦¹¿ï¶µ«á±µªº¬O¯S©wÀɮרt²Î©Ò±MÄÝ
ªº¤@¤z¦¸¿ï¶µ¡C
cur_opt ³o­Ó¿ï¶µ¥u¦³¦bÀɮרt²Î¬° s5 ®É¤~
¥Î±o¤W¡C

¡i½d¨Ò¡j

#/etc/labelit -F ufs /dev/rst517

pack pcat unpack

¡i¥\¯à¡j

¹ïÀɮ׶i¦æÀ£ÁY¡BÅã¥ÜÀ£ÁYÀɪº¸ê®Æ©Î¸ÑÀ£ÁY¡C

¡i»yªk¡j

pack [-] [-f] name ...
pcat name ...
unpack name ...

¡i»¡©ú¡j

pack¡Bpcat¡B unpack ¤T­Ó«ü¥O¥i¹ïÀɮפÀ§O¶i¦æÀ£ÁY¡BÅã¥ÜÀ£ÁYÀɪº¸ê®Æ©Î¸ÑÀ£ÁY¡A³o¤@¨t¦Cªº«ü¥O±Ä¥Î Huffman ½s½Xªk«h¡A¥i§â¤å¦r©ÊªºÀÉ®×À£ÁY¦¨­ì¨Ó¤j¤pªº 60% ¨ì 75% ¥ª¥k¡C
¨Ï¥ÎªÌ¥u­nµ¹¤©ÀɮצWºÙ name¡Apack «ü¥O§Y·|±N¤§À£ÁY¨Ã¥H·sªºÀɮרÓÀx¦s¡A³o­Ó·sÀɮתºªþ¥[ÀɦW¬° .z ¡A¨Ã¥B¨ä¦s¨ú¼Ò¦¡¡B­×§ï¤é´Á¥H¤Î¾Ö¦³ªÌµ¥¸ê®Æ³£·|ºû«ù¤£ÅÜ¡C¦Ó­ì¨ÓªºÀɮ׫h·|¦Û°Ê§R°£¡C¦Ó unpack «ü¥O«h·|¦Û°Ê±NÀɮצWºÙ¬° name.z ªºÀ£ÁYÀÉ®×Á٭쬰ÀɮצWºÙ¬° name ªºÀÉ
®×¡A¨äÀɮתº¬ÛÃö¸ê°T¥ç¤£·|¦³©ÒÅÜ°Ê¡C

pcat«ü¥O¬O±N¤w³QÀ£ÁY¹LªºÀÉ®×°µÁ٭쪺³B²z¡A¨Ã±Nµ²ªG°e¨ì±q¼Ð·Ç¿é¥X¡C¨Ï¥ÎªÌ¥i±NÁÙ­ì«áªºµ²ªG¦s¤J«ü©wªºÀɮפ¤¡C¦Ó­ì¨ÓªºÀ£ÁYÀɤ´·|³Q«O¯d¡A¤£·|¦³¥ô¦óÅÜ°Ê¡]¦b¨Ï¥Î pcat «ü¥O®É¡A¥i¤£«ü©wªþ¥[ÀɦW¡A¦Ó¦Û°Ê³]©w¬° .z ¡^¡C

¨Ï¥ÎªÌ¦b¨Ï¥Î pack «ü¥O®É¡A­Y¦³µLªkÀ£ÁYªº±¡§Î®É¡A¥i¯àµo¥Íªº¿ù»~ª¬ªp¦p¤U¡G

¡E«ü©wªºÀɮפw³QÀ£ÁY¹L¡C
¡E«ü©wªºÀɮצWºÙ¶W¹L 12 ­Ó¦r¤¸¡A¦ÓµLªkªþ¥[¬° .z ªºÀɮצWºÙ¡C
¡E«ü©wªºÀɮ׬°¤@³sµ²ÀÉ¡C
¡E«ü©wªºÀɮ׬O¤@¥Ø¿ý§ÎºAªºÀɮסC
¡EµLªk¶}±Ò¸ÓÀÉ¡A¥i¯à¬OµLŪ¨úÅv¡C
¡EºÏºÐªÅ¶¡¤£¨¬¡A¦ÓµLªk²£¥ÍÀ£ÁYÀɮסC
¡Ename.zªºÀɮפw¦s¦b¡A¬GµLªk²£¥ÍÀ£ÁYÀɮסC
¡Ename.z ªºÀÉ®×µLªk²£¥Í¡C
¡E¦bÀ£ÁY¹Lµ{¤¤²£¥Í¤F¿é¥X©Î¿é¤Jªº¿ù»~¡C

¨Ï¥ÎªÌ¦b¨Ï¥Îpcat«ü¥O®É¡A­Y¦³µLªk¸ÑÀ£ÁYªº±¡§Î®É¡A¥i¯àµo¥Íªº¿ù»~ª¬ªp¦p¤U¡G

¡E«ü©wªºÀɮצWºÙ¶W¹L 12 ­Ó¦r¤¸¡]¤£§t.z ¡^¡C
¡EµLªk¶}±Ò¸ÓÀÉ¡A¥i¯àµLŪ¨úÅv¡C
¡E¨Ï¥ÎªÌ©Ò«ü©wªºÀɮסA¨ä¤º®e¨Ã«D¥Ñpack «ü©w©Ò²£¥Í¡C

¨Ï¥ÎªÌ¦b¨Ï¥Îunpack«ü¥O®É¡A­Y¦³µLªk³B²zªº±¡§Î®É¡A¥i¯àµo¥Íªº¿ù»~ª¬ªp¦p¤U¡G

¡E¹w³]ªº¸ÑÀ£ÁYªºÀɮצWºÙ¤w¦s¦b¡A¬GµLªk¶i¦æ¸ÑÀ£ÁYªº³B²z¡C
¡EºÏºÐªÅ¶¡¤£¨¬¡A¬GµLªk²£¥Í¸ÑÀ£ÁYªºÀɮסC

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-f (force) ±j­¢­n¨Dpack«ü¥O±N«ü©wªºÀÉ®×name¶i¦æÀ£ÁYªº³B²z¡A¦Ó¤£¦Ò¼{®Ä²vªº°ÝÃD
- ±NÀ£ÁY®Éªº¬ÛÃö¸ê°T±q¼Ð·Ç¿é¥X¦L¥X¡C

¡i¶Ç¦^­È¡j

¶Ç¦^­È¬O¨Ï¥ÎªÌ©Ò«ü©wªºÀɮפ¤¡A¦³¦h¤Ö­ÓÀÉ®×µLªk³QÀ£ÁY©Î¸ÑÀ£ÁY¡C¥¿±`ªº¶Ç¦^­È¬° 0¡A¥Nªí¥þ³¡³£³Q¦¨¥\ªºÀ£ÁY©Î¸ÑÀ£ÁY¡C

¡i½d¨Ò¡j

1.À£ÁYÀÉ®×

pack dictionary

2.¸ÑÀ£ÁY

unpack dictionary

split

¡i¥\¯à¡j

±NÀɮפÀ³Î¦¨¸û¤pªºÀÉ®×

¡i»yªk¡j

split [-n] [ file [name]]

¡i»¡©ú¡j

±q file ÀÉ®×Ū¨ú¸ê®Æ«á¥H¨C 1000 ¦æ¡]¹w³]­È¡^¬°³æ¦ì¼g¨ì¤pÀɮפW¡C¦Ó¤pÀɮתº¦WºÙ¹w³]¥H x ¦r¤¸¬°°_ÀY¡A¤§«áºò±µµÛ¬O¤G­ÓÅܰʪº­^¤å¦r¥À¡A¥H aa¡Bab¡Bac µ¥¨Ì§ÇÅܤƤ@ª½¨ì zz ¬°¤î¡AÁ`­p¥i¹F 26¡Ñ26¡×676 ­ÓÀɮסC

­Y¨Ï¥Î name ªº¤Þ¼Æ¡A«h¥Hname ¬°ÀɮצWºÙªº°_ÀY¡]¥i¨ú¥N x¦r¤¸¡^¡A¨äªø«×­­¨î¤£¥i¶W¹L¨t²Î©Ò³]©wªº³ÌªøÀɮצWºÙ´î 2¡A¥H²Å¦XÀɦWªº³W©w¡C­YµLµ¹¤© file ªº¦WºÙ©Î¨Ï¥Î '-' ¦r¤¸¡A«h±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-n

split «ü¥O¬O¥H 1000 ¦æ¬°³æ¦ì¨Ó¤À³ÎÀÉ®×file¡A¦ý¥ç¥i«ü©w¥H n ¦æ¬°³æ¦ì¡C

¡i½d¨Ò¡j

1. ±N¤@¸ê®ÆÀɤÀ³Î¦¨­Y¤z­Ó¤pÀɮסG

split namelist part

¥H 1000 ¦æ¡]¹w³]­È¡^¬°³æ¦ì¡A±N namelist ³o­Ó¸ê®ÆÀɶi¦æ¤À³Î¡Aµ²ªG±N·|²£¥Í partaa¡Bpartab µ¥¤pÀÉ¡A³Ì«á¤@­Ó¤pÀÉ®×¥i¯à¤£¨¬ 1000 ¦æ¡A¦ý¤´·|¦s¦b¡C

2. ±N¤@¸ê®ÆÀɤÀ³Î¦¨«ü©wªº¦æ¼Æ¤j¤p¡G

split -50 namelist

°õ¦æ§¹²¦«á¡AÀÉ®× namelist ªº¤º®e·|¥H¨C 50 ¦æ¬°¤@­ÓÀɮסA¦]µL«ü©w¤À³Î«áªºÀɮצWºÙ¡A¬G¥H 'x' ¦r¤¸¬°­º¡A©ñ¸m©ó xaa¡Bxab¡Bxac µ¥ÀɮפW

tar¡]tape file archiver¡^

¡i¥\¯à¡j

±NÀÉ®×¥H«O¦sÀɤ覡±qºÏ±a©ÎºÏºÐ¤ù¤¤¨ú¥X©Î¦s©ñ

¡i»yªk¡j

/usr/sbin/tar -c[vwfbL[#s]] device block files...
/usr/sbin/tar -r[vwfbL[#s]] device block files...
/usr/sbin/tar -t[vfL[#s]] device [files...]
/usr/sbin/tar -u[vwfbL[#s]] device block files...
/usr/sbin/tar -x[lmovwfL[#s]] device [files...]

¡i»¡©ú¡j

tar «ü¥O¥i±NÀÉ®×¥H«O¦sÀɤ覡¦s©ñ¨ìºÏ©ÊÀx¦sÅé¡A¦pºÏ±a©ÎºÏºÐ¤ù¡A©Î¬O¤Ï¤è¦V±NÀɮרú¦^¡C

¦bÀx¦s®É­Y«ü©wªº¬O¥Ø¿ý¦WºÙ¡A«h·|¦Û°Ê±N¸Ó¥Ø¿ý¤U©Ò¦³ªºÀÉ®×¥H¤Î¨C¤@­Ó¤l¥Ø¿ýªº¤º®e¡]¥H»¼°j¤è¦¡³B²z¡^¦s©ñ¨ìºÏ©ÊÀx¦sÅé¤W¡A¥t¥~¹ï©ó«O¦sÀɤºªºÀÉ®×¥i¶i¦æ§R°£©Î§ó·sªº°Ê§@¡C¦b¿ï¶µ¤¤¦Ü¤Ö­n¦³¤@­Ó¥D¿ï¶µ c¡Br¡Bt¡Bu ©Î x¡A¥t¥~¥i°t¦X»²§U¿ï¶µ v¡Bw¡Bf¡Bb ©Î # ¤~¯à¥¿±`ªº³B²z¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-c¡]create¡^

«Ø¥ß·sªº«O¦sÀÉ¡A·|±qºÏ©ÊÀx¦sÅ骺«eºÝ¶}©l¼g¤J¸ê®Æ¦Ó«D·s¼W¨ì§ÀºÝ¡A­Y¦³¬Û¦P¦WºÙªº«O¦sÀÉ«h·|³Q§R°£¡C

-r¡]replace¡^

·s¼W¨ì«O¦sÀɪº§ÀºÝ¡A¦Ó¤£·|­«·s«Ø¥ß«O¦sÀÉ¡C

-t¡]table¡^

¦C¥X«O¦sÀÉ©Ò¥]§tªºÀɮצWºÙ¡C­YµL«ü©w files «h¦C¥X«O¦sÀɤº©Ò¦³ÀɮצWºÙ¡C¦¹¿ï¶µªº¿é¥XÃþ¦ü ls -l «ü¥Oªº¿é¥Xµ²ªG¡C

-u¡]update¡^

§ó·sÀɮסA±N·sª©¥»ªº files ¨ú¥N¦b«O¦sÀɤºÂª©¥»ªºÀɮסA­Y«O¦sÀɤºµL¦¹ÀÉ«h·s¼W¨ì§ÀºÝ¡C

-x¡]extract¡^

±N«ü©wªºÀɮצWºÙ files ±q«O¦sÀɨú¥X¡C­YµL«ü©w files «h·|±N«O¦sÀɤº©Ò¦³ªºÀÉ®×¥H»¼°j¤è¦¡¨ú¥X¡C­Y files »P«O¦sÀɤºªº¥Ø¿ý¦WºÙ¬Û¦P¡A«h·|±N¸Ó¥Ø¿ý¤U©Ò¦³ªºÀɮפΨC¤@­Ó¤l¥Ø¿ýªº¤º®e¥H»¼°j¤è¦¡¨ú¥X¡C­Y¦b«O¦sÀɤW¦³³\¦h­Ó¬Û¦P¦WºÙªºÀÉ®×files¡A«h³Ì«á¤@­Ó¨ú¥Xªº·|±N¸û¦­¨ú¥XªºÀɮקR°£¡C©Ò¨ú¥XªºÀɮסA¨ä¾Ö¦³ªÌ¡B­×§ï®É¶¡¡BÀɮתº¼Ò¦¡µ¥³£¤£ÅÜ¡C

¡@

»²§U¿ï¶µ

»¡ ©ú

#s

¥i­n¨D¨Ï¥Î«ü©wªººÏ±a¾÷¦Ó¤£¬O¥Î¹w³]­È¡A©Î¬O¨Ï¥Î -f ¿ï¶µ¥ç¥i§ïÅܺϱa¾÷ªº¦WºÙ¡C¹w³]ºÏ±a¾÷¦WºÙ¬° /dev/mt/0m ©Î/dev/mt0 # ¬O«üºÏ±a¾÷ªº½s¸¹¡As¬°ºÏ±a¾÷ªº³t«×¡]¥i¥Î l¡Bm ©Î h ¦r¤¸«ü©w¬°§C³t¡B¤¤³t©Î°ª³t¡^¡C

v¡]verbose¡^

tar «ü¥O¤u§@®É¤£·|¦L¥X¥ô¦ó°T®§¡A¦ý­Y¨Ï¥Î¦¹¿ï¶µ®É¡A«h¦b³B²z¨C­ÓÀɮ׮ɷ|¦L¥X¥D¿ï¶µ¦WºÙ¤ÎÀɦW¡C­Y°t¦X -t ¿ï¶µ¡A·|¦L¥X¸û¦hªº¬ÛÃö°T®§¡C

w¡]what¡^

tar «ü¥O¨C¦¸³B²zÀɮ׫e·|¥ý­n¨D¨Ï¥ÎªÌ½T»{¬O§_¥¿½T¡A­Y¨Ï¥ÎªÌ¿é¤J 'y'¡Atar «ü¥O¤~·|³B²z¸ÓÀɮסA¨ä¥L«hµø¬°§_¡C

f¡]file¡^

¨Ï¥Î¤Þ¼Æ device °µ¬°¿é¥Xªº³]³Æ¡A¦Ó«D±Ä¥Î¤º³¡¹w³]ªº /dev/mt/0m ©Î /dev/mt0¡C­Y¤Þ¼Æ device ¬O '-' ¦r¤¸¡A«h¨Ì¥D¿ï¶µªº¨Ï¥Î¦Ó±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ©Î¬O±N¸ê®Æ¼g¨ì¼Ð·Ç¿é¥X¡C¦]¦¹ tar «ü¥O¥i¨Ï¥Î¦b pipe ¤¤¡C

b¡]blocking factor¡^

¦¹¿ï¶µ«á±µ¤@­Ó¼Æ¦r¡A¥Î¨Ó¹ïºÏ±a¾÷³]©w¨C¦¸¦s¨ú®Éªº°Ï¶ô¡]block¡^¼Æ¥Ø¡C¹w³]­È¬° 1¡A³Ì¤j¥i³]¨ì 20¡C¦¹¿ï¶µ¶È¯à¹ïºÏ±a¾÷³]©w¥B­Y¬O¨Ï¥Î -x ©Î -t ¥D¿ï¶µ®É¡A°Ï¶ôªº¤j¤p·|¦Û°Ê¿ï©w¡C

l¡]link¡^

­n¨D tar «ü¥O¦bµLªk³s±µ·sªºÀɮרì«O¦sÀɮɡA²£¥Íĵ§i°T®§¡A­YµL¨Ï¥Î¦¹¿ï¶µ«h¤£·|²£¥Í¥ô¦ó°T®§¡C¦¹¿ï¶µÀ³»P -c¡B-r ©Î -u µ¥¥D¿ï¶µ°t¦X¨Ï¥Î¡C

m¡]modify¡^

¥¿±`±¡§Î¤U¡Atar «ü¥O¦b±q«O¦sÀɨú¥XÀɮ׮ɷ|ºû«ù¸ÓÀɪº­×§ï®É¶¡¡A¦Ó¦¹¿ï¶µ«h¥i­n¨D tar «ü¥O±N­×§ï®É¶¡³]¬°²{¦b¡C

o (ownership¡^

Àɮרú¥X®É·|³]©w¸ÓÀÉ®×¾Ö¦³ªÌªº¨Ï¥ÎªÌÃѧO½X¤Î¸sÃѧO½X©M¨Ï¥Î tar «ü¥Oªº¨Ï¥ÎªÌ¬Û¦P¡C¦¹¿ï¶µ¥u¯à»P -x ¿ï¶µ¦P®É¨Ï¥Î¡C

L¡]follow¡^

¹ï©ó²Å¸¹³s±µÀÉ«h·|³B²z²Å¸¹³s±µ©Ò°Ñ¦Ò¨ìªºÀɮסC

¡¹µù¡G¿ï¶µ #s¬O¦b SVR3 ª©¥»®É¤~¶}©l´£¨Ñ¡C¿ï¶µ -L ¬O¦b SVR4 ª©¥»®É¤~¶}©l´£¨Ñ¡C

¡i½d¨Ò¡j

1. ¦s©ñÀɮפΥؿý¡G

tar -c photo graphic

­Y photo ¬O­ÓÀɮסA¦Ó graphic ¬O­Ó¥Ø¿ý¦WºÙ¡A«h tar«ü¥O·|±N photo ÀɮפΠgraphic¤U©Ò¦³ªºÀɮפΤl¥Ø¿ý³£¦s©ñ¨ì¹w³]ªººÏ©ÊÀx¦sÅé¤W¡C

¦b¨Ï¥Î tar «ü¥O«e¥²¶·¥ý±NºÏ±a©ÎºÏºÐ·Ç³Æ§´·í¡C

2. ·s¼WÀɮרì«O¦sÀÉ¡G

tar -r image

±N image Àɮתþ¥[¨ì«O¦sÀÉ¡C

3. ¦C¥X«O¦sÀɪºÀɮצWºÙ¡G

tar -t

tar -t «ü¥O¥i¥Î¨ÓÀˬd¦b«O¦sÀɤº¤w©ñ¤J¤F¨º¨ÇÀÉ¡C

4. ±q«O¦sÀɨú¥XÀɮסG

tar -xw

±q«O¦sÀɨú¥XÀɮשñ¨ì¥Ø«eªº¤u§@¥Ø¿ý¤U¡A¥Ñ©ó¨Ï¥Î¤F -w ¿ï¶µ¡A¬G¦b¨ú¥Xªº¨C¤@­ÓÀɮ׫e¡A·|­n¨D¨Ï¥ÎªÌ¥ý¿é¤J 'y' ½T»{«á¤~Ä~Äò³B²z¡C

tr¡]translate character¡^

¡i¥\¯à¡j

¦r¤¸Âà´«ªº³B²z

¡i»yªk¡j

tr [-cds] [string1 [string2]]

¡i»¡©ú¡j

tr «ü¥O·|±q¼Ð·Ç¿é¤JŪ¨ú¦r¤¸¡A¸g¹LÂà´«©Î§R°£«á°e¨ì¼Ð·Ç¿é¥X¡A¨Ï¥Î®É¦h·|°t¦X­«·s¾É¦Vªº³B²z¥\¯à¡C¨ú¥Nªº³B²z·|±N¦r¦êstring1 ¤¤§ä´M¨ìªº¦r¤¸¹ïÀ³¨ì¦r¦ê string2 ¤¤¬Û¹ï¦ì¸mªº¦r¤¸¡C¦p tr abcd 1234 ·|±N a ¥H 1 ¨ú¥N¡B¥H b ¥H 2 ¨ú¥Nµ¥¡C­Y string1 ªºªø«×¤j©ó string2¡A«hstring1 ¦h¥Xªº¦r¤¸±N¤£·|¶i¦æÂà´«¡A¨Ò¦ptr jack fly ¬O±N j ¥H f ¨ú¥N¡Ba ¥H l¨ú¥N¡Bc ¥H y ¨ú¥N¡A¦Ó¦r¤¸ k «h¤£·|¥h³B²z¡C­Y string1 ¤¤­n³Q¨ú¥Nªº¦r¤¸´¿¥X²{ 1 ¦¸¥H¤W®É¡A«h¬O¥H³Ì«á¥X²{ªº¦ì¸m°µ¨ú¥N¡A¨Ò¦p tr apple fruit ·|±N p ¦r¤¸¥H u ¦r¤¸¨ú¥N¦Ó¤£¬O¥H r ¦r¤¸¡C

¦b string1¡Bstring2 ¤¤¥i¨Ï¥Î¤U­±ªº®æ¦¡¨Ó«ü©w¦r¤¸ªº½d³ò¡C

[a-z] ¥Nªí ASCII ¤¤ªº¦r¤¸ a ¨ì z ªº¦r¦ê¡C

[a*n] ¥Nªí­«½Æ n ­Ó a¡C

n ­Y¬O 0 ¬°°_©l¡A«hªí¥Ü n ¬O 8 ¶i¦ì¼Æ¦r¡A§_«h¨t²Î¹w³] n ¬O 10¶i¦ì¼Æ¦r¡C

n ªº­È¬O 0 ©Î¬Ù²¤®É¥Nªí³Ì¤j¼Æ¡A¥Î¨Ó»P string1 ¬Û¹ïÀ³¡C

¦r¤¸ '\' «á¥i±µ¹ï shell ¦³¯S§O·N¸qªº¦r¤¸¡A­Y¦r¤¸ '\' «á±µªº¬O 1¡B2 ©Î 3 ­Ó 8 ¶i¦ì¼Æ¦r®É¡A¬O¥Nªí ASCII ½X¡C¦r¤¸ NULL¡]ASCII ½X¬° 0¡^¦b¿é¤J®É´N·|³Q¦Û°Ê§R°£¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-c¡]complements¡^

±N¤£¦b string1 ¤¤¥X²{ªº¦r¤¸µø¬°­n³Q¨ú¥Nªº¦r¤¸¡C

-d¡]delete¡^

§R°£¦b string1 ¤¤¥X²{ªº¦r¤¸¡C

-s¡]squeeze¡^

­Y¦b¿é¥Xªºµ²ªG¤¤¦³¥X²{³sÄòªº¦r¤¸¡A¤S´¿¥X²{¦b¦r¦ê string2 ®É¡A«h¥u¿é¥X¤@­Ó¦r¤¸¡C

¡i½d¨Ò¡j

1. ±N¤p¼g¦r¤¸Âà´«¦¨¤j¼g¦r¤¸¡G

$ cat data
A gallon of ordinary sea water contains about a quarter of a pound of salt.
$ tr "[a-z]" "[A-Z]" <data
A GALLON OF ORDINARY SEA WATER CONTAINS ABOUT A QUARTER OF A POUND OF SALT.

ÀÉ®× data ¤º®e­ì¨Ó¬O¤j¤p¼g¦r¤¸³£¦s¦b¡Atr«ü¥O°õ¦æ«á±N¤p¼g¦r¤¸Âà´«¡A¨Ï a ¦r¤¸¹ïÀ³¨ì A ¦r¤¸¡Bb ¦r¤¸¹ïÀ³¨ì B¦r¤¸µ¥¡A³Ì«áÀÉ®× data ªº¤º®e¬O¥H¤j¼g¤è¦¡¿é¥X¡C

2. ®ø°£«D­^¤å¦r¥Àªº¦r¤¸¡G

tr -c "[a-z] [A-Z]" "[ *]" <letter >letter.new

±q letter ÀÉ®×Ū¨ú¸ê®Æ¡A¸g¹LÂà´««á°e¨ì letter.new ÀɮסCÂà´«ªº³B²z¬O±N«D¤j¤p¼gªº­^¤å¦r¥À¥HªÅ¥Õ¦r¤¸¨ú¥N¡A¿é¥Xªºµ²ªG¥u«O¯d¤j¼g¤Î¤p¼gªº­^¤å¦r¥À¡C¥Ñ©ó¨Ï¥Î -c ¿ï¶µ¡A¦]¦¹ string1 ©Ò¹ïÀ³ªº½d³ò¬O­^¤å¦r¥À¤§¥~ªº¦r¤¸¡A¦Ó¦b string2 ¤¤ªº¦r¦ê«h¥HªÅ¥Õ¦r¤¸¤§«á¥[¤W '*' ¦r¤¸¡A¥H¥Nªí³Ì¤j¼Æ¥ØªºªÅ¥Õ¦r¤¸¡C

3. ®ø°£¿é¤J¸ê®Æ¤¤ªº¼Æ¦r¡G

tr -s "0123456789" "[ *]" <preview

tr «ü¥O·|±qÀÉ®× preview Ū¨ú¸ê®Æ¡A­Y¦³Åª¨ú¨ì¼Æ¦rªº¸ê®Æ¡A«hÂà´«¦¨¤@­ÓªÅ¥Õ¦r¤¸¿é¥X¨ì²×ºÝ¾÷¤W¡C-s ¿ï¶µ¥i¨Ï±o¿é¤Jªº¼Æ¦r 548700 Âà´«¦¨ 1 ­ÓªÅ¥Õ¦r¤¸¡A¦Ó«D¹ïÀ³ªø«×ªºªÅ¥Õ¦r¤¸¡C

umask

¡i¥\¯à¡j

¦b«Ø¥ßÀɮ׮ɡA¨ú®ø³¡¥÷ªº¦s¨úÅv¤O

¡i»yªk¡j

umask [ooo]

¡i»¡©ú¡j

¨C¦¸¨t²Î¦b«Ø¥ßÀɮ׮ɡA·|µ¹¤©¸ÓÀɮצs¨úÅv­­¡A¦pÀɮתº¾Ö¦³ªÌ¡B¸s¡B¨ä¥L¨Ï¥ÎªÌµ¥¤TºØÃþ§OªºÅª¡B¼g¤Î°õ¦æÅv¡]³o¨Ç­­¨î·|¨Ì³B²zµ{§Çªº¤£¦P¦Ó¦³®t²§¡^¡Cumask ªº¥\¯à¬O¦A¥[¥H­­¨î¡A¸g¹L³]©w«á¡A¯àÅý¨Ï¥ÎªÌ©Ò«Ø¥ß¥XªºÀɮצ³¬Û¦P­­¨î¡C

¨Ò¦p¦b¤@­Ó 0666 ªº¦s¨úÅv­­¨î¤U¡]0666ªí¥Ü¨Ï¥ÎªÌ¡B¸s¡B¨ä¥L¨Ï¥ÎªÌ¥iŪ¨ú¤Î¼g¤J¸ê®Æ¡^¡A­Y³]©w¾B¸n¬° 0022¡]ªí¥Ü¤£¤¹³\¸s¥H¤Î¨ä¥L¨Ï¥ÎªÌªº¼g¤JÅv¡^¡A«h²£¥Í¦s¨úÅv­­ªº¥N½X±N·|¬O0644¡A¦¹ªí¥ÜÀÉ®×¾Ö¦³ªÌ¥iŪ¨ú¡B¼g¤J¸ê®Æ¡A¦Ó¸s¤Î¨ä¥L¨Ï¥ÎªÌ¥u¯àŪ¨ú¦ÓµLªk¼g¤J¡C

­Y¦b¤@­Ó 0644 ªº¦s¨úÅv­­¤U¡A¥»¨­¤wµL¼g¤JÅv­­®É¡A³]©w¾B¸n¥ç¬° 0022¡A«h¤£·|¦³¥ô¦ó§ïÅÜÅv­­¡A³o¬O¦]¬° 6¬O¥Ñ 4¡]Ū¡^¤Î 2¡]¼g¡^¤GºØÅv¤O²Õ¦¨¡A¥i±N 2¡]¼g¡^¥h±¼¡A¦Ó 4 ¥»¨­¥u¥Nªí¤@ºØÅv¤O¤£¥]§t 2¡]¼g¡^¡A¬G¤£¯à±q¥¦¥»¨­°£¥h 2¡]¼g¡^ªºÅv¤O¡C

«ü©wªº ooo ¬O¥Ñ 3 ­Ó 8¶i¦ì¼Æ²Õ¦¨¡A¥Ñ¥ª¦Ó¥k¨C¤@¦ì¼Æ¦r¤À§O¥NªíÀɮתº¾Ö¦³ªÌ¡B¸s¡B¨ä¥L¨Ï¥ÎªÌªº¨Ï¥ÎÅv­­¡C¨C­Ó¼Æ¦r¥i¥Ñ1¡B2 ¤Î 4 µ¥¤TºØ¼Æ¦r©Ò¬Û¥[¦Ó¦¨¡C

1 ¥Nªí°õ¦æÅv¡C
2 ¥Nªí¼g¤JÅv¡C
4 ¥NªíŪ¨úÅv¡C

¦pªG 6 ¬Oªí¥Ü 4¡]Ū¨úÅv¡^+2¡]¼g¤JÅv¡^¡Aªí¥Ü¦³¨âºØÅv¤O­­¨î¡A­Y¬Ù²¤ ooo ªº¼Æ¦r¡A«h¬O±N¥Ø«eªº³]©w±¡§Î¦L¥X¡C

¡i½d¨Ò¡j

1. Àˬd¥Ø«eªº¾B¸n¡G

umask
022

8 ¶i¦ì¼Æ 022ªí¥Ü¥H«á²£¥ÍªºÀÉ®×¹ï¨Ï¥ÎªÌªºÅv­­¤£§ïÅÜ¡A¦ý¹ï¸s¤Î¨ä¥L¨Ï¥ÎªÌ³]©w¬°µLªk¼g¤J¡B­×§ï¡C

2. ±N¥H«á©Ò²£¥ÍªºÀɮ׳]©w¦¨¥u¤¹³\¦Û¤vŪ¡B¼g¡A¦Ó¤£¤¹³\¸s¤Î¨ä¥L¨Ï¥ÎªÌ¨Ï¥Î¡G

umask 077

0 ¥NªíµÛ¹ï¦Û¤v¥H«á©Ò²£¥ÍÀɮתº¨Ï¥ÎÅv¤£§ïÅÜ¡A¦ý¹ï¸s¤Î¨ä¥L¨Ï¥ÎªÌ¨ú®ø¤FŪ (4)¡B¼g (2) ¤Î°õ¦æ (1) ªºÅv¤O¡A¥ç§Y©Ò¦³ªºÅv¤O (7) ¬Ò¤£³Q¤¹³\¨Ï¥Î¡C

uniq

¡i¥\¯à¡j

¹ïÀɮ׬ۦPªº¦æ¥h°£¡]¶·¬Û¾F¡^

¡i»yªk¡j

uniq [-udc [+n][-n ]] [input [output ]]

¡i»¡©ú¡j

uniq «ü¥O·|Ū¨ú input Àɮתº¤º®e¡A­Yµo²{¦³¬Û¾Fªº¬Û¦P¦æ¡A«h¥u¿é¥X¤@¦¸¡A¨Ï¸ê®Æªº­«½Æ©Ê´î§C¡C­Y¬O¤G­Ó¬Û¦P¦æ¤¤¶¡³Q¨ä¥Lªº¦æ¤À¹jªº¸Ü¡Auniq «ü¥O±N¤£·|³B²z¦Óµø¬°¤G­Ó¿W¥ßªº¦æ¡C¦]¦¹¡A­Y­n±NÀÉ®×­«½Æªº¦æ´î¨ì³Ì¤Ö¡AÀ³¥ý¨Ï¥Î sort «ü¥O±Æ§Ç«á¦A¨Ï¥Î uniq «ü¥O¡C

¤Þ¼Æ input ¤Î output ¦b¨Ï¥Î®É¡A¤£¥i¦³¬Û¦Pªº¦WºÙ¡A¬Ù²¤ output ÀɦW®É·|¥H¼Ð·Ç¿é¥X¦L¥Xµ²ªG¡A­Y¬O input ¤]¬Ù²¤®É¡A«h±q¼Ð·Ç¿é¤JŪ¨ú¸ê®Æ¡C

¡i¿ï¶µ¡j

¿ï ¶µ

»¡ ©ú

-u

¥u¿é¥X¨º¨Ç¦æ¨S¦³­«½Æ¡A¬O°ß¤@ªº¦æ¡C

-d

¥u¿é¥X¨º¨Ç¦æ¦³­«½Æ¡A¦Ó¤£¿é¥X¨S¦³­«½Æªº¦æ¡]uniq «ü¥Oªº¹w³]­È¬O¨Ï¥Î -ud ¿ï¶µ¡A±N¨S¦³­«½Æ¤Î­«½Æ©Êªº¦æ¦U¦L¥X¤@¦¸¡^¡C

-c¡]count¡^

­n¨D uniq «ü¥O­pºâ¥X¨C¦æ­«½Æªº¦¸¼Æ¡A¦L¦b¨C¦æªº«eºÝ¡A³Ì¤Ö¬O¤@¦¸¡C

-n

¦b§ä´M¬Û¦Pªº¦æ®É¡A·|¥ý¸õ¹L¨C¦æ«eºÝ n­ÓÄæ¦ì¡CÄæ¦ì¬O¥ÑªÅ¥Õ¦r¤¸©Î¸õ®æ¦r¤¸©Ò¤À¹j¡C

+n

¦b§ä´M¬Û¦Pªº¦æ®É¡A¥ý¸õ¹L¨C¦æ«eºÝ n ­Ó¦r¤¸¡C

+n¡B-n ¥i¦P®É¨Ï¥Î¡A¥H«ü©w±q¨ºùض}©l¤ñ¸û¡AÄæ¦ìªº«ü©w·|¥ý³B²z¡AµM«á¤~¬O³B²z«ü©wªº¦r¤¸¦ì¸m¡A¨Ò¦p '-3+6' ªí¥Ü¥ý¸õ¹L 3­ÓÄæ¦ì«á¡A¦A¸õ¹L 6 ­Ó¦r¤¸¤~¬O¶}©l¤ñ¹ïªº¦ì¸m¡C

¡i½d¨Ò¡j

1. §R°£Àɮפ¤­«½Æªº¦æ¡G

uniq namecard namecard.new

¦bnamecard¤¤­Y¦³­«½Æªº³sÄò¦æ¡A«h¥u¿é¥X¤@¦¸¨ì namecard.new ³oÀɮפ¤¡C

2. §ä¥XÀɮפ¤¦³¨º´X¦æ¬Û¦P¡G

uniq -d namecard

¿é¥Xªºµ²ªG±N«ü¥X¦³¨º¨Ç¦æ¬O­«½Æªº¡C

3. «ü©w¶}©l¤ñ¸ûªºÄæ¦ì¡G

uniq -4 namecard

¦b¤ñ¹ï®É¡A¨C¦æ·|¥ý¸õ¹L«e­±4Äæ¡A¤]´N¬O±q²Ä5Äæ¶}©l¤ñ¸û¸ê®Æ¡C