У меня есть сценарий sh, который я использую на компьютерах с Windows и Mac / Linux, и, кажется, он нормально работает без проблем.
#!/bin/bash
if [ -z "$jmxname" ]
then
cd ./tests/Performance/JMX/ || exit
echo "-- JMX LIST --"
# set the prompt used by select, replacing "#?"
PS3="Use number to select a file or 'stop' to cancel: "
# allow the user to choose a file
select jmxname in *.jmx
do
# leave the loop if the user says 'stop'
if [[ "$REPLY" == stop ]]; then break; fi
# complain if no file was selected, and loop to ask again
if [[ "$jmxname" == "" ]]
then
echo "'$REPLY' is not a valid number"
continue
fi
# now we can use the selected file, trying to get it to run the shell script
rm -rf ../../Performance/results/* && cd ../jmeter/bin/ && java -jar ApacheJMeter.jar -Jjmeter.save.saveservice.output_format=csv -n -t ../../JMX/"$jmxname" -l ../../results/"$jmxname"-reslut.jtl -e -o ../../results/HTML
# it'll ask for another unless we leave the loop
break
done
else
cd ./tests/Performance/JMX/ && rm -rf ../../Performance/results/* && cd ../jmeter/bin/ && java -jar ApacheJMeter.jar -Jjmeter.save.saveservice.output_format=csv -n -t ../../JMX/"$jmxname" -l ../../results/"$jmxname"-reslut.jtl -e -o ../../results/HTML
fi
Сейчас я пытаюсь кое-что сделать с помощью докера. и использовал узел: alpine image, так как остальная часть моего проекта основана на NodeJS, но по какой-то причине скрипт не будет работать в контейнере Docker, давая следующее -
line 12: syntax error: unexpected "do" (expecting "fi")
Я просто незнать, что делать, так как, кажется, что скрипт работает для каждой системы, на которой он до сих пор работал, и не вызывает никаких проблем ..
Надеюсь, кто-то может помочь