Я пытаюсь автоматизировать check-ins ClearCase с помощью скрипта ksh. Существует странная проблема, когда следующая команда не будет выполняться, пока она является частью сценария автоматизации, но работает нормально, если я вставляю ее в командную строку.Команда ClearCase не запускается в скрипте
Отрывок сценария:
for dir in `cat $DIRS`
do
RUNCMD="cleartool find <<vob_directory>>/$dir -type f -exec 'cleartool co -nc \$CLEARCASE_PN'"
print $RUNCMD
$RUNCMD
done
exit 1
производит следующую команду,
cleartool find <<vob_directory>> -type f -exec 'cleartool co -nc $CLEARCASE_PN'
Вот ошибка
cleartool: Error: Extra arguments: "co"
Usage: find { pname ... [-depth | -nrecurse | -directory]
| [pname ...] -all [-visible | -nvisible]
| -avobs [-visible | -nvisible]
}
[-name 'pattern']
[-cview]
[-user login-name]
[-group group-name]
[-type {f|d|l}...]
[-follow]
[-kind object-kind]
[-nxname]
[-element query]
[-branch query]
[-version query]
{-print | -exec command-invocation | -ok command-invocation} ...
Что я здесь делаю неправильно?
Я думаю, что вы на что-то о том, что команда была расширена (или * не * расширена) правильно. Я попробовал несколько «стилей» кавычек, но в конечном счете никто не работал. Цените, что вы даете мне множество глаз. – user1766760
спасибо за ссылки - я отмечаю ваш ответ как ответ, потому что это будет более полезно. И я не знаю о различиях между 'ksh' и' bash'. – user1766760