10 najlepszych sztuczek dla terminala

1. Wykonaj ostatnie polecenie za pomocą !!

Tytuł mówi wszystko, po prostu wprowadź następujące informacje w terminalu ...

!!

...aby ponownie uruchomić ostatnio wprowadzone polecenie. Ta sztuczka jest bardzo przydatna, gdy zapomnimy wejść sudo na początku. W takim przypadku musiałbyś wpisać:

sudo !!

Aby odkryć bardziej złożone sposoby na maksymalne wykorzystanie tej sztuczki, polecam przeczytanie tego stary post.

2. Wykonaj ostatnie polecenie, ale poprawiając błąd pisarski

Ta sztuczka jest naprawdę przydatna, gdy wpisujemy polecenie z prostą literówką. Na przykład, jeśli wykonamy:

Echo "desdelinuxz"

Możesz to poprawić, wpisując:

^z

3. Wywołaj edytor tekstu, aby wprowadzić długie polecenie

Czasami konieczne jest wprowadzenie niekończących się poleceń w terminalu. W takim przypadku pomocna może okazać się pomoc prostego edytora tekstu, takiego jak nano lub emacs.

Aby otworzyć edytor, po prostu naciśnij Ctrl + x + e w terminalu. Tekst wprowadzony do tej pory zostanie skopiowany do edytora tekstu po jego otwarciu.

Z kolei używanym edytorem będzie ten określony w zmiennej $EDITOR. Aby zmienić to ustawienie, możesz uruchomić…

eksportuj EDYTOR = nano

… Zastąpienie nano preferowanym edytorem.

4. Wykonaj polecenie bez zapisywania go w historii

Prawdziwy haker nie może zignorować tej sztuczki. Jak wszyscy wiedzą, bash zapisuje historię wykonanych poleceń, do której dostęp jest bardzo łatwy za pomocą strzałek na klawiaturze lub Ctrl + R (aby wykonać wyszukiwanie do tyłu w historii).

W takim przypadku to, co musisz zrobić, aby wprowadzona komenda nie została zapisana w historii, to postawić spację na początku:

Komenda

5. Automatycznie ustaw ostatni parametr polecenia

Załóżmy, że polecenie wykonane wcześniej to

cp plik.txt / var / www / wp-content / uploads / 2009/03 /

Aby uzyskać dostęp do danego katalogu, możesz wprowadzić polecenie cd następnie Alt +. o Esc +. :

cd „ALT +”.

To jest tylko skrótowy sposób wpisywania:

cd / var / www / wp-content / uploads / 2009/03 /
Kontynuując naciskanie wspomnianego skrótu klawiaturowego, można przeglądać historię ostatnio wykonanych poleceń.

6. Wykonaj polecenie w określonym czasie

Tak, tak, po to istnieje cron. Czasami jednak chcemy, aby polecenie zostało uruchomione w określonym czasie, ale tylko raz.

Załóżmy, że chcemy wykonać polecenie ls -l o północy. W takim przypadku musimy to wykonać w następujący sposób:

echo "ls -l" | o północy

7. Uzyskaj zewnętrzny adres IP

Dzięki usłudze świadczonej przez http://ifconfig.me/ Możesz uzyskać różne informacje o swoim połączeniu internetowym bezpośrednio z terminala:

curl ifconfig.me/ip // adres IP curl ifconfig.me/host // host zdalny curl ifconfig.me/ua // agent użytkownika curl ifconfig.me/port // port

8. Dowiedz się, jak używać Ctrl + U i Ctrl + Y

Ile razy zdarzyło Ci się, że zacząłeś pisać polecenie i przypomniałeś sobie, że wcześniej miałeś zrobić coś innego? Cóż, można zrobić coś w rodzaju cut-paste, aby później łatwiej było ponownie wprowadzić polecenie pozostawione w połowie.

Załóżmy, że zacząłeś pisać ...

cd / home / user

i pamiętałeś, że zanim musiałeś coś sprawdzić w bieżącym katalogu. W takim przypadku naciśnij Ctrl + U (To byłoby coś w rodzaju „cięcia”).

Wpisz polecenie, które musiało zostać uruchomione jako pierwsze. Przypuśćmy ...

ls -l

... a następnie naciśnij Ctrl + y (Działa jak „wklej”).

9. Łatwo wyczyść terminal

z Ctrl + l terminal można wyczyścić w mgnieniu oka.

10. Przejdź do katalogu, uruchom polecenie i wróć do bieżącego katalogu

Ta sztuczka to przyjemność. Aby wykonać serię poleceń bez opuszczania bieżącego katalogu, po prostu zgrupuj je w nawiasach. Jak większość wie, aby wykonać serię poleceń, musisz je połączyć za pomocą &&. Korzystając z tych pojęć, możemy wykonać coś takiego:

(cd / tmp && ls)

Rezultatem tego polecenia (zwróć uwagę na nawiasy) będzie lista plików i katalogów w folderze / Tmp. Wszystko bez wychodzenia z naszego aktualnego katalogu. Klejnot!

Yapa. Wymień najczęściej używane polecenia

Zobaczyć ich najczęściej używane polecenia po prostu wykonaj następujące czynności:

historia | awk '{a [$ 2] ++} END {for (i in a) {print a [i] "" i}}' | sort -rn | głowa

W moim przypadku zwycięzcami zostali:

450 yaourt 415 sudo 132 git 99 cd 70 leafpad 70 killall 68 ls 52 pacman 50 xrandr 45 top

Fanom terminali, takich jak ten serwer, polecam odwiedzić linia poleceń. Dlaczego nie, nie przestawaj patrzeć na plik Archiwum z naszego bloga.

Czy brakuje jakichś sztuczek? Nie zapomnij udostępnić i skomentować poniżej. 🙂

Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   lis powiedział

    Był jeden, którego użyłem, który pomijał wielkie litery w moim inputrc, ponieważ szczerze mówiąc, wiele plików, które zaczynały się w ten sposób, przemknęło mi przez głowę.

  2.   Jezus Perales powiedział

    Myślę, że jednym z najważniejszych jest polecenie historii, w którym zwraca listę numerowaną.
    poleceń, których użyłeś, a jeśli chcesz użyć któregokolwiek z nich, po prostu użyj następującego wiersza
    ! 22

    który wykona polecenie, które jest w twojej historii pod numerem 22 😀

    Aby wyszukać jakieś polecenie z autouzupełnianiem, jest
    Ctrl + r

    1.    Xurxo powiedział

      Zawsze używam Ctrl+r, aby powtórzyć ostatnie polecenie; gdy pojawi się ostatni, możesz przewinąć historię do tyłu, naciskając Page Re (strzałka w górę).

      Pozdrowienia.

  3.   Rodrigo bravo powiedział

    Dobry artykuł. Dzięki za podzielenie się tymi wskazówkami.
    Chcę udostępnić jeden, którego używam codziennie, czyli „fg”, który umożliwia otwieranie zatrzymanych wcześniej aplikacji za pomocą „Ctrl+z”.

    1.    giskard powiedział

      A 'bg' wysyłasz je na dalszy plan 🙂

    2.    użyjmy Linuksa powiedział

      Spójrz na siebie... dobra sztuczka! Dziękujemy za udostępnienie.
      Przytulić! Paweł.

  4.   Gabriel powiedział

    Świetny post, zawsze przypominają rzeczy, które się znało i z czasem zapomniało, a które są naprawdę przydatne.

  5.   Qvic powiedział

    Kody terminalowe są zawsze mile widziane.
    Niewiarygodne, że nie wiedziałem, że dodanie spacji do polecenia zostało pominięte w Historii.
    Dziękuję bardzo Pozdrawiam!!

  6.   Ezechiel powiedział

    aby użyć filtrowania autouzupełniania historii dodaj w pliku $HOME/.inputrc
    "\e[5~": przeszukiwanie historii wstecz
    "\e[6~": przeszukiwanie historii do przodu

    i na przykład w pewnym momencie użyłeś:
    $ cd /a/ścieżka/dłuższa/niż/gówno

    a teraz chcesz go ponownie użyć, musisz zrobić:
    $ cd
    a następnie naciskaj klawisze «Page Up» lub «Page Down», aby poruszać się po wszystkich poleceniach w historii, które rozpoczęły się od «cd».

    1.    giskard powiedział

      ALBO…. Bez edytowania czegokolwiek naciskasz Ctrl+R, a następnie cd (jeśli chcesz wyszukać coś za pomocą „cd”), a wielokrotne naciskanie Ctrl+R spowoduje wyświetlenie wszystkich poleceń, które go zawierają, aż dojdziesz do tego, którego chcesz. Oczywiście, jeśli jest to ten bezpośrednio przed tym, jak wyjdzie z jednego.

    2.    użyjmy Linuksa powiedział

      Bardzo dobrze!

  7.   antyk powiedział

    Właściwie ls /tmp powinno wystarczyć do wyświetlenia katalogu bez opuszczania bieżącego.

  8.   zabójca powiedział

    Możesz także połączyć polecenie za pomocą „;” Tak jak w przykładzie 10, wyglądałoby to tak:

    (cd /tmp;ls)

    pozdrowienia

    1.    RudaMale powiedział

      On ";" działa inaczej niż „&&” (i), kiedy wykonujemy polecenie-1 && polecenie-2, drugie polecenie jest wykonywane tylko wtedy, gdy wyjściem pierwszego jest „0”, czyli bez błędu. W przypadku średnika drugie polecenie jest wykonywane niezależnie od wyniku pierwszego. Aby rozszerzyć, istnieje operator „||” (lub), w tym przypadku drugie polecenie jest wykonywane tylko wtedy, gdy pierwsze polecenie generuje błąd. Pozdrowienia.

  9.   Anonimo powiedział

    Aby każda linia zapamiętywana przez historię miała datę i godzinę, zmienna środowiskowa musi być ustawiona w pliku ~.bashrc zwykłego użytkownika lub roota.

    # nano .bashrc
    eksport HISTTIMEFORMAT=”%F%T”

    #historia
    492 2014-09-02 14:25:57 revdep-odbuduj -i -v
    493 2014-09-02 14:31:14 eclean-dist -d
    494 2014-09-02 14:31:23 lokalne usuwanie -v
    495 2014-09-02 14:31:29 itp-aktualizacja
    496 2014-09-02 14:31:54 emerge –depclean –udawać
    497 2014-09-02 14:39:08 aktualizacjab

    Jest więcej opcji, które dotyczą liczby zapisywanych linii, testuję je.

  10.   uchwyt T powiedział

    Bardzo dobry wpis. Naprawdę bardzo przydatne. Sztuczka numer 4, polegająca na wykonaniu polecenia bez zapisywania go w historii, zadziałała tylko dla mnie w ubuntu, nie w debianie ani w centos.

    1.    Azureus powiedział

      Działało to dla mnie w raspbian, a nie w arch.

  11.   Chaparral powiedział

    Merveilleux!!

  12.   erdżuak powiedział

    Cześć,
    Rzecz o wstawianiu spacji przed wykonaniem komendy, żeby nie zapisała się w historii, bo to nie działa...
    [użytkownik@host /]$ ls -l
    Razem 104
    dr-xr-xr-x. 2 root root 4096 21 sierpnia 03:55 bin
    dr-xr-xr-x. 5 root root 3072 20 sierpnia 17:26 boot
    drwxr-xr-x. 2 root root 4096 9 grudnia 2013 cgroup

    [użytkownik@host /]$historia
    1024 ls
    1025 ls
    1026 historia
    1027 ls -l
    1028 historia

    interesujący artykuł..

    pozdrowienia

  13.   erdżuak powiedział

    Przepraszam, że nie przeczytałem wszystkich postów.
    Test jest również wykonywany w centach.

  14.   Eliotime3000 powiedział

    Dobrze z Ctrl + U i Ctrl + Y.

  15.   Łodzik powiedział

    W moim systemie lista najczęściej używanych poleceń działała dla mnie, zmieniając zmienną na 5 USD.

    Przykład wyjścia:

    1122 Sudo
    362 ls
    279 wyczyść
    214 cd
    142 wykop
    141 lata
    130 vnstat
    122 mv
    112 godzin
    Historia 112

    Dzieje się tak, ponieważ w moim pliku .bashrc mam następujący wiersz:
    # Wydrukuj datę do polecenia historii
    export HISTTIMEFORMAT='%F%T:'

    Jestem prawie pewien, że wielu tutaj korzystało z kilku terminali jednocześnie.
    Nie wiem, czy mówić, że jest to sztuczka z terminalem, ale ponieważ zwykle mam wiele okien lub używam screena do otwierania kilku terminali, umożliwia to odzwierciedlenie dowolnego polecenia wprowadzonego w jednym z tych terminali we wszystkich oni. .

    To idzie w pliku .bashrc:

    HISTSIZE = 90000
    HISTFILESIZE=$HISTSIZE
    HISTControl=ignorespace:ignoredups

    historia() {
    _bash_history_sync
    wbudowana historia "$@"
    }

    _bash_history_sync() {
    wbudowana historia -a nr 1
    HISTFILESIZE=$HISTSIZE #2
    wbudowana historia -c #3
    wbudowana historia -r #4
    }

    PROMPT_COMMAND=_bash_history_sync

    1.    użyjmy Linuksa powiedział

      Bardzo dobry wkład! Dzięki, że wpadłeś.
      Przytulić! Paweł.

  16.   Roy powiedział

    Gratuluję artykułu.
    Bardzo praktyczne i nauczyłem się kilku komend.

  17.   linuXgirl powiedział

    Mimo, że jestem już trochę "doświadczony" w tych sprawach, to takie triki zawsze są mile widziane, więc... do kufra trików!!!

  18.   bez nazwy powiedział

    super, dzięki za triki, są naprawdę przydatne 😀

  19.   Vinsuk powiedział

    Ścieżki konsoli są nieprzeniknione 😉

  20.   dezykoder powiedział

    Sztuczka polegająca na naciśnięciu control + u i control + y nie zależy od powłoki, ale od konfiguracji, którą ma tty. Dzisiaj, pod Linuksem, ttys są bardzo złożonymi bytami.W rzeczywistości badałem, jak działają i mogę cię zapewnić, że mają o wiele więcej zawiłości, niż się wydaje. Tty mają jakieś znaki kontrolne, które zmieniają ich status, np. zdarzało mi się czasem, że zakotowałem plik binarny i po pozostawieniu wszystkich „śmieci” na ekranie monit pozostaje dziwny lub z innym kodowaniem. Dzieje się tak dlatego, że w przypadkowym pliku istnieje duże prawdopodobieństwo napotkania znaków kontrolnych tty.

    Na przykład uruchom to w powłoce:

    drukuj „33c”

    Spowoduje to wyczyszczenie ekranu (tak jakbyś wykonał clear ).

    Inne kombinacje, takie jak control + L, aby wyczyścić ekran, pochodzą z używanej powłoki, klasyczne powłoki /bin/sh zwykle nie mają tej funkcji.

    Ponadto obecnie w systemie Linux dostępnych jest wiele złożonych opcji obsługi plików i gniazd. Na przykład, jeśli otworzysz urządzenie tty za pomocą open(), w trybie AIO (asynchroniczne wejście/wyjście), proces otrzyma SIGIO za każdym razem, gdy w buforze wejściowym będą dostępne dane.

    Jeśli na przykład bash działałby po prostu czytając wiersze i wykonując polecenia (tak jak podczas wykonywania skryptu), naciśnięcie control + L po prostu włączyłoby tę sekwencję znaków jako część poleceń, ale ponieważ bash ma kontrolę nad wejściem bufora skryptu może to wykryć.

    Na przykład, czasami podczas programowania korzystałem z fcntl, aby uzyskać nieblokujący bufor wejściowy, którego używałem nawet z bibliotekami ncurses (manipuluj kontrolnym tty przed uruchomieniem ncurses w programie).

    Saludos!

  21.   Lautaro powiedział

    Dla tych, którzy na początku nie mieli miejsca i być może w celu dodania do notatki, istnieje zmienna o nazwie HISTIGNORE, w której znak dodawany przed poleceniem jest ustawiany jako ignorowany w historii.
    W niektórych instalacjach ta zmienna nie pochodzi
    Pozdrawiam i dobrego posta! bezpośrednio do ulubionych!

    Zauważcie, że w komentarzach też widziałem kilka ciekawych rzeczy..!!

  22.   Ramona Hidalgo powiedział

    Wszystko naprawdę bardzo przydatne. Dziękuję.