#!/bin/bash
for((i=1;i <=10;i++))
do
php /var/www/get.php
done
我有上面的shell腳本,我用它來執行10次get.php。不過看起來腳本是一個一個執行的,所以我想知道是否可以一次執行所有腳本(顯然不需要輸入10次php路徑命令)shell/bash腳本 - 如何一次執行多個腳本使用while
#!/bin/bash
for((i=1;i <=10;i++))
do
php /var/www/get.php
done
我有上面的shell腳本,我用它來執行10次get.php。不過看起來腳本是一個一個執行的,所以我想知道是否可以一次執行所有腳本(顯然不需要輸入10次php路徑命令)shell/bash腳本 - 如何一次執行多個腳本使用while
如果你想要同時運行所有這些,您可以更改:
php /var/www/get.php
到:
php /var/www/get.php &
這在後臺運行,而不是在前臺的過程。當然,您有責任確保您的腳本在後臺運行時功能爲功能。您可能不得不注意那些不喜歡被共享的資源,或者混合來自不同流程的輸出。
如果你也想等待全部十次完成爲好,開始:
#!/bin/bash
for((i=1;i <=10;i++))
do
php /var/www/get.php &
done
wait
#!/bin/bash
for((i=1;i <=10;i++))
do
php /var/www/get.php &
done
只需添加一個符號。
另一個變化:
seq 1 3 | while read i; do /usr/bin/php -v &; done;
確實PHP /var/www/get.php> get.txt有同樣的效果(在後臺運行),爲PHP /var/www/get.php&? – Michael 2011-03-30 03:41:41
@Michael,no。這只是重定向輸出。它仍然在前臺運行。背景意味着父母開始孩子並繼續前進(所以他們並排運行)。前景意味着父母將等待孩子完成,這不受輸出重定向的影響。 – paxdiablo 2011-03-30 03:43:14
非常感謝!這就是我所需要知道的 – Michael 2011-03-30 03:47:49