2010-08-23 87 views
1

我正在製作一個shell腳本,我想知道是否可以在腳本執行時直接寫入命令行?shell腳本:如何輸出到命令行?

例子:

[email protected]:/home/user$./script.sh 
... output 
... another output 
... another output 
... last output 
[email protected]:/home/user$I want to write here on the command line 

我不想「回聲」一些文字,我想直接在提示符下寫的。

謝謝!

+0

因此,不,不是因爲據我所知。 – mctylr 2010-08-23 18:43:59

+0

你需要什麼?我知道一種讓它打印文本的方法,但是你不能通過退格去掉文本,文本對你的下一個命令沒有任何影響。但我懷疑你正在尋找什麼。 – Serplat 2010-08-23 18:56:07

+0

@Serplat:文本是用戶在準備就緒時執行的命令。 – codea 2010-08-23 19:15:38

回答

4

不,你不能這樣做。如果您希望用戶在腳本完成後調用您提供的命令 - 爲什麼不只是提示用戶進行確認?

+0

好主意......我會按照這種方式進行,因爲我無法在提示符下書寫。謝謝 – codea 2010-08-23 18:59:20

0

如果你只是想讓文字出現在那裏,但不能用它做任何事情,你可以這樣做。

文件test.sh:

echo "Output" 
./test2.sh & 

文件test2.sh:

echo "Output2" 

通知的第一個腳本是如何調用與&末,第二腳本。

在這種情況下,「Output2」將被寫入提示符,但它不能被刪除,並且根本不會影響下一個命令。但如果這是你正在做的事情來吸引用戶的注意力,那麼它就會起作用。

+0

謝謝......但是我想讓用戶只需按回車就可以執行命令,當他準備好時 – codea 2010-08-23 19:05:58

0

在KSH:

print -s $(script) 

將打印的命令歷史記錄。將它封裝在一個函數中,你會得到一些你所要求的東西。

+0

謝謝,但我不能用ksh。 – codea 2010-08-23 19:20:28

+0

@codea我明白,當然,你可能無法使用'ksh',但你絕對不能使用它?如果存在特定的限制,那麼我們可能可以解決這個問題。 – 2015-12-02 15:15:16

0

如果您正在使用X環境中安裝xclipxdotool,則:

#!/bin/bash 
your scripts.... 
echo -n your command to write 2>&1|xclip 
xdotool click 2 
相關問題