#!/bin/bash # script to run query to databases function usage() { cat < $log queries=("${@}") queries_count=${#queries[@]} index=0 while [ "$index" -lt "$queries_count" ]; do query=${queries[$index]} if [[ $query == "" ]]; then let "index = $index + 1" continue fi comment_re='--.*' if [[ $query =~ $comment_re ]]; then echo "$query" echo else echo "query:" "$query" expect -c "#!/bin/bash #!/bin/expect # Set timeout set timeout 600 # Get arguments set query [lindex $argv 0] spawn clickhouse-client --multiline; expect \":) \" send \"$query;\r\"; expect \":) \" send \"quit\";" >> "$log" fi let "index = $index + 1" done echo "stop time: $(date)" >> $log } mapfile -t test_queries < $test_file execute "${test_queries[@]}" echo "Error list" cat $log echo echo Error list\: cat $log | grep -iP 'error|exception'