使用者工具

網站工具


linux:script:tool

tr指令

  1. tr支援RE例如:
    $AA=SWFCVR
    #echo $AA|tr [A-Z] [a-z]
    swfcvr
  2. 取代一些特殊符號例如:將ip分隔的. 換成 !!
    $LL=192.168.0.11
    echo $LL|tr '.' '!'
    192!168!0!101
  3. 清除一些特殊符號例如:將ip分隔的 .清除掉
    $LL=192.168.0.11
    echo $LL|tr -d '.'
    1921680101

date指指令

date 輸出格式 (若無選項參數,就表現在時間)

  1. $date +%s   #unix時間戳(Unix timestamp)1354369075
    1354369075    #從1970年1月1日到現在經過多少秒
  2. $date -d "顯示時間描述"  輸出格式
    $date -d "2 day ago" +%Y%m%d #兩天以前的日期
    20121129
    $date +%Y%m%d
    20121201
    $date -d @1354369075 +%Y%m%d #由timestamp轉成日期
    20121201

printf列印格式指令

  1. 將10進位數字轉換成16進位 例如:十進位數字88轉成十六進位
    $printf '%X' 88
    58
  2. 將IP轉成十六進位表示
    $LL=192.168.0.101
    $printf '%02X' $(echo $LL|tr '.' ' ')
    C0A80065

expect自動化執行互動指令

expect是tcl語言上的工作。要做以下工作之前,需安裝tcl及expect等套件。

  1. 語法格式
    spawn 執行的指令
    expect {
            timeout{"等不到執行的指令所回應的字串"}
            "執行的指令所回應的字串" {send "回應的字串\n"}
    }
  2. 範例
    #!/usr/bin/expect
    spawn  ssh 192.168.50.152 ls -l
    expect {
            timeout { puts stderr "password" ; exit 1 }
            "password: " { send "redhat\r" }
    }
    expect "*Last login*" interact

參考資料

linux/script/tool.txt · 上一次變更: 2013/07/06 01:28 (外部編輯)