Функция bash, игнорирующая точку для команды git clone
Я борюсь с функцией bash, которая не будет клонировать текущую директорию, она делает папку проекта:
cloneproject() { git clone git@bitbucket.org:codyc54321/$1.git . ;}
У меня есть точка в конце, перед точкой с запятой, но если запустить ее в каталоге с именем "bookwormbuddy", он добавит новую папку проекта, как будто вы запустили клон без точки:
me@pc:~/projects/bookwormbuddy$ cloneproject bookwormbuddy
Cloning into 'bookwormbuddy'...
Тем не менее, когда я запускаю ту же команду из терминала, она работает так, как я привык:
me@pc:~/projects/bookwormbuddy$ git clone git@bitbucket.org:codyc54321/new_bookmarks.git .
Cloning into '.'...
Мне это нужно, так как я называю проекты разными по хранилищу по причинам. Как я могу заставить Ubuntu уважать точку? Спасибо
1 ответ
Вы можете избежать точки, чтобы сказать Bash, что не следует рассматривать его как часть регулярного выражения:
cloneproject() { git clone git@bitbucket.org:codyc54321/$1.git \. ;}
Как говорится в этом посте, Bash будет рассматривать одну точку как значение "любой символ".