999ZYZ玖玖资源站永久无码,自拍偷自拍亚洲精品情侣 ,人人妻人人爽人人澡欧美一区,四川少妇BBB凸凸凸BBB按摩

【20年品牌建站】找北京網(wǎng)站建設(shè)公司就選新鴻儒/提供北京網(wǎng)站建設(shè)報價/北京網(wǎng)站制作/北京網(wǎng)站設(shè)計/網(wǎng)站開發(fā)、北京網(wǎng)站建設(shè)公司電話【400-024-1998】有優(yōu)惠哦!
簡體
繁體 簡體
我們的服務(wù)遍布中國

我們的服務(wù)遍布中國
乃至世界

新鴻儒所服務(wù)的品牌地域與城市
北京 天津 上海 廣州 深圳 香港 廈門 江蘇 浙江 山東
重慶 長沙 武漢 成都 西安 寧夏 麗江 青海 云南 烏魯木齊
黑龍江 內(nèi)蒙古 河北 ...
新鴻儒服務(wù)與合作的全球各地
美國 加拿大 德國 法國 英國 瑞士 意大利 荷蘭
印度 日本 韓國 ...

不論你的品牌在何處
我們都可以提供完善的服務(wù)與幫助

致電

400-024-1998

嵌入式網(wǎng)站建設(shè)

發(fā)布時間:2013-11-22 瀏覽:316打印字號:

II. Shell
A.字符操作

1. 得到長度
x="abcd"
方法一:expr length $x  方法二: expr "$x" : ".*"

2. 查找子串的位置
x="abcd"
expr index $x "b"

3. 得到子串
x="abcdefgh"
expr substr "$x" 2 6    結(jié)果是:bcdef

4. 截取
方法一:
echo $a|cut -d',' -f3
cut:對標(biāo)準(zhǔn)輸入的字符串進(jìn)行處理
cut -bn-m:以byte為單位,從第n個byte開始,取m個
cut -bn,m:以byte為單位,截取第n,m個byte
cut -b-n,m:以byte為單位,截取1-n,和第m個
-c:以charactor為單位
-d:指定分隔符,默認(rèn)為tab
-s:使標(biāo)準(zhǔn)輸入中沒有delimeter
cut -f1:截取第1個域
方法二:
expr substr “$a” 1 8    #  截取$a中的1到8個字符。
方法三:
${varible##*string} 從左向右截取最后一個string之后的字符串。
${varible%%string*} 從右向左截取最后一個string之后的字符串。
${varible#*string} 從左向右截取第一個string之后的字符串
${varible%string*} 從右向左截取第一個string之后的字符串

5.
grep -c 只輸出匹配的行數(shù)。
grep -i 忽略大小寫
grep -h 查詢多文件時不顯示文件名。
grep -H 顯示文件名。
grep -l 查詢多文件時只輸出包含匹配字符的文件名。
grep -n 顯示匹配行及行號。
grep -s 不顯示不存在或不匹配文本的錯誤信息。
grep -v 顯示不包含匹配文本的所有行。

[[:upper:]]    相當(dāng)于[A-Z]
[[:lower:]]    相當(dāng)于[a-z]
[[:alnum:]]    相當(dāng)于[0-9a-zA-Z]
[[:digit:]]    相當(dāng)于[0-9]
[[:alpha:]]    相當(dāng)于[a-zA-Z]
[[:space:]]    相當(dāng)于空格或tab健

6. awk和eval組合把一段有規(guī)律的字符串劃分為若干個變量。
   eval `echo "$FORM_chkbox" | awk -F@ '{printf "y1=%s/ny2=%s/n",$1,$2}'`
   eval `echo "$FORM_chkbox" | awk -F@ '{printf "y1=%s y2=%s/n",$1,$2}'`
   實例:
   value="Long:/usb1-disk2/SAMBA/"
   eval $(echo $value | awk -F: '{printf "name=%s/npath=%s/n",$1,$2}')
6.1. awk實例
ifconfig eth0 | awk '$2~/[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}/.[0-9]{1,3}/'

7. eval 函數(shù)可以把兩字符串重組然后再變成一個變量。
    a=123
    b=-----------2345
    eval temp=$a$b
    zhong123=adsfjsdgjsdjfgjksldjf
    eval temp1="zhong"$a
    eval temp2="$zhong"$a
    eval temp3="$""zhong"$a
    echo $temp                            //結(jié)果是:123-----------2345
    echo "$temp1"                        //結(jié)果是:zhong123
    echo "$temp2"                        //結(jié)果是:123          因為$zhong不存在。所以結(jié)果只有$a的值。
    echo "$temp3"                        //結(jié)果是:adsfjsdgjsdjfgjksldjf            這正是我想要的結(jié)果。

8.sed技巧
    sed 's@^/lib/ld-linux.so.2@/tools&@g'         ### "@" is a separate symbol.
    sed 's:/usr/local/bin:/bin:' configure.bak > configure    ### ":" is a separate.
    sed -e "$"d            ### remove the last line.
    $ sed -n 's/^test/mytest/p' example-----(-n)選項和p標(biāo)志一起使用表示只打印那些發(fā)生替換的行。也就是說,如果某一行開頭的test被替換成mytest,就打印它。
    $ sed 's/^192.168.0.1/&localhost/' example-----&符號表示替換換字符串中被找到的部份。所有以192.168.0.1開頭的行都會被替換成它自已加 localhost,變成192.168.0.1localhost。

9.sed 實例
9.1. 替換文件中的內(nèi)容。
    path=//usb1-disk1//Download//Bt
    a=$(sed -n "/Btstorepath=/=" usbnas.conf)
    sed -i -e "$a i/Btstorepath=$path" -e "$a"d usbnas.conf
或:
    path=/usb1-disk1/
    sed -i -e "/Btstorepath/i/Btstorepath=$path" -e "/Btstorepath/"d usbnas.conf

9.2. 替換文件中的內(nèi)容。
    sed -i "s/runbtdownload.*/runbtdownload=yes/" usbnas.conf
    sed -i "s|Btstorepath=.*/(.*/)|Btstorepath=/1$path|" usbnas.conf
    sed -i "s|$variable=.*/(.*/)|$variable=/1$value|" usbnas.conf

B.shell 中固定次數(shù)的for循環(huán)。
1. n=10
   for i in `seq $n`
   do
   echo "$i"
   done

2.read和while結(jié)合用法
    #!/bin/sh
    logfile="/sdb/path.list"

    while read t1 t2 t3        ### read one line once, and each line has three elements, so here use three                     ###variables to contain the three elements.
    do
    echo [$t1] >> /etc/smb.conf
    echo "        comment="$discription"" >>  /etc/smb.conf
    echo "        path = "$t3"        " >>  /etc/smb.conf
    echo "        valid users = "$t2"" >>  /etc/smb.conf
    echo "   
    done  < $logfile        ### use standard input( < ) to input.

C. 創(chuàng)建swap文件
   cd /rdisk0/disk1/usb1-disk1
   dd if=/dev/zero of=./swapfile bs=1M count=64
   mkswap swapfile
   swapon swapfile    #turn on swap
   swapoff swapfile    #turn off swap

D.cp和mv技巧。
    cp configure{,.bak}        ### cp configure configure.bak
    mv configure{,.bak}        ### mv configure configure.bak

現(xiàn)在就與新鴻儒客服交流

400-024-1998

您也可進(jìn)行在線咨詢或預(yù)約項目顧問
我要預(yù)約
在線咨詢