我希望這是一個大師的快速問題。 我有以下命令,在命令行的偉大工程:Bash重定向和stdin
src/protected/yiic shell src/index.php <<< createmvp < /dev/tty
此命令執行的yiic bash腳本,並通過它的參數外殼和src/index.php文件。
第一個< < <將參數createmvp傳遞到當yiic shell src/index.php自己運行時顯示的終端提示符。第二個<然後允許std in返回到應用程序。
然而,當我運行這個bash腳本
#!/bin/bash
src/protected/yiic shell src/index.php <<< createmvp < /dev/tty
內的腳本不通過createmvp入殼。 如果我刪除了</dev/tty位傳遞createmvp的作品,但是然後奪回終端顯然沒有。我似乎沒有做任何工作。
while(!isset($input))
{
$input = trim(fgets(STDIN));
if(!$input)
echo "$configVar can not be NULL";
}
任何想法,如何使這項工作,因爲它從命令行?
在此先感謝
艾倫
我在linux現在我沒有,但我認爲你必須用引號傳遞2個第一個參數; src/protected/yiic「shell src/index.php」<<< createmvp dev/tty –
即啓動shell但將createmvp傳遞到應用程序中。感謝您花時間回覆:) –
如果您將輸入重定向移動到行首,該怎麼辦? IIRC它是合法的,把它放在任何地方:::::::::::::' dev/tty src/protected/yiic shell src/index.php <<< createmvp' – Wug