You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							55 lines
						
					
					
						
							1.7 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							55 lines
						
					
					
						
							1.7 KiB
						
					
					
				| #!/bin/bash | |
|  | |
| upload_cam(){ | |
| 	clear; | |
| 	slogo; | |
| 	FILENAME=$1; | |
| 
 | |
| 	if [ ! -f "$profdir/$FILENAME" ];then | |
| 		echo -e "$r_l\n  $txt_error $FILENAME $txt_upload_cam1 $re_"; | |
| 		exit; | |
| 	else | |
| 		echo -e "$w_l\n  CONFIG  : $g_l$FILENAME $txt_upload_cam2 $re_"; | |
| 	fi; | |
| 
 | |
| #load data from config | |
| 	source "$profdir/$FILENAME"; | |
| 
 | |
| #find newest build by date for toolchain | |
| 	cd "$bdir"; | |
| 	buildcamname="$(find . -type f \( -iname "*$toolchain*" ! -iname "*list_smargo" \) -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" " |sed 's@./@@g')"; | |
| 	cd "$workdir"; | |
| 
 | |
| #output date from cam | |
| 	if [ -f "$bdir/$buildcamname" ];then | |
| 		echo -e "$w_l  CAMNAME : $y_l$buildcamname"; | |
| 		echo -en "$w_l  FILEDATE: "$( | |
| 						stat -c %y "$bdir/$buildcamname" |awk '{print $1" "; printf substr($2,1,8)}'); | |
| 		echo -e "$w_l"; | |
| 	else | |
| 		echo -e "$r_l\n  matching \$CAM not found in $bdir$re_"; | |
| 		exit; | |
| 	fi; | |
| 	echo -e "$p_l\n  $txt_LOAD  > $w_l$txt_to IP:$b_l$ip$w_l port:$b_l$port"; | |
| 	sshpass -p "$password" scp -P "$port" "$bdir/$buildcamname" "$loginname@$ip":/tmp; | |
| 
 | |
| #replace target cam | |
| 	if [ "$replace_target" == "y" ];then | |
| 		echo -en "$p_l  REPLACE > $y_l$targetcam$re_"; | |
| 		sshpass -p "$password" ssh -p "$port" -o StrictHostKeyChecking=no "$loginname@$ip" \ | |
| 		"cd /tmp;if [ -f \"$buildcamname\" ];then if [ -f \"$targetcam\" ];then mv -f \"$buildcamname\" \"$targetcam\";fi;fi;exit;"; | |
| 		echo -e "$g_l$txt_done!$re_"; | |
| 	fi; | |
| 
 | |
| #stop target cam | |
| 	if [ "$stop_target" == 'y' ];then | |
| 		stop="killall -9 $(basename "$targetcam")"; | |
| 	fi; | |
| 
 | |
| #remote command (example restart cam) | |
| 	if [ ! "$remote_command" == "none" ];then | |
| 		echo -e "$w_l  SSH COMMANDS $remote_command $y_l$txt_wait"; | |
| 		# do remote commands | |
| 		sshpass -p "$password" ssh -p "$port" -o StrictHostKeyChecking=no "$loginname@$ip" "$remote_command;"; | |
| 	fi; | |
| }; |