redo - aplikacja do szybkiego tworzenia aliasów

Redo1 to narzędzie, które umożliwia szybkie i łatwe stworzenie aliasu z kilku poleceń, które już wcześniej były wywołane.

Aplikacja hstr

Sprawdź artykuł o aplikacji hstr, która również przyspiesza pracę w terminalu

Instalacja

Poniżej skrypt instalujący wersję 0.5.0.
Zanim zainstalujemy to narzędzie, najlepiej sprawdzić najnowszą wersję na GitHub: release redo.

1REDO_VERSION=0.5.0
2wget https://github.com/barthr/redo/releases/download/v${REDO_VERSION}/redo_${REDO_VERSION}_Linux_x86_64.tar.gz
3tar -xf redo_${REDO_VERSION}_Linux_x86_64.tar.gz redo
4sudo mv redo /usr/local/bin
5rm -rf redo_${REDO_VERSION}_Linux_x86_64.tar.gz redo

Niestety w Ubuntu 20.04 nie są domyślnie wyeksportowane zmienne:

  • HISTFILE wskazująca na plik z historią poleceń
  • EDITOR wskazująca na edytor plików tekstowych

W celu poprawnego działania narzędzia możemy ustawić zmienne REDO_HISTORY_PATH i REDO_EDITOR
Poniżej skrypt, który dodaje te zmienne do pliku ~/.bashrc

1echo 'export REDO_HISTORY_PATH=$HISTFILE' >> ~/.bashrc
2echo 'export REDO_EDITOR=vim' >> ~/.bashrc

Zalecam też zmianę zachowania historii poleceń bash, aby:

  • każde polecenie od razu po wpisaniu było dostępne w pliku .bash_history (standardowo dopiero po zakończeniu sesji)
  • widoczne były polecenia z różnych sesji (jeżeli pracujemy na kilku jednocześnie)
1echo 'shopt -s histappend' >> ~/.bashrc
2echo 'export PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}"' >> ~/.bashrc

Należy też dodać wczytywanie pliku z utworzonymi aliasami za pomocą tego narzędzia.

1echo 'source "$(redo alias-file)"' >> ~/.bashrc

Na koniec uruchamiamy zaczytanie wprowadzanych zmian do aktualnej sesji terminala.

1source ~/.bashrc

Cały skrypt do instalacji dostępny jest na GIST.

1curl https://gist.githubusercontent.com/speedlog/ae6c34cee56d758231560c64ac5f53e9/raw/28a4cf1e586e89ddc70aa4f8a96e4d489ad6ad2d/install_redo.sh | bash

Utworzenie aliasu za pomocą redo

W celu utworzenia aliasu należy wpisać polecenie redo.
Pokazuje się lista ostatnio uruchomionych poleceń.
Listę możemy przeglądać za pomocą strzałek góra/dół.
Możemy też filtrować historię wciskając / i wpisując fragment tekstu, którego szukamy.
Polecenia, które chcemy dodać do aliasu oznaczamy spacją. Przy wyborze pokazuje kolejność uruchomienia polecenia w aliasie.
Na koniec klikamy ENTER i wpisujemy nazwę jaką chcemy nadać dla danego aliasu.

Poniżej animacja z przykładem utworzenia aliasu rdk_install w celu:

  • przełączenia się na katalog z projektem
  • zaciągnięcia najnowszych zmian z repozytorium
  • ustawienie za pomocą sdkman java w wersji 11 (to polecenie zostanie znalezione za pomocą filtrowania)
  • przebudowania projektu za pomocą gradle (to polecenie zostanie znalezione za pomocą filtrowania)
  • postawienia na nowo środowiska za pomocą docker-compose

Przykład korzystania z redo

Wywołanie utworzonego aliasu

Utworzone aliasy znajdują się w pliku, którego nazwę można sprawdzić po uruchomieniu polecenia

1redo alias-file

Po utworzeniu aliasu, aby móc z niego natychmiast korzystać należy zaczytać plik

1source $(redo alias-file)

lub otworzyć nowy terminal.

Teraz wystarczy w linii poleceń użyć nazwy aliasu, która została nadana podczas tworzenia. W powyższym przykładzie było to run_rdk

Tłumaczenia: