Programowanie BASH

Jak sprawić, by BASH bardziej Ci odpowiadał

Jak sprawić, by BASH bardziej Ci odpowiadał
BASH ma prostą standardową konfigurację, która jest świetna, ale możesz chcieć więcej! Wielu użytkowników komputerów unika wiersza poleceń, ponieważ jest trudny w użyciu. To błędne przekonanie. Linia poleceń ma krzywą uczenia się, aby rozpocząć, wymaga pewnej wiedzy. Jednak ci, którzy wiedzą kilka rzeczy, jest szybszy i często łatwiejszy. Po zapoznaniu się z kilkoma podstawowymi poleceniami absolutnie niezbędną umiejętnością jest czytanie dokumentacji. To może nie brzmieć jak umiejętność, ale tak jest. Powodem jest to, że dokumenty są ogólne, nie odpowiedzą na Twoje konkretne pytanie, musisz wyprowadzić odpowiedź z posiadanych informacji. Kiedy uruchamiasz swoje środowisko, system posiada pliki kontrolujące, jakie ustawienia domyślne będą ustawione w wielu aplikacjach. W przypadku bash masz kilka plików, które to kontrolują. Te pliki w kolejności i tylko wtedy, gdy inne nie istnieją.

Co możesz zmienić?

Mnóstwo rzeczy, ale zmiany, które zauważysz jako pierwsze, to te, które ustawiają Twój monit. Masz również aliasy i zmienne środowiskowe. Wiele z nich jest ustawionych tak, aby upewnić się, że używasz właściwych bibliotek i plików wykonywalnych podczas uruchamiania aplikacji. Pliki również kontrolują i dodają funkcje do powłoki, przykładem jest historia. W basha masz plik historii zawierający ostatnie wprowadzone przez Ciebie polecenia. Możesz wybrać, czy historia ma przechowywać duplikaty i jak duży ma być plik. Jest o wiele więcej rzeczy, które możesz uruchomić. Ładny przykład narzędzi dostępnych w bash-it.

Gdzie to jest przechowywane?

To wygląda na prostą listę kilku plików, które są uruchamiane podczas uruchamiania. Jednak ze względu na sposób, w jaki zaczyna się bash, jest kilka komplikacji. Jednym z nich jest to, że chcesz mieć pewne ustawienia dla systemu, a niektóre za każdym razem, gdy otwierasz powłokę. Plik /etc/profile uruchamia się podczas logowania, zauważ, że często wywołuje /etc/profile.d/* aby ustawić określone wartości. W Ubuntu ustawia ścieżki przyciągania, zarówno dla tego, gdzie znajdują się pliki binarne, jak i gdzie xdg wywołuje aplikacje. Ten plik dotyczy całego systemu, więc nie używaj go do ustawień osobistych. W przypadku plików systemowych również masz also itp/bash.bashrc, ten plik ma nazwę /etc/bashrc poza dystrybucjami opartymi na debianie. Administrator ustawia, miejmy nadzieję, rozsądne ustawienia domyślne dla wszystkich użytkowników systemu. Jeśli nie zgadzasz się z tymi ustawieniami, możesz je zastąpić w ~.bashrc, dla specjalnego użytkownika.

Wiem, że możesz być zarówno użytkownikiem, jak i administratorem! Następny plik, który musisz wziąć pod uwagę, to ~/.profil, działa przy logowaniu, a nie przy starcie powłoki. Zaczyna się również tylko wtedy, gdy .profil bash lub .bashlogin nie istnieje. Wersja standardowa sprawdza, jaka powłoka zostanie uruchomiona. Kiedy .plik profilu uruchamia się, zaczyna ~/.bashrc, jeśli istnieje. ~/.Plik bashrc to miejsce, w którym powinieneś ustawić swoje aliasy i inne ustawienia osobiste. Interesujące są dwa inne pliki, ~/.bashlogout i ~/.inputrc, pierwszy działa przy wylogowaniu. Domyślnie czyści konsolę. Bardziej interesujący jest plik inputrc. Tutaj zmieniasz klawisze i uderzenia klawiszy. Możesz ustawić sposób edycji w wierszu poleceń. Domyślnie jest to edycja stylu emacs, ale możesz to zmienić na styl vi.

Kilka przykładów zmian do wprowadzenia.

Zaktualizuj swój monit… Aby Twój monit wyglądał ładniej lub zawierał więcej informacji, możesz zmienić wartości PS1. Po pierwsze możesz sprawdzić jaką masz już wartość.

$ echo $PS1

Wynik wygląda trochę tajemniczo, chyba że ustawiłeś go na ciąg. Spróbuj:

$ PS1 = „Fajny monit!"

Nie jest to zbyt przydatne, możesz zamiast tego ustawić wartości, które informują Cię o tym, co dzieje się w Twoim systemie. Oto krótka tabela niektórych wartości:

\u Obecna nazwa użytkownika
\h Obecna nazwa hosta
\w Aktualny katalog roboczy
\s Nazwa powłoki
\t Czas w formacie 24-godzinnym

Jako wyzwanie ustaw monit tak, aby Twoja nazwa użytkownika i nazwa hosta były poprawnie oznaczone znakiem ampersand. Możesz także użyć zmiennych zdefiniowanych przez system, a nawet wyników skryptów. Ustaw schemat kolorów… Możesz mieć swój wydruk w kolorze, a także mieć różne kolory dla każdego typu plików. Najpierw utwórz kolorowy monit. Kolor może się zmienić w całym monicie. Aby rozpocząć nowy kolor, dodaj '\e[x,ym' och stoppa med '\e[m. Oto przykład.

$ PS1="\e[0;35m \[email chroniony]\h \e[m \e[0;32m \d \A\e[m \$ >"

umask, jak to działa… W powłoce masz ustawienie o nazwie „umask”, które określa, jak uprawnienia do plików są ustawiane podczas ich tworzenia. Najpopularniejsza wartość to 022. Dzięki temu pliki mają uprawnienia, które pozwalają użytkownikom czytać i pisać, a wszystkim innym tylko czytać. W ten sposób musisz zmienić nowe pliki skryptów na wykonywalne jako oddzielna akcja. To bezpieczny sposób na obsługę plików.

definicje funkcji… Możesz także włączyć funkcje, których format może być zgodny z POSIX lub bash. Jeśli planujesz przełączać się między powłokami, sprawdź, jak zachować zgodność. Możesz także uruchomić skrypt w monicie.

#!/bin/bash
# lsbytesum - liczba bajtów na liście katalogów
Całkowita liczba bajtów=0
dla bajtów w $(ls -l | grep "^-" | awk ' print $5 ')
zrobić
TotalBytes=$TotalBytes+$Bytes
gotowy
TotalMeg=$(echo -e "\n$TotalBytes/1048576 \nzakończ" | bc)
echo -n "$TotalMeg"

Jeśli masz powyższy kod (kredyt dla TLDP), możesz go wywołać w swoim zgłoszeniu (PS1). Aby to ustawić, dodaj to do swojego bashrc.

$ PS1="[\[zabezpieczone wiadomości e-mail]\h:\w (\$(lsbytes) Mb)]\$ "

Możesz oczywiście uruchomić go ręcznie, aby najpierw sprawdzić, czy ci się spodoba. W tym stylu nie ma kolorów, trzeba łączyć wiele różnych ustawień.

Gdy już zdecydujesz, czego chcesz, musisz umieścić wartości w swoim .plik bashrc.

Wniosek

Bash ma wiele funkcji, które możesz wykorzystać, aby Twoje środowisko działało lepiej. Możesz wykonać wiele prac szybciej, jeśli nauczysz się być wydajnym. Jednym ze sposobów jest tworzenie aliasów, innym jest tworzenie własnych skryptów. Jeśli poświęcisz trochę czasu na pokonanie początkowej bariery, może to być bardzo korzystne dla Twojej wydajności.

Gry Jak wyświetlić nakładkę OSD w pełnoekranowych aplikacjach i grach dla systemu Linux?
Jak wyświetlić nakładkę OSD w pełnoekranowych aplikacjach i grach dla systemu Linux?
Granie w gry pełnoekranowe lub korzystanie z aplikacji w trybie pełnoekranowym bez rozpraszania uwagi może odciąć Cię od istotnych informacji systemow...
Gry 5 najlepszych kart do przechwytywania gier
5 najlepszych kart do przechwytywania gier
Wszyscy widzieliśmy i uwielbialiśmy strumieniowe rozgrywki na YouTube on. PewDiePie, Jakesepticye i Markiplier to tylko niektórzy z najlepszych graczy...
Gry Jak stworzyć grę na Linuksie
Jak stworzyć grę na Linuksie
Dziesięć lat temu niewielu użytkowników Linuksa przewidywało, że ich ulubiony system operacyjny pewnego dnia stanie się popularną platformą do gier dl...