Linux Bash Shellѧϰ£¨Ê®ËÄ£©£ºÃüÁîÐÐÑ¡Ïî
¡¡¡¡±¾ÎÄÒ²¼´¡¶Learning the bash Shell¡·3rd EditionµÄµÚÁùÕÂCommand-Line Options and Typed varilablesÖ®¶ÁÊé±Ê¼ÇÖ®Ò»£¬µ«ÎÒÃǽ«²»ÏÞÓÚ´Ë¡£
¡¡¡¡ÔÚLinuxÃüÁîÖо³£´øÓвÎÊýÀýÈç[-option]µÈµÈ¡£ÔÚÃüÁîÐÐÖпÉÄÜÓÐ0¸ö»òÕß¶à¸öÕâЩѡÏî¡£ÎÒÃÇÔÚ֮ǰѧϰÁËλÖòÎÊý£¬°üÀ¨$1£¬$2£¬$3…£¬$*£¬$#£¬²Î¼ûLinux Bash Shellѧϰ£¨Æß£©£ºshell±à³Ì»ù´¡——ÔËÐÐShell½Å±¾¡¢function
¡£ÕâЩλÖòÎÊý¶¼ÊÇÖ»¶Á¡£
ÒÆÎ»Shift
¡¡¡¡shiftÌṩ¶ÔÖ»¶ÁµÄλÖòÎÊýµÄÒÆÎ»¸³ÖµµÄ²Ù×÷£¬½«1=$2£¬2=$3£¬…£¬¿ÉÒÔʹÓÃshift NÀ´Öƶ¨ÒÆÎ»µÄÊýÄ¿£¬ÀýÈçshift 3£¬Ôò±íʾ1=$4£¬2=$5£¬…¡£Èç¹ûÃüÁîÐÐÖÐÓÐ[-options]µÄ£¬ÎÒÃÇ¿ÉÒÔ¶ÔËûÃǽøÐÐÅжϣ¬²¢½øÐÐÒÆÎ»´¦Àí¡£Ò»¸ö¼òµ¥Àý×ÓÈçÏ£º
if [ $1 = -o ]; then
[process the -o option]
shift
fi
[normal processing of arguments...]
¡¡¡¡ÏÂÃæ¸øÁ½¸öÀý×Ó£¬½éÉÜÈçºÎÓÃshiftÀ´¼ì²é²ÎÊý¡£
#Àý×ÓÒ»£ºÓпÉÄÜÓÐ-NµÄ²ÎÊý£¬ÇÒΪµÚÒ»²ÎÊý¡£Èç¹ûµÚÒ»¸ö²ÎÊýÊÇ-N£¬¼Ç¼ÔÚhowmanyÖУ¬½øÐÐshift£¬½«$2ÖÃÓÚ$1µÄλÖã¬Èç¹ûµÚÒ»¸ö²ÎÊýÊÇ-X£¬µ«X²»ÊÇÊý×Ö£¬¸ø³ö¾¯¸æÓï¾ä£¬·ñÔòhowmanyʹÓÃȱʡµÄ-10¡£
function test1
{
#¶ÔÓÚgrep£¬^±íʾ´ÓÆ¥ÅäÐÐÊ×£¬$±íʾƥÅäÐÐ⣬ÔÚÕâÀï±íʾÕû¸ö$1Æ¥Å䣬¶ø²»ÊDz¿·ÖÆ¥Å䣬*±íÊ¾Ç°ÃæµÄ×Ö·ûÆ¥Åä0¸ö»òÕß¶à¸ö£¬ÏÂÃæ[0-9]*¼´±íʾºóÃæ¸ú×Å0¸ö»òÕß¶à¸öÊý×Ö£¬[0-9][0-9]*±íʾÊý×ÖºóÃæÓÐ0¸ö»ò¶à¸öÊý×Ö¡£¹Êecho $1 | grep '^-[0-9][0-9]*$'±íʾƥÅä¸ñʽ-N£¬NΪÊý×Ö¡£grepµÄ¾ßÌåÓ÷¨¿´²Î¼ûhttp://www.yesadmin.com/301/135287/index.html
#$(command)±íʾÃüÁîÖ´ÐеÄÄÚÈÝ¡£
#-n str£¬×Ö·û´®²»Îªnull£¬³¤¶È´óÓÚÁã
#Çë×¢ÒâË«ÒýºÅµÄʹÓ㬱íʾÕâÊÇÒ»¸öÐèÒª¼ì²éµÄstr
if [ -n "$(echo $1 | grep '^-[0-9][0-9]*$')"
]; then
howmany=$1
shift
elif [ -n "$(echo $1 | grep '^-')" ]; then
&nbs
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
1¡¢½«Grub°²×°µ½uÅÌ(ͨ³£ÐèÒªÔÚLinuxÖнøÐÐ)
ÔÚUbuntu9.10Öа²×°grub2ÈçÏ£º
sudo grub-install --root-directory=/media/sdb1 /dev/sdb
##×¢½â£ºÉÏÊöÃüÁîÖеÄ·¾¶Ãû¿ÉÄܻ᲻ͬ£¨/media/sdb1ÖÐsdb1ÊÇuÅ̹ÒÔØºóµÄÎļþÃû£¬ÊÓ¸÷È˵ľßÌåÇé¿ö¶ø¶¨£©
2¡¢´ÓÍøÉÏÏÂÔØÁ½¸öÎļþvmlinuzºÍinitrd.gz
##Äã»á·¢ÏÖÆäʵÔÚÄãËù ......
linux½ø³Ì¿ØÖÆ£execϵÁР˵ÊÇexecϵͳµ÷Óã¬Êµ¼ÊÉÏÔÚLinuxÖУ¬²¢²»´æÔÚÒ»¸öexec()µÄº¯ÊýÐÎʽ£¬execÖ¸µÄÊÇÒ»×麯Êý£¬Ò»¹²ÓÐ6¸ö£¬·Ö±ðÊÇ£º #include <unistd.h>
int execl(const char *path, const char *arg, ...);
int execlp(const char *file, const char *arg, ...);
int execle(const char *path, const char ......
ÏëÆð¸è´ÊÏÔʾ£¬´ó¼Ò»áÏëµ½WindowsÏ´óÃû¶¦¶¦µÄǧǧ¾²Ìý¡£LinuxÏÂÒ²ÓкܶàÒôÀÖ²¥·ÅÆ÷£¬µ«Ò»°ã²»»áÓдø¸è´ÊÏÔʾ¹¦ÄÜ¡£ÐÒºÃLinuxϵIJ¥·ÅÆ÷Ò»°ãÖ§³Ö²å¼þ¿ª·¢£¬ÕâÑùÐí¶à°®ºÃÕß¾ÍÄÜΪ²¥·ÅÆ÷Ôö¼Ó¸÷ÖÖ¹¦ÄÜ£¬ÆäÖоÍÓÐÐí¶àÖйúÈË¿ª·¢µÄ¸è´ÊÏÔʾ²å¼þ£¨Ã»ÓÐÓùýÀÏÍâµÄ¸è´Ê²å¼þ£¬¿ÉÄÜÀÏÍâ¶ÔÕâ¸ö¹¦Äܲ»¸Ð𣩣¬Ð§¹û»¹²»´í£¬¶øÇÒ¶¼ÊÇ¿ªÔ´µ ......