Вам нужно использовать "$startdate"
вместо \'$startdate\'
в вашем скрипте.
../prog_access.sh -StartDate "$startdate" -EndDate "$enddate"
\'2018 04 22\'
- это не то же самое, что '2018 04 22'
. Передача этой строки в качестве аргумента команды в сценарии имеет тот же эффект, что и ввод
../prog_access.sh -StartDate \'2018 04 22\' -EndDate \'2018 04 23\'
в командной строке, и этот подход приводит к тому, что аргумент StartDate
читается как '2018
.
Кроме того, вы не можете использовать '$startdate'
в своем скрипте, поскольку он не заменит значение переменной.
Вы можете посмотреть ответ на этот вопрос, чтобы узнать, как bash передает аргументы из переменных и как их читают в различных случаях.