[Shell] 同時跑N個 PHP Process


#!/bin/bash

### 定義顏色
YELLOW='\033[1;33m'
GREEN='\033[0;32m'
NC='\033[0m'

### 要執行的PHP程式, 預設是/path/to/xxx.php
PHP_PROGRAM=${1:-/path/to/xxx.php}
### 指定國家, 預設是tw
COUNTRY=${2:-tw}
### 根據哪個檔案, 預設是test.txt
TARGET_FILE=${3:-test.txt}
### 檔案名稱, 預設是test
FILE_NAME=${4:-test}
### 同時跑PHP進程數, 預設是8
CONCURRENT_PROCESS=${5:-8}

echo -e "${YELLOW}開始執行${NC}"
for i in $(seq 1 $CONCURRENT_PROCESS)
do
echo -e "${GREEN}/usr/local/php/bin/php $PHP_PROGRAM $COUNTRY $TARGET_FILE $FILE_NAME $CONCURRENT_PROCESS $(($i-1)) 18${NC}"
/usr/local/php/bin/php $PHP_PROGRAM $COUNTRY $TARGET_FILE $FILE_NAME $CONCURRENT_PROCESS $(($i-1)) 18 &
done
echo -e "${YELLOW}執行完畢, 可以執行 ${NC} ps aux | grep $PHP_PROGRAM ${YELLOW} 觀看執行process ${NC}"
exit;


留言

這個網誌中的熱門文章

[MySQL] schema 與資料類型優化

[翻譯] 介紹現代網路負載平衡與代理伺服器