# vi xx.sh
退出並保存
# chmod +x xx.sh
# ./xx.sh
-2.
調試腳本的方法
# bash -x xx.sh
就可以調試了
.
-1.
配置
secureCRT
的設置
(
我用的是
6.2.3 build313
版本
,
漢化版
)
選項
->
會話選項
(S)...->
終端
->
仿真
->
終端
(T)->
把
VT100
改成
Xterm->
點中
ANSI
顏色
(A)
和使用顏色方案
(U)
復選框
.
這樣就有顏色顯示了
.
選項
->
會話選項
(S)...->
終端
->
外觀
->
字符編碼
(H)->
從
Default
變到
UTF-8.
這樣就有中文顯示了
.
1.
寫一個腳本
,
執行后
,
打印一行提示
"Please input a
number:",
要求用戶輸入數值
,
然后打印出該數值
,
然后再次要求用戶輸入數值
.
直到用戶輸入
"end"
停止
.
# vi show_var.sh
腳本內容
:
#!/bin/bash
unset var
while [ "$var" != "end" ]
do
echo -n "please input a number: "
read var
if [ "$var" = "end" ]
then
break
fi
echo "var is $var"
done
命令保存后退出
,
並執行
:
# chmod +x show_var.sh
# ./show_var.sh
please input a number: 1
var is 1
please input a number: s
var is s
please input a number: end
#
2.
寫一個腳本
,
測試位置參數
# vi param.sh
腳本內容
:
#!/bin/bash
#test shell
echo $0
echo $1
echo $2
echo $?
echo $*
echo $#
命令保存后退出
,
並執行
:
# chmod +x param.sh
# ./param.sh yema Bhanv edu network
./param.sh //
程序名稱
Yema //
第一個參數
Bhanv //
第二個參數
0 //
程序執行結果
yema Bhanv edu network //
傳遞參數所組成的字符串
4 //
參數個數
3.
寫一個腳本
,
可以根據參數文件名
,
以正確的參數調用
tar
來解壓縮
tar.gz
或
tar.bz2
文件
.
# vi tar_gz_bz2.sh
腳本內容
:
#!/bin/sh
case ${1##*.tar.} in
bz2)
tar jxvf $1
;;
gz)
tar zxvf $1
;;
*)
echo "wrong file type"
esac
命令保存后退出
,
並執行
:
# chmod +x tar_gz_bz2.sh
# ./tar_gz_bz2.sh
# touch "helloA" > a.txt //
寫一個測試用的文件
# tar czvf a.tar.gz a.txt //
把
a.txt
壓縮成
tar.gz
文件
# rm -rf a.txt //
刪除
a.txt
來測試腳本
# ls a.*
a.tar.gz
# ./tar_gz_bz2.sh a.tar.gz
# ls a.*
a.tar.gz a.txt //
驗證了正確性
# touch "helloB" > b.txt //
寫一個測試用的文件
# tar cjvf b.tar.bz2 b.txt //
把
b.txt
壓縮成
tar.bz2
文件
# rm -rf b.txt //
刪除
b.txt
來測試腳本
# ls b.*
b.tar.bz2
# ./tar_gz_bz2.sh b.tar.bz2
# ls b.*
b.tar.bz2 b.txt //
驗證了正確性
# rm -rf a.txt a.tar.gz //
刪除測試用的文件
# rm -rf b.txt b.tar.bz2 //
刪除測試用的文件
4.
小棍子顯示
# vi showstick.sh
#!/bin/bash
i=0
while [ $i -lt 10 ]
do
for j in '-' '\\' '|' '/'
do
echo -ne "\033[1D$j"
usleep 50000
done
((i++))
done
保存
# chmod +x showstick.sh
# ./showstick.sh
看效果
.
5.
顯示類似
wget
的進度
# vi showwget.sh