aix的協處理(後臺執行程式)

wmlm發表於2007-03-07

透過管道將命令置於後臺執行(CMD |&),而區別普通的後臺程式(CMD &)。

[@more@]

協處理主要是針對那些需要對某個檔案進行加工處理,但又一時不能完全確定該怎麼處理或需要在處理的過程中進行其他的相關操作的人設計的一種處理方式,一般使用的不多。
她是透過管道將命令置於後臺執行(CMD |&),而區別普通的後臺程式(CMD &)。
對於協處理過程,使用者可以透過print -p向程式傳送命令,透過read -p Var從程式獲取輸出
例1:透過協處理讀取檔案的每一行

cat file
2
3
4
1
D1
D2

# cat file|&
[1] 13433
# while read -p a;do echo $a;done
2
3
4
1
D1
D2
[1] + Done cat file|&

例2:以協處理方式對檔案進行編輯

cat a
1
2
3
4
5
6
7
8
9
0

# ed - a|&
[1] 15276
# print -p 3d #刪除第三行
# print -p m5 #當前行移到第5行去
# print -p w #儲存結果
# print -p q #退出ed
看結果
# cat a
1
2
5
6
4
7
8
9
0
[1] + Done ed - a|&

需要注意的是在協處理過程的寫法中“|”與“&”之間本能有任何其他字元也包括空格。ksh只支援一個協處理程式。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271063/viewspace-903237/,如需轉載,請註明出處,否則將追究法律責任。

相關文章