Here
 
   
當一個程式需要從鍵盤輸入資訊,但不想麻煩使用者跟系統作互動性輸入時, 可用I/O轉向法達到目的。以下的例子來說明如何使用兩種輸入轉向。
 
 
例:當要呼叫 ex 編輯器來刪除一個段落時,須下一個如下的指令:

10,20d
w
 
 
兩步驟,兩檔案方式
 
   
第一種方法是先將編輯指令存放在另一個檔案內,再用I/O轉向來取代鍵盤輸入, 此法需要兩個檔案,script 如下:
ex  file < ex.script
 
 
兩步驟,一檔案方式
 
   
第二種方法是直接在一個script中利用 echo 將編輯指令存放在另一個檔案內,再用I/O轉向來取代鍵盤輸入,此法只需要一個檔案,script 如下:
if [ ! -f ex.script ]
then
echo "10,20d
w" >> ex.script
ex file < ex.script; rm ex.script
else
echo ex.script already exist.; exit 1
fi
 
 
Here: 一步驟,一檔案方式
 
   
第三種方法是直接在一個script中利用 Here 方式將編輯指令直接餵給 ex,script 如下:
ex file <<%

10,20d
w
%
其中,'%' 可以是任意字元,只要前後匹配即可。

注意,後面的符號('%')必須單獨佔用一行,且必須是 該行第一個字元。

Web Page Copyright: 亞洲大學資訊電機學院 連耀南 yaonanlien@asia.edu.tw  here.htm,  Wed Sep 16 12:45:01 CST 2020