Esses são scripts em lote - como no lote do Microsoft Windows. FINDSTR foi introduzido no Windows NT 4 Resource Kit.
::
e rem
são comentários. (Ou ::
é, na verdade, um rótulo com o nome inválido ).
Você provavelmente poderia executá-los com wine
cmd
, mas seria melhor portá-los para algum script nativo (perl, python, bash, etc.).
Exemplo simples:
#!/bin/bash
# Function to print usage and exit
usage()
{
printf "Usage: %s [repository] [transaction_id]\n" $(basename "$1") >&2
exit 1
}
# Check that we have at least 2 arguments
[ $# -ge 2 ] || usage
repo="$2"
trans_id="$2"
# Check that command succeed, and set variable "msg" to output
if ! msg="$(svnlook log "$repo" -t "$trans_id")"; then
printf "Check path and id.\n" >&2
usage
fi
# If msg is empty
if [ "$msg" = "" ]; then
printf \
"Your commit has been blocked because you didn't give any log message
Please write a log message describing the purpose of your changes and
then try committing again. -- Thank you.\n" >&2
exit 2
fi
# Else default exit AKA 0