在 BASH shell 中讀取用戶輸入
BASH shell 中通過 read 函數來實現讀取用戶輸入的功能,如下面這段程序:
#!/bin/bash
echo Please enter your name
read NAME
echo "Hi! $NAME !"
exit 0
上面這個腳本讀取用戶的輸入,並回顯在屏幕上。
另外
BASH 中還提供另外一種稱為 here documents 的結構,可以將用戶需要通過鍵盤輸入的字符串改為從程序體中直接讀入,如密碼。下面的小程序演示了這個功能:
#!/bin/bash
passwd="aka@tsinghua"
ftp -n localhost <<FTPFTP
user anonymous $passwd
binary
bye
FTPFTP
exit 0
這個程序在用戶需要通過鍵盤敲入一些字符時,通過程序內部的動作來模擬鍵盤輸入。請注意 here documents 的基本結構為:
command <<SOMESPECIALSTRING
statments
...
SOMESPECIALSTRING
這裡要求在需要鍵盤輸入的命令後,直接加上 <<符號,然後跟上一個特別的字符串,在該串後按順序輸入本來應該由鍵盤輸入的所有字符,在所有需要輸入的字