Linux Shell±à³Ìstep by step Îı¾Îļþ×îºóÁ½ÐÐÏà¼õ
×÷Õß:fbysss
msn:jameslastchina@hotmail.com
blog:blog.csdn.net/fbysss
ÉùÃ÷£º±¾ÎÄÓÉfbysssÕûÀí±àд£¬×ªÔØÇë×¢Ã÷³ö´¦
¹Ø¼ü×Ö£ºshell±à³Ì
±³¾°
ͬÊÂÇóÖú¡£
ÐèÇó
Ò»¸öÎı¾Îļþ£¬ÒªµÃµ½×îºóÒ»ÐÐÓëµ¹ÊýµÚÒ»ÐÐÏà¼õµÄ½á¹û¡£
²âÊÔÎı¾
#vi test.txt
ÄÚÈÝÈçÏ£º
10
7
9
1
6
½Å±¾
$vi rowSubstract.sh
ÄÚÈÝÈçÏÂ:
#½Å±¾×¢½â£¬ÓÃÓÚÖ¸Ã÷½Å±¾ÀàÐÍÊÇbash¡£ÕâÑù£¬Äܱ£Ö¤²»ÔÚbashµÄ½Å±¾»·¾³£¬Ö´ÐÐҲûÓÐÎÊÌâ¡£
#²é¿´µ±Ç°½Å±¾»·¾³£ºecho $SHELL¡£»òÕß¼òµ¥Ê¹ÓÃpsÃüÁîÒ²¿ÉÒÔ¡£
#ÔÚlinuxÏ£¬ #!/bin/shºÍ #!/bin/bash¼¸ºõÊÇÒ»ÑùµÄ¡£
#!/bin/sh
#²ÎÊý¸öÊý¼ì²é
#ÆäÖУ¬$0ΪÃüÁî±¾Éí£¬$1-$nΪ²ÎÊý£¬$#Ϊ²ÎÊý¸öÊý
#if ºÍ fi³É¶Ô½øÐÐÅжÏ
#ifºóÃæ¡¢[ÓұߺÍ]×ó±ß¶¼±ØÐëÓпոñ£¬then Ç°ÃæÐèÒªÓзֺÅ;
#Èç¹û²»Âú×ãÌõ¼þ£¬·µ»ØÒ»¸ö״̬Â루±ØÐëÔÚ0-255Ö®¼ä£©£¬Ò»°ãÕýÈ·µÄ·µ»Ø0£¬´íÎóµÄ·µ»ØÆäËûÊý×Ö
#ÅжÏÊý×Ö£¬±ØÐëʹÓÃeq ne gt ltµÈÂß¼ÔËËã·û£¬Èç¹ûÊÇ×Ö·û´®£¬ÔòҪʹÓÃ=»òÕß== ,!= ,>= ,<=À´ÅжÏ
if [ $# ne 1 ] ; then
echo 'useage:$0 [filename]'
exit 1
fi
#²ÎÊýÓÐЧÐÔ¼ì²é,×¢Òâ¸Ð̾ºÅ!ǰºó¶¼ÒªÓпոñ£¬±íʾÂ߼ȡ·´¡£-f ±íʾÊÇ·ñ´æÔÚÕâ¸öÎļþ -dÅжÏĿ¼¡£
if [ ! -f $1 ] ;then
echo 'file ' $1 'not found,please check the filename.'
exit 2;
fi
#µÃµ½Îı¾ÐÐÊý£¬ÆäÖÐ$1Ϊ½Å±¾µÄµÚÒ»¸ö²ÎÊý¡£ÒÀ´ÎÀàÍÆ£¬$nΪµÚn¸ö²ÎÊý ;wc -lÓÃÀ´Í³¼ÆÐÐÊý
#``ÖмäµÄÄÚÈÝ£¬Ï൱ÓÚÈ¥Ö´ÐÐÀïÃæµÄÃüÁµÃ³öÒ»¸ö½á¹û
rowcount=`cat $1|wc -l`
lastrowvalue=`tail -1 $1`#µÃµ½×îºóÒ»ÐеÄÄÚÈÝ
seclastrownum=`expr $rowcount - 1`#µÃµ½µ¹ÊýµÚ¶þÐеÄÐкţ¬ÆäÖУ¬expr Ϊ±í´ïʽÔËË㣬ÔËËã·û×óÓÒ¶¼ÒªÓпոñ£¬±äÁ¿µÈºÅºÍ¸³ÖµÖ®¼ä²»ÒªÓпոñ
seclastrowvalue=`sed -n $seclastrownum'p' $1`#µÃµ½µ¹ÊýµÚ¶þÐеÄÄÚÈÝ¡£ÆäÖУ¬$num'p' µÄÐÎʽÊÇΪÁËÁ¬½Ó±äÁ¿ºÍpÃüÁî
echo `expr $lastrowvalue - $seclastrowvalue#×îºóÒ»ÐмõÈ¥µ¹ÊýµÚ¶þÐÐÊýÖµµÄÔËËã½á¹û
$chmod 755 rowSubstract.sh
$./rowSubstract.sh test.txt
½á¹ûΪ
5
Ïà¹ØÎĵµ£º
1.´ÅÅÌÃüÁî
mount ¹ÒÉÏÎļþϵͳ
umount жÏÂÒѹÒÉϵÄÎļþϵͳ
df   ......
תÌù×Ô£ºhttp://alexanderlaw.blog.hexun.com/8968944_d.html
Áù¡¢ À©Õ¹µÄmatch
6.1 do_matchº¯Êý ip_tables.c
do_matchͨ¹ýIPT_MATCH_ITERATEºêÀ´µ÷ÓÃ,
IPT_MATCH_ITERATEÊÇÔÚipt_do_tableº¯ÊýÖе÷Óõĺê
IPT_MATCH_ITERATE(e, do_match,
&nb ......
תÌù×Ô£ºhttp://alexanderlaw.blog.hexun.com/8968960_d.html
Æß¡¢ target Æ¥Åä
7.1 ipt_targetºÍipt_entry_target½á¹¹ ip_tables.h
ipt_targetºÍipt_match½á¹¹ÀàËÆ£º
struct ipt_target
{
struct list_head list;
& ......
Linux»·¾³½ø³Ì¼äͨÐÅ£¨ËÄ£©
ÐźŵÆ
ÎĵµÑ¡Ïî
<tr
valign="top"><td width="8"><img alt="" height="1" width="8"
src="//www.ibm.com/i/c.gif"/></td><td width="16"><img alt="" width="1 ......
1¡¢×ª»»·þÎñÆ÷¹éµµÄ£Ê½£¬Èç¹ûÒÑÊǹ鵵ģʽ¿ÉÌø¹ý´Ë²½£º
¡¡%sqlplus /nolog (Æô¶¯sqlplus)
¡¡¡¡SQL> conn / as sysdba (ÒÔDBAÉí·ÝÁ¬½ÓÊý¾Ý¿â)
¡¡¡¡SQL> shutdown immediate; (¼´Ê±¹Ø±ÕÊý¾Ý¿â)
¡¡¡¡SQL> startup mount (Æô¶¯ÊµÀý²¢¼ÓÔØÊý¾Ý¿â£¬µ«²»´ò¿ª)
¡¡¡¡SQL> alter database archivelog; (¸ü¸ÄÊ ......