#!/bin/bash REVISION="00a88b99368d7141380f65d9cb446f1e4771ba01" echo "tree service revision ${REVISION}" # regexp below find all link to source code files which end with ".pb.go" and retrieve the file names # we use `[^.]*` as non greedy workaround for `.*` FILES=$(curl -s https://git.frostfs.info/TrueCloudLab/frostfs-node/src/commit/${REVISION}/pkg/services/tree | sed -n "s,.*\"/TrueCloudLab/frostfs-node/src/commit/${REVISION}/pkg/services/tree/\([^.]*\.pb\.go\)\".*,\1,p") for file in $FILES; do echo "sync '$file' in tree service" curl -s "https://git.frostfs.info/TrueCloudLab/frostfs-node/raw/commit/${REVISION}/pkg/services/tree/${file}" -o "./pool/tree/service/${file}" done