Я немного заржавел в сценариях bash. Я создал следующий скрипт:
#!/bin/bash
display_usage() {
echo -e "\nUsage: This script must be run with both a valid source and a target client name."
echo -e "Example: ./createClientRolesRespChart <source client name> <target client name>\n"
}
mv $1 $2
# If less than two arguments supplied, display usage
if [ $# -le 1 ]; then
display_usage
exit 1
fi
if [ $? -eq 0 ]; then
echo "Created new response chart for the $2 client."
exit 0
else
echo "[Error] Move (mv) command failed. Please check parameters are correct."
exit 1
fi
Сценарий работает, НО, если я введу неправильное имя файла, команда не выполнится, однако она все равно печатает сообщение об успехе. Любые намеки. Должно быть легко. Я просто забываю: (
bash-3.2$ ./createClientRolesRespChart foo bar
mv: rename foo to bar: No such file or directory
Created new response chart for the bar client.