这是bash中的循环:
而 [ $# -ge 1 ]; 做 案例 1 美元 -一个) 转移 NUM_AGENTS=$1 ;; -H) 转移 主机名=$1 ;; -t) 转移 TIME_STAGGER=$1 ;; -联合国) 转移 用户名=$1 ;; -pw) 转移 USER_PASS=$1 ;; -p) 转移 TARGET_PAGE=$1 ;; -s) 转移 COMMON_SID=$1 ;; 经社理事会 转移 完毕
我如何在 perl 中转换它,以便参数填充命令行中的值
php loadAgent_curl.php $NUM_AGENTS $HOST_NAME $procStartTime $i $TARGET_PAGE $reqlogfile $resplogfile $USER_NAME $USER_PASS $execDelay $COMMON_SID &
-------- 附加到问题:
这当然有帮助,我真的很感激,有没有办法在 getOptions 之外访问这些参数?这是 bash 脚本的其余部分:
我的 $i="0"; 我的 $startTime=date +%s
; 开始时间=$[$开始时间+$NUM_AGENTS+10] 我的 $PWD=pwd
; 我的 $logdir="\$PWD/load-logs"; 系统(mkdir $logdir/$startTime); 我的 $reqlogfile="$logdir/$startTime/req.log"; 我的 $resplogfile="$logdir/$startTime/resp.log";打印“\n”; 打印 "##################\n"; 打印“启动请求\n”; 打印“主机名:\$HOST_NAME\n”; 打印“目标页面:\$TARGET_PAGE\n”; 打印“#代理:\$NUM_AGENTS\n”; print " EXECUTION TIME : \$startTime (随机错开在 0 和 \$TIME_STAGGER 秒之间)\n "; 打印“请求日志文件:$reqlogfile\n”; 打印 " RESP 日志文件 : $resplogfile\n "; 打印 "##################\n"; 打印“\n”; # # 最高开始=$startTime
$startTime += $ARGV[0] + 5; 我的 $dTime = localtime( $startTime ); print "\n##################\n启动请求\n 计数:$ARGV[0]\n 延迟:| 1 \n 脚本将在以下位置触发:$dTime\n##################\n\n"; 而 ( $ARGV[0] > $i ) { $i++; system("php avtestTimed.php $ARGV[0] $ARGV[2] $startTime"); 打印“运行系统('php avtestTimed.php $ARGV[0] $ARGV[2] $startTime');\n”; 睡觉1; }
# # 而 [ $NUM_AGENTS -gt "$i" ] 做 我=$[$i+1] execDelay=$((RANDOM % $TIME_STAGGER))"."$((RANDOM % 100)) procStartTime=$[$startTime] procStartTime=$[$startTime+$execDelay] 如果 [ $procStartTime -gt $highestStart ] 然后 最高开始=$procStartTime 菲 echo "STATUS: 排队请求 $i 延迟 $execDelay 秒"
echo " '--> 命令:php loadAgent_curl.php $NUM_AGENTS $HOST_NAME $procStartTime $i $TARGET_PAGE $reqlogfile $resplogfile $USER_NAME $USER_PASS $execDelay $COMMON_SID"
php loadAgent_curl.php $NUM_AGENTS $HOST_NAME $procStartTime $i $TARGET_PAGE $reqlogfile $resplogfile $USER_NAME $USER_PASS $execDelay $COMMON_SID & 睡觉 1 完毕
echo "状态:等待排队的请求准备好" 而 [
date +%s
-lt $startTime ] 做 睡觉 1 完毕 # echo "状态:等待最后一个请求发出" 而 [date +%s
-lt $highestStart ] 做 睡觉 1 完毕 # 回声“状态:发出最后一个响应” # echo "状态:等待创建响应日志文件" 尽管 [ !-e "$resplogfile" ] 做 睡觉 1 完毕 # 而 [wc -l "$resplogfile"| awk '{print $1'}
-lt $NUM_AGENTS ] 做 #echo "(wc -l "$resplogfile"| awk '{print $1'}
记录了 $NUM_AGENTS 个回复)" 睡觉 1 完毕 回声“状态:完成”虽然是真的;做 read -p "你想查看请求日志吗?[y/n]" yn 案例 $yn 在 [Yy]* ) 猫 $reqlogfile; 休息;; [Nn]* ) 退出;; * ) echo "请回答是或否。";; 经社理事会 完毕
虽然是真的;做 read -p "你想查看响应日志吗?[y/n]" yn 案例 $yn 在 [Yy]* ) 猫 $resplogfile; 休息;; [Nn]* ) 退出;; * ) echo "请回答是或否。";; 经社理事会 完毕