W celu wprowadzenia informacji do zmiennej, przypisać go:
myvar=myvalue
jednak chcesz obliczyć wartość przypisać, ty nie tylko przypisuje stałą do zmiennej. W twoim przypadku chcesz przypisać dane wyjściowe polecenia do zmiennej.
Najpierw musisz dowiedzieć się, jak zdobyć ostatnią nazwę tagu. Zostawię to tobie, ponieważ nie powiedziałeś nic o tworzeniu nazw tagów.
Następnie, gdy otrzymasz polecenie, które podaje ostatnią nazwę znacznika, musisz przypisać nazwę do zmiennej. Bash robi to z "podstawieniem polecenia".
Na przykład: thetagname=$(command_to_get_tag_name)
Więc jeśli były po prostu wziąć ostatni znak, że raporty git jak ten:
git tag | tail -1
następnie można przypisać ją do zmiennej tak:
thetagname=$(git tag | tail -1)
i można użyć/zobacz wartość podobną do poniższej:
echo $thetagname
lub user1281385 mówi tak:
echo ${thetagname}
dwóch metod są takie same, z wyjątkiem, że drugi sposób pozwala na łączenie tekstu dosłownego o wartości zmiennej:
echo ${thetagname}ing
który doda "ing" do zawartości $ zmiennej. Klamry są konieczne, aby zapobiec myśleniu, że "zmienna" jest zmienną.
Strona man bash zawiera sekcję o nazwie EXPANSION, w której wyjaśnia 7 rodzajów ekspansji. Podstawienie poleceń jest jednym z nich. Strona bash man jest dość duża i powtarza wiele interesujących słów kluczowych wiele razy, więc szukanie rzeczy w tym jest naprawdę irytujące.Oto kilka wskazówek, jak znaleźć części rozszerzającej (i dowiedzieć się trochę o pager „mniej”):
start ręczny czytnik czytając stronę man bash tak:
man bash
Szukaj dla terminu "EXPANSION" na początku linii, gdy jesteś w czytniku, wpisując /^EXPANSION
na wyświetlaczu. Po wpisaniu /
zobaczysz/u dołu ekranu, ale strona podręcznika będzie tam nadal. To jest polecenie wyszukiwania wzorca. Następnie wpisujesz ^EXPANSION
, a zobaczysz to również na dole ekranu.^oznacza "szukanie rzeczy na początku linii", a EXPANSION oznacza "szukaj literalnego ciągu znaków" ROZSZERZENIE ", następnie wpisz <enter>
- i powinieneś być na pierwszym wystąpieniu terminu ROZSZERZENIE występującego na początku wiersza W tym miejscu opisano wszystkie rodzaje rozszerzeń, jakie powłoka bash wykonuje na linii po jej wpisaniu, a przed wykonaniem transformowanego polecenia:
W pager można wpisać h
, aby uzyskać listę możliwych poleceń .
mam nadzieję, że nie było to zbyt proste. Jeśli nie widziałem go wcześniej, trudno się dowiedzieć.
możliwy duplikat [Jak uzyskać najnowszą nazwę tagu w bieżącym oddziale w Git?] (Http://stackoverflow.com/questions/1404796/how-to-get-the-latest-tag-name-in- current-branch-in-git). Tylko duplikat, ponieważ jawnie potrzebujesz 'Chcę zapisać nowy znacznik repozytoriów w zmiennej', reszta to po prostu Bash. –