2015-10-19 56 views
-2

需要在BASH中有一個讀取語句,它會要求用戶在同一行上輸入2位數字,並在其間插入一個空格。檢查兩者是否都是數字,並且兩者之間有空格。Bash腳本 - 用戶輸入空格分隔的兩位數字;需要驗證它是一個數字

+0

http://stackoverflow.com/help/how-to-ask –

+0

你嘗試過這麼遠嗎?沿着'#!/ bin/bash 的行讀取-p「輸入第一個數字:」n1 read -p「輸入數字2:」n2「,然後從那裏繼續? –

+0

這是一個家庭作業問題,所以我需要讓他們在同一時間進入空間。例如:12 2 – Empyre

回答

0
#!/bin/bash 
result="" 
while [[ $result == *" "* || $result == "" ]];do 
    read -p "Type 2 digits without space:" result; 
    echo "Error"; 
done 
0
#!/bin/bash 

while : 
do 
    read -p "digits a b?: " resp 
    if [ -z "${resp}" ] ; then continue;fi 

    respCtrl=`echo $resp | sed 's/[^0-9 ]//g'` 
    if [ ! ${#respCtrl} -eq ${#resp} ] ; then continue ;fi 

    set ${resp} 
    digit1=$1 
    digit2=$2 
    if [ "${digit1} ${digit2}" != "${resp}" ] ; then continue;fi 

    echo ${digit1} ${digit2} 
    break 
done 
相關問題