linux命令之互動式輸入read

2021-12-29 16:39:19 字數 2069 閱讀 5711

linux命令之互動式輸入read

read是乙個重要的命令,用於從鍵盤或標準輸入中讀取輸入。

一般只有按回車鍵的時候才標誌輸入完畢,但有些情況下沒法按回車鍵,read提供了一種不需要按回車鍵的方法。

1.-p 「提示語句」 變數名

[wang@localhost 桌面]$ vim testcmd.sh

#!/bin/bash

read -p "enter your name :" name1 name2   //name1前面要空格,可以賦值給多個變數

echo $name1

echo $name2

[wang@localhost 桌面]$ chmod +x testcmd.sh 

[wang@localhost 桌面]$ ./testcmd.sh 

enter your name :william sam

william

sam[wang@localhost 桌面]$ ./testcmd.sh 

enter your name :william sam linux    //多餘的輸入會賦值給最後乙個變數

william

sam linux

2.-n 輸入個數

當輸入字元數達到預定數目,則自動退出,不用按回車。

[wang@localhost 桌面]$ read -n 4 -p "enter your name :" name;echo $name

enter your name :wangwang    //乙個wang是輸入的,另乙個是echo $name。

3.-s 不回顯

用於輸入密碼,對於密碼的保護。

[wang@localhost 桌面]$ read -n 4 -s -p "enter your name :" name;echo $name

enter your name :wang    //這個是echo $name

4.-t 等待輸入的秒數

[wang@localhost 桌面]$ read -n 4 -t 2 -p "enter your name :" name;echo $name

enter your name :            //等2秒後 自動跳出了

或者寫個指令碼:

[wang@localhost 桌面]$ vim testcmd.sh

#!/bin/bash

if read -t 2 -p "enter your name :" name

then

echo $name

else

echo "timeout!"

fi[wang@localhost 桌面]$ ./testcmd.sh 

enter your name :timeout!

5.-d 自定義定界符

輸入自定義的定界符,結束輸入。

[wang@localhost 桌面]$ read -d ":" -p "enter your name :" name;echo $name

enter your name :name:name

6.從標準輸入中讀取

[wang@localhost 桌面]$ vim testcmd.sh

#!/bin/bash

count=1

cat test.c | while read line    //從test.c讀取每一行並賦值給line變數

do        echo "$count:$line"

count=$[ count+1 ]

done

[wang@localhost 桌面]$ cat test.c

#include

int main()

int a = 4;

(++a) += a;

printf("we are the best %d!\n",a);

return 0;

[wang@localhost 桌面]$ ./testcmd.sh 

1:#include

2:3:int main()

4:注意:上面的cat test.c 也可以換成ls ,ps,grep,find等等命令

Altium Designer 筆記之互動式布局

你可以利用該功能先幫你按原理圖的電路功能塊來進行粗分,最後再來細布局這樣可以大大提高你的布局效率。為了演示需要我們可以先將螢幕垂直分割成兩個顯示區 ad10 支援多顯示器顯示 單擊 window tilevertically 選單可使當前的螢幕分割成兩個顯示區,注意在應用該命令前確保當前只開啟了一張...

HTML之互動式表單

首先來了解一下瀏覽器提交表單與伺服器的互動過程,如下圖所示 1 使用 method 用於指定向伺服器傳送表單資料時所使用的http方法,可以使get或post兩種方法中的一種,get是預設的方法。當採用get方法提交表單時,提交的資料被附加到url的末端,作為url的一部分傳送到伺服器端。而post...

Git 之 互動式 rebase

使用 git rebase i 可以進入互動式模式,可以對某一範圍內的提交 進行重新編輯 預設情況下,直接使用 git rebase i 命令的操作物件為自最後一次從 origin 倉庫拉取或者向 origin 推送之後的所有提交。假設我要把 master 上紅色區域的分支合併成乙個提交 首先找到起...