Blog (72)
Komentarze (4.5k)
Recenzje (0)

CommandWrapper - narzędzie rozszerzające semantykę wiersza poleceń.

@nintyfanCommandWrapper - narzędzie rozszerzające semantykę wiersza poleceń.
14.04.2022 18:30

CommandWrapper, to moje, bardzo proste narzędzie. Służy do rozszerzenia powłoki/poleceń o dodatkowe możliwości. Nie są to żadne czary, po prostu, gdy chce się rozszerzyć zakres obsługiwanych funkcji, całe polecenie poprzedza się znakiem +. + to właśnie skrypt CommandWrapper.

CommandWrapper czyta ze zmiennej środowiskowej CommandWrapper. Należy tam podać aktywne moduły rozszerzające nasze polecenie,  a po każdej nazwie polecenia, nazwę użytkownika, który ma wykonać polecenie. Jeżeli nazwa użytkownika będzie pusta lub zostanie pominięta (pominąć można tylko nazwę użytkownika po nazwie ostatniego rozszerzenia), to uruchomi to moduł rozszerzający na prawach obecnego użytkownika. W tej chwili dostępny jest jedynie prosty moduł dla echo. Dodaje obsługę ładnych nazw dla kolorów, np. red, green, itd. Dodaje także możliwość wyboru czy chcemy kolorować kolor tła lub tekstu, korzystając z ładnych przełączników.

Zastosowań jest sporo. Np. można dodać ładny przełącznik do mount, by ten dodał wpis do fstab. Jednak obecnie nieco to pomniejsza bezpieczeństwo. Stąd możliwość podania użytkownika w zmiennej. Wystarczy wyświetlić zmienną, by się przekonać, że moduł być może nie zrobi nic złego. Nadal pozostaje kwestia tego, że moduły modyfikują parametry polecenia, ale planuję dodać przełącznik wyświetlający ostateczny wynik i pytający, czy wykonać.

Planuję to rozszerzyć również o opcjonalną lokalizację.

Program dostępny jest na: https://github.com/nintyfan/CommandWrapper

OprogramowanieLinux
Udostępnij:
Wybrane dla Ciebie
Komentarze (0)