С bash не знаком, но вот столкнулся с задачей, и хочу немного вникнуть. Есть файл который автоматически создаёт докер контейнер и через таймаут его уничтожает. Буду благодарен если поясните логику работы этого скрипта, особо благодарен если построчно опишете что он делает. (сразу непонятно и вводит в ступор
set -e
to=$1
итд)
#!/bin/bash
set -e
to=$1
shift
cont=$(docker run --rm -d "$@")
code=$(timeout "$to" docker wait "$cont" || true)
docker kill $cont &> /dev/null
echo -n 'status: '
if [ -z "$code" ]; then
echo timeout
else
echo exited: $code
fi
echo output:
# pipe to sed simply for pretty nice indentation
docker logs $cont | sed 's/^/\t/'
docker rm $cont &> /dev/null