指令碼需求:
依次提示使用者輸入 3 個整數,指令碼根據數字大小依次排序輸出 3 個數字
指令碼內容:
#! /bin/bash
read -p '請輸入乙個整數:' num1
read -p '請輸入乙個整數:' num2
read -p '請輸入乙個整數:' num3
#不管誰大誰小,最後都列印 echo "$num1,$num2,$num3"
#num1 中永遠存最小的值,num2 中永遠存中間值,num3 永遠存最大值
#如果輸入的不是這樣的順序,則改變量的儲存順序,如:可以將 num1 和 num2 的值對調
tmp=0
# 如果 num1 大於 num2,就把 num1 和和 num2 的值對調,確保 num1 變數中存的是最小值
if [ $num1 -gt $num2 ];then
tmp=$num1
num1=$num2
num2=$tmp
fi#如果 num1 大於 num3,就把 num1 和 num3 對調,確保 num1 變數中存的是最小值
if [ $num1 -gt $num3 ];then
tmp=$num1
num1=$num3
num3=$tmp
fi#如果 num2 大於 num3,就把 num2 和 num3 對標,確保 num2 變數中存的是小一點的值
if [ $num2 -gt $num3 ];then
tmp=$num2
num2=$num3
num3=$tmp
fiecho "排序後資料為:$num1,$num2,$num3"
指令碼思路:
通過 read 來定義變數,使用 if 來比較num1 和 num2 的大小
如果 num1 大於 num2 則將兩個值進行對調
如果 num1 大於 num3 則將兩個值進行對調
如果 num2 大於 num3 則將兩個值進行對調
指令碼輸出:
[root@localhost script]# sh 10.sh
請輸入乙個整數:10
請輸入乙個整數:11
請輸入乙個整數:12
排序後資料為:10,11,12
[root@localhost script]# sh 10.sh
請輸入乙個整數:100
請輸入乙個整數:29
請輸入乙個整數:37
排序後資料為:29,37,100
shell指令碼學習 處理使用者輸入
當指令碼需要與執行指令碼的人員進行互動。bash shell提供了命令列引數 新增在命令後面的資料值 命令列選項 修改命令行為的單字元值 和直接讀取鍵盤輸入。向shell指令碼傳遞資料的最基本方式是使用命令列引數。讀取輸入的引數的變數為位置引數,位置引數通過標準數字表示,其中 0為程式名稱,1為第乙...
shell指令碼學習 處理使用者輸入
當指令碼需要與執行指令碼的人員進行互動。bash shell提供了命令列引數 新增在命令後面的資料值 命令列選項 修改命令行為的單字元值 和直接讀取鍵盤輸入。向shell指令碼傳遞資料的最基本方式是使用命令列引數。讀取輸入的引數的變數為位置引數,位置引數通過標準數字表示,其中 0為程式名稱,1為第乙...
Shell指令碼學習筆記 使用者輸入處理
1.命令列引數 1.1 引數之間空格分隔,格式 position,e.g.0,1,2,其中 0表示指令碼名字,超過10個引數時,e.g.第10個引數用 表示 1.2 簡單示例 1.3 通過建立軟連線的方式,同乙個指令碼,根據不同指令碼名字,執行不同指令碼內容,e.g.2.命令列引數變數的處理 2.1...