2013-02-12 2 views
0

Попытки приготовить простую оболочку совершить сценарий для мерзавца, каккотировки в UNIX оболочка

git add . 
git commit -m [email protected] 
git push origin master 

, чтобы запустить его в ./script.sh «коммита» манера

я столкнулся с вопросом фиксации сообщений, содержащих пространство. Я понимаю, что мне нужно обернуть $ @ в кавычки на строку 2, но все мои попытки потерпели неудачу до сих пор (я попробовал прямо ", затем \", а затем придумал '\' ', который я нашел, исследуя, все равно не повезло). Пожалуйста помоги!

ответ

1

Просто замените [email protected] с "[email protected]". Это должно делать свое дело.

+0

Это может быть случай, когда '' $ * "' является лучшим выбором. Если 'script.sh' не нужно принимать какие-либо другие аргументы, это освобождает пользователя от необходимости указывать сообщение фиксации при вызове' script.sh'. Все аргументы будут объединены в одно слово для '-m'. – chepner

1

Если вы используете скрипт как:

./script.sh 'commit message' 

затем сообщение фиксации просто $1, и ваш сценарий должен содержать:

git commit -m "$1" 
Смежные вопросы