LinuxϵͳµÄShell I/OÖØ¶¨ÏòÏê½â
I/OÖØ¶¨ÏòÏê½â¼°Ó¦ÓÃʵÀý
1¡¢ »ù±¾¸ÅÄÕâÊÇÀí½âºóÃæµÄ֪ʶµÄǰÌᣬÇëÎñ±ØÀí½â£©
a¡¢ I/OÖØ¶¨Ïòͨ³£Óë FDÓйأ¬shellµÄFDͨ³£Îª10¸ö£¬¼´ 0¡«9£»
b¡¢ ³£ÓÃFDÓÐ3¸ö£¬Îª0£¨stdin£¬±ê×¼ÊäÈ룩¡¢1£¨stdout£¬±ê×¼Êä³ö£©¡¢2£¨stderr£¬±ê×¼´íÎóÊä³ö£©£¬Ä¬ÈÏÓëkeyboard¡¢monitor¡¢monitorÓйأ»
c¡¢ Óà < À´¸Ä±ä¶Á½øµÄÊý¾ÝÐŵÀ(stdin)£¬Ê¹Ö®´ÓÖ¸¶¨µÄµµ°¸¶Á½ø£»
d¡¢ Óà > À´¸Ä±äËͳöµÄÊý¾ÝÐŵÀ(stdout, stderr)£¬Ê¹Ö®Êä³öµ½Ö¸¶¨µÄµµ°¸£»
e¡¢ 0 ÊÇ < µÄĬÈÏÖµ£¬Òò´Ë < Óë 0<ÊÇÒ»ÑùµÄ£»Í¬Àí£¬> Óë 1> ÊÇÒ»ÑùµÄ£»
f¡¢ ÔÚIOÖØ¶¨Ïò ÖУ¬stdout Óë stderr µÄ¹ÜµÀ»áÏÈ×¼±¸ºÃ£¬²Å»á´Ó stdin ¶Á½ø×ÊÁÏ£»
g¡¢ ¹ÜµÀ“|”(pipe line):ÉÏÒ»¸öÃüÁîµÄ stdout ½Óµ½ÏÂÒ»¸öÃüÁîµÄ stdin;
h¡¢ tee ÃüÁîÊÇÔÚ²»Ó°ÏìÔ±¾ I/O µÄÇé¿öÏ£¬½« stdout ¸´ÖÆÒ»·Ýµ½µµ°¸È¥;
i¡¢ bash£¨ksh£©Ö´ÐÐÃüÁîµÄ¹ý³Ì£º·ÖÎöÃüÁäÁ¿ÇóÖµ£ÃüÁîÌæ´ú£¨``ºÍ$( )£©£Öض¨Ïò£Í¨Åä·ûÕ¹¿ª£È·¶¨Â·¾¶£Ö´ÐÐÃüÁ
j¡¢ ( ) ½« command group ÖÃÓÚ sub-shell È¥Ö´ÐУ¬Ò²³Æ nested sub-shell£¬ËüÓÐÒ»µã·Ç³£ÖØÒªµÄÌØÐÔÊÇ£º¼Ì³Ð¸¸shellµÄStandard input, output, and error plus any other open file descriptors¡£
k¡¢ exec ÃüÁ³£ÓÃÀ´Ìæ´úµ±Ç° shell ²¢ÖØÐÂÆô¶¯Ò»¸ö shell£¬»»¾ä»°Ëµ£¬²¢Ã»ÓÐÆô¶¯×Ó shell¡£Ê¹ÓÃÕâÒ»ÃüÁîʱÈκÎÏÖÓл·¾³¶¼½«»á±»Çå³ý¡£exec ÔÚ¶ÔÎļþÃèÊö·û½øÐвÙ×÷µÄʱºò£¬Ò²Ö»ÓÐÔÚÕâʱ£¬exec ²»»á¸²¸ÇÄ㵱ǰµÄ shell »·¾³¡£
2¡¢ »ù±¾IO
cmd > file °Ñ stdout ÖØ¶¨Ïòµ½ file ÎļþÖУ»
cmd >> file °Ñ stdout ÖØ¶¨Ïòµ½ file ÎļþÖÐ(×·¼Ó)£»
cmd 1> fiel °Ñ stdout ÖØ¶¨Ïòµ½ file ÎļþÖУ»
cmd > file 2>&1 °Ñ stdout ºÍ stderr Ò»ÆðÖØ¶¨Ïòµ½ file ÎļþÖУ»
cmd 2> file °Ñ stderr ÖØ¶¨Ïòµ½ file ÎļþÖУ»
cmd 2>> file °Ñ stderr ÖØ¶¨Ïòµ½ file ÎļþÖÐ(×·¼Ó)£»
cmd >> file 2>&1 °Ñ stderr ºÍ stderr Ò»ÆðÖØ¶¨Ïòµ½ file ÎļþÖÐ(×·¼Ó)£»
cmd < file >file2 cmd ÃüÁîÒÔ file Îļþ×÷Ϊ stdin£¬ÒÔ file2 Îļþ×÷Ϊ stdout£»
cat <>file ÒÔ¶ÁдµÄ·½Ê½´ò¿ª file£»
cmd < file cmd ÃüÁîÒÔ file Îļþ×÷Ϊ stdin£»
cmd << delimiter Here document£¬´Ó stdin ÖжÁÈ룬ֱÖÁÓöµ½ delimiter ·Ö½ç·û¡£
3¡¢ ½ø½×IO
>&n ʹÓÃϵͳµ÷Óà dup (2) ¸´ÖÆÎ
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
1.¹Ø±ÕÓ뿪ÆôÍøÂ·¶Ë¿Ú£º
¿ªÆô81¶Ë¿Ú£º
iptables -I INPUT -i eth0 -p tcp --dport 81 -j ACCEPT
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j ACCEPT
¹Ø±Õ81¶Ë¿Ú£º
iptables -I INPUT -i eth0 -p tcp --dport 81 -j DROP
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j DROP
2.¹Ø±ÕºÍ¿ªÆôÎïÀí¶Ë¿Ú
UP ......
ORCLEÊý¾Ý¿â±¸·Ý²ßÂÔ
1.ͨ¹ýʹÓÃexpºÍimpÃüÁîʵÏÖÊý¾Ý¿âµ¼³öºÍµ¼Èë¡£
ÓÐÈýÖÖģʽ£º
a. Óû§Ä£Ê½£º µ¼³ö(µ¼Èë)Óû§ËùÓжÔÏóÒÔ¼°¶ÔÏóÖеÄÊý¾Ý£»
b. ±íģʽ£º µ¼³ö(µ¼Èë)Óû§ËùÓбí»òÕßÖ¸¶¨µÄ±í£»
&nb ......
shutdown [options] when [message]
options:¡¡-r ±íÊ¾ÖØÆô£¬-h±íʾϵͳ·þÎñÍ£ÖÍ(halt)ºó£¬Á¢¿Ì¹Ø»ú £¬-f±íʾ¿ìËÙÖØÆô
when£º¡¡ÎªshutdownÖ¸¶¨Ê±¼ä¡£hh:mm£º¾ø¶Ôʱ¼ä£¬hhָСʱ£¬mmÖ¸·ÖÖÓ£»Èç08:30£¬+m:m·ÖÖÓºóÖ´ÐУ¬
now=+0£¬Ò²¾ÍÊÇÁ¢¿ÌÖ´ÐÐ
message£º±íʾϵͳµÄ¹ã²¥ÐÅÏ¢£¬Ò»°ãÌáʾ¸÷¸öÓû§ÏµÍ³¹Ø»ú» ......
[root@nonamelinux ~]# free
total used free shared buffers cached
Mem: 386024 377116 8908 0 21280 155468
-/+ buffers/cache: 200368 185656
Swap: 393552 0 393552
ÏÂÃæÊǶÔÕâЩÊýÖµµÄ½âÊÍ£º
µÚ¶þÐÐ(mem)£º
total:×ܼÆÎïÀíÄÚ´æµÄ´óС¡£
used:ÒÑʹÓöà´ó¡£
free:¿ÉÓÃÓжàÉÙ¡£
Shared:¶à¸ö½ø³Ì¹²ÏíµÄÄÚ ......