Linux ½Å±¾±àд»ù´¡(Èý)
3) Á÷³Ì¿ØÖÆ
1.if
"if" ±í´ïʽ Èç¹ûÌõ¼þÎªÕæÔòÖ´ÐÐthenºóÃæµÄ²¿·Ö£º
if ....; then
....
elif ....; then
....
else
....
fi
´ó¶àÊýÇé¿öÏ£¬¿ÉÒÔʹÓòâÊÔÃüÁîÀ´¶ÔÌõ¼þ½øÐвâÊÔ¡£±ÈÈç¿ÉÒԱȽÏ×Ö·û´®¡¢ÅжÏÎļþÊÇ·ñ´æÔÚ¼°ÊÇ·ñ¿É¶ÁµÈµÈ…
ͨ³£ÓÃ" [ ] "À´±íʾÌõ¼þ²âÊÔ¡£×¢ÒâÕâÀïµÄ¿Õ¸ñºÜÖØÒª¡£ÒªÈ·±£·½À¨ºÅµÄ¿Õ¸ñ¡£
[ -f "somefile" ] £ºÅжÏÊÇ·ñÊÇÒ»¸öÎļþ
[ -x "/bin/ls" ] £ºÅжÏ/bin/lsÊÇ·ñ´æÔÚ²¢ÓпÉÖ´ÐÐȨÏÞ
[ -n "$var" ] £ºÅжÏ$var±äÁ¿ÊÇ·ñÓÐÖµ
[ "$a" = "$b" ] £ºÅжÏ$aºÍ$bÊÇ·ñÏàµÈ
Ö´ÐÐman test¿ÉÒԲ鿴ËùÓвâÊÔ±í´ïʽ¿ÉÒԱȽϺÍÅжϵÄÀàÐÍ¡£
Ö±½ÓÖ´ÐÐÒÔϽű¾£º
#!/bin/sh
if [ "$SHELL" = "/bin/bash" ]; then
echo "your login shell is the bash (bourne again shell)"
else
echo "your login shell is not bash but $SHELL"
fi
±äÁ¿$SHELL°üº¬Á˵ǼshellµÄÃû³Æ£¬ÎÒÃǺÍ/bin/bash½øÐÐÁ˱Ƚϡ£
¿ì½Ý²Ù×÷·û
ÊìϤCÓïÑÔµÄÅóÓÑ¿ÉÄÜ»áºÜϲ»¶ÏÂÃæµÄ±í´ïʽ£º
[ -f "/etc/shadow" ] && echo "This computer uses shadow passwors"
ÕâÀï && ¾ÍÊÇÒ»¸ö¿ì½Ý²Ù×÷·û£¬Èç¹û×ó±ßµÄ±í´ïÊ½ÎªÕæÔòÖ´ÐÐÓұߵÄÓï¾ä¡£ÄúÒ²¿ÉÒÔÈÏΪÊÇÂß¼ÔËËãÖеÄÓë²Ù×÷¡£ÉÏÀýÖбíʾÈç¹û/etc/shadowÎļþ´æÔÚÔò´òÓ¡” This computer uses shadow passwors”¡£Í¬Ñù»ò²Ù×÷(||)ÔÚshell±à³ÌÖÐÒ²ÊÇ¿ÉÓõġ£ÕâÀïÓиöÀý×Ó£º
#!/bin/sh
mailfolder=/var/spool/mail/james
[ -r "$mailfolder" ]' '{ echo "Can not read $mailfolder" ; exit 1; }
echo "$mailfolder has mail from:"
grep "^from " $mailfolder
¸Ã½Å±¾Ê×ÏÈÅжÏmailfolderÊÇ·ñ¿É¶Á¡£Èç¹û¿É¶ÁÔò´òÓ¡¸ÃÎļþÖеÄ"from" Ò»ÐС£Èç¹û²»¿É¶ÁÔò»ò²Ù×÷ÉúЧ£¬´òÓ¡´íÎóÐÅÏ¢ºó½Å±¾Í˳ö¡£ÕâÀïÓиöÎÊÌ⣬ÄǾÍÊÇÎÒÃDZØÐëÓÐÁ½¸öÃüÁ
-´òÓ¡´íÎóÐÅÏ¢
-Í˳ö³ÌÐò
ÎÒÃÇʹÓû¨À¨ºÅÒÔÄäÃûº¯ÊýµÄÐÎʽ½«Á½¸öÃüÁî·Åµ½Ò»Æð×÷Ϊһ¸öÃüÁîʹÓá£Ò»°ãº¯Êý½«ÔÚÏÂÎÄÌá¼°¡£²»ÓÃÓëºÍ»ò²Ù×÷·û£¬ÎÒÃÇÒ²¿ÉÒÔÓÃif±í´ïʽ×÷ÈκÎÊÂÇ飬µ«ÊÇʹÓÃÓë»ò²Ù×÷·û»á¸ü±ãÀûºÜ¶à¡£
2.case
case :±í´ïʽ¿ÉÒÔÓÃÀ´Æ¥ÅäÒ»¸ö¸ø¶¨µÄ×Ö·û´®£¬¶ø²»ÊÇÊý×Ö¡£
case ... in
...) do something here ;;
esac
ÈÃÎÒÃÇ¿´Ò»¸öÀý×Ó¡£fileÃüÁî¿ÉÒÔ±æ±ð³öÒ»¸ö¸ø¶¨ÎļþµÄÎļþÀàÐÍ£¬±ÈÈ磺
file lf.gz
Õ⽫·µ»Ø£º
lf.gz: gzip compressed data, deflated, original filename,
last modified:
Ïà¹ØÎĵµ£º
µ±ÄÚ´æ³öÏÖ²»¹»ÓõÄʱºò£¬oom-killer»ákillµôһЩ½ø³Ì
Õâ¸öÐÅÏ¢¿ÉÒÔÔÚ/var/log/messgerÀï²éµ½
µ±ÕâÖÖÇé¿ö³öÏÖµÄʱºò£¬¿ÉÒÔ½«ÏµÍ³ÀïһЩnattachΪ0µÄshmÇåÀíµô
¹ØÓڸߵͶËÄÚ´æµÄÎÊÌâ¿ÉÒÔ¿´ÈçÏÂ
Since this problem seems to popup on different lists, this message has
been cross-posted to the general Red Hat disc ......
VSFTPDµÄÉèÖÃÑ¡Ïî
¡¡¡¡VSFTPDµÄÅäÖÃÎļþ/etc/vsftpd/vsftpd.confÊǸöÎı¾Îļþ¡£ÒÔ“#”×Ö·û¿ªÊ¼µÄÐÐÊÇ×¢ÊÍÐС£Ã¿¸öÑ¡ÏîÉèÖÃΪһÐУ¬¸ñʽΪ“option=value”£¬×¢Òâ“=”ºÅÁ½±ß²»ÄÜÁô¿Õ°×·û¡£³ýÁËÕâ¸öÖ÷ÅäÖÃÎļþÍ⣬»¹¿ÉÒÔ¸øÌض¨Óû§É趨¸öÈËÅäÖÃÎļþ£¬¾ßÌå½éÉܼûºó¡£
¡¡¡¡VSFTPD°üÖÐËù´øµ ......
ÏÈд¼¸Ìõ£¬×Ô¼º³£Óõģ¬ÒÔºóÔÙ²¹³ä£º
1. ALT + '.'
ǰһÌõÃüÁîµÄ×îºóÒ»¸ö²ÎÊý¡£
ÀýÈ磺
µÚÒ»ÌõÃüÁls /usr/loca/£»
µÚ¶þÌõÃüÁcd /usr/local;
µÚ¶þÌõÃüÁîµÄ/usr/local£¬Ö±½Óͨ¹ýALT+'.'¼´¿ÉÊäÈë¡£
2.CTRL+'r'
ÔÚhistoryÖÐѰÕÒÃüÁî
3.TAB
²¹ÆëÎļþÃû»òĿ¼Ãû
4.$ find -name '*.[ch]' | xargs grep -E 'expr' ......
×î½üÔÚÓÃC++±àдһ¸öRTSPµÄ¿Í»§¶Ë£¬ÓÉÓÚÒªÓõ½Ị̈߳¬¸ù¾ÝC±à³ÌµÄ¾Ñ飬дÁËÈçÏ´úÂ룺
class LiRtspSession
{
public:
void* MainThreadFunc(void* pvData);
void* AudioProcThreadFunc(void* pvData);
& ......