修复repo命令日志文件唯一值

This commit is contained in:
hanhh 2021-08-05 14:42:53 +08:00
parent d6f5198893
commit 5fbad9956f
3 changed files with 31 additions and 22 deletions

View File

@ -169,10 +169,8 @@ update_cron() {
)
code=$(echo $api | jq -r .code)
message=$(echo $api | jq -r .message)
if [[ $code == 200 ]]; then
echo -e "## 更新任务状态成功\n" >> $log_path
else
echo -e "\n## 更新任务状态失败(${message})" >> $log_path
if [[ $code != 200 ]]; then
echo -e "\n## 更新任务状态失败(${message})\n" >> $log_path
fi
}

View File

@ -93,11 +93,11 @@ run_normal() {
local begin_time=$(date '+%Y-%m-%d %H:%M:%S')
echo -e "## 开始执行... $begin_time\n" >> $log_path
[[ $id ]] && update_cron "\"$id\"" "0" "$$" "$log_path"
. $file_task_before
. $file_task_before >> $log_path 2>&1
timeout -k 10s $command_timeout_time $which_program $p1 2>&1 >> $log_path
timeout -k 10s $command_timeout_time $which_program $p1 >> $log_path 2>&1
. $file_task_after
. $file_task_after >> $log_path 2>&1
[[ $id ]] && update_cron "\"$id\"" "1" "" "$log_path"
local end_time=$(date '+%Y-%m-%d %H:%M:%S')
local diff_time=$(($(date +%s -d "$end_time") - $(date +%s -d "$begin_time")))
@ -127,17 +127,17 @@ run_concurrent() {
local begin_time=$(date '+%Y-%m-%d %H:%M:%S')
echo -e "## 开始执行... $begin_time\n" >> $log_path
[[ $id ]] && update_cron "\"$id\"" "0" "$$" "$log_path"
. $file_task_before
. $file_task_before >> $log_path 2>&1
echo -e "\n各账号间已经在后台开始并发执行前台不输入日志日志直接写入文件中。\n" >> $log_path
single_log_time=$(date "+%Y-%m-%d-%H-%M-%S.%N")
for i in "${!array[@]}"; do
export ${p3}=${array[i]}
single_log_path="$log_dir/${single_log_time}_$((i + 1)).log"
timeout -k 10s $command_timeout_time $which_program $p1 &>$single_log_path &
timeout -k 10s $command_timeout_time $which_program $p1 &>$single_log_path 2>&1 &
done
. $file_task_after
. $file_task_after >> $log_path 2>&1
[[ $id ]] && update_cron "\"$id\"" "1" "" "$log_path"
local end_time=$(date '+%Y-%m-%d %H:%M:%S')
local diff_time=$(($(date +%s -d "$end_time") - $(date +%s -d "$begin_time")))
@ -156,11 +156,11 @@ run_else() {
local begin_time=$(date '+%Y-%m-%d %H:%M:%S')
echo -e "## 开始执行... $begin_time\n" >> $log_path
[[ $id ]] && update_cron "\"$id\"" "0" "$$" "$log_path"
. $file_task_before
. $file_task_before >> $log_path 2>&1
timeout -k 10s $command_timeout_time "$@" 2>&1 >> $log_path
timeout -k 10s $command_timeout_time "$@" >> $log_path 2>&1
. $file_task_after
. $file_task_after >> $log_path 2>&1
[[ $id ]] && update_cron "\"$id\"" "1" "" "$log_path"
local end_time=$(date '+%Y-%m-%d %H:%M:%S')
local diff_time=$(($(date +%s -d "$end_time") - $(date +%s -d "$begin_time")))

View File

@ -141,16 +141,12 @@ update_repo() {
local blackword="$3"
local dependence="$4"
local branch="$5"
local urlTmp="${url%*/}"
local repoTmp="${urlTmp##*/}"
local repo="${repoTmp%.*}"
local tmp="${url%/*}"
local authorTmp1="${tmp##*/}"
local authorTmp2="${authorTmp1##*:}"
local author="${authorTmp2##*.}"
local repo_path="${dir_repo}/${author}_${repo}"
[[ $branch ]] && repo_path="${repo_path}_${branch}"
local repo_path="${dir_repo}/${uniq_path}"
local formatUrl="${github_proxy_url}${url/https:\/\/ghproxy.com\//}"
if [ -d ${repo_path}/.git ]; then
@ -392,6 +388,21 @@ gen_list_repo() {
cd $dir_current
}
get_uniq_path() {
local url="$1"
local branch="$2"
local urlTmp="${url%*/}"
local repoTmp="${urlTmp##*/}"
local repo="${repoTmp%.*}"
local tmp="${url%/*}"
local authorTmp1="${tmp##*/}"
local authorTmp2="${authorTmp1##*:}"
local author="${authorTmp2##*.}"
uniq_path="${author}_${repo}"
[[ $branch ]] && uniq_path="${uniq_path}_${branch}"
}
main() {
local p1=$1
local p2=$2
@ -413,8 +424,8 @@ main() {
;;
repo)
get_user_info
local name=$(echo "${p2##*/}" | awk -F "." '{print $1}')
log_path="$dir_log/update/${log_time}_$name.log"
get_uniq_path "$p2" "$p6"
log_path="$dir_log/update/${log_time}_${uniq_path}.log"
echo -e "## 开始执行... $begin_time\n" >> $log_path
if [[ -n $p2 ]]; then
update_repo "$p2" "$p3" "$p4" "$p5" "$p6" | tee -p -a $log_path
@ -425,8 +436,8 @@ main() {
;;
raw)
get_user_info
local name=$(echo "${p2##*/}" | awk -F "." '{print $1}')
log_path="$dir_log/update/${log_time}_$name.log"
get_uniq_path "$p2"
log_path="$dir_log/update/${log_time}_${uniq_path}.log"
echo -e "## 开始执行... $begin_time\n" >> $log_path
if [[ -n $p2 ]]; then
update_raw "$p2" | tee -p -a $log_path