GNU/Linux >> Znalost Linux >  >> Linux

20 jednořádkových příkazů Linuxu, které můžete přidat do svého panelu nástrojů

Mnoho uživatelů Linuxu zažilo trvalý pocit úspěchu po sestavení obzvláště chytrého příkazu, který dosahuje více akcí na jediném řádku nebo který dokáže na jednom řádku udělat to, co obvykle vyžaduje 10 kliknutí a tolik oken v grafickém uživatelském rozhraní (GUI). Kromě toho, že se jedná o legendu, jsou jednolinky skvělými příklady toho, proč je terminál považován za tak mocný nástroj.

Na konci tohoto článku budete mít:

  • Seznam 20 příkazů, které vám usnadní práci na Linuxu
  • Pochopení možností kombinace jednoduchých příkazů k vytvoření výkonnějších příkazů
  • Spouštění těchto příkazů je zábavnější, než byste čekali

Bez jakéhokoli konkrétního pořadí důležitosti, toto je našich 20 nejlepších jednotných linek pro terminál Linux. Ačkoli jsme některé delší příkazy rozdělili pomocí \ symbol pro snadnější čitelnost, můžete je všechny zadat na jeden řádek v terminálu, protože koneckonců jsou to jednořádkové.

1. Použijte příkaz na soubory s různými názvy

Shell {} operátor je na to skvělý. Zde je příklad se třemi adresáři uzavřenými v {} :

$ mkdir -p -v /home/josevnz/tmp/{dir1,anotherdir,similardir}

2. Upravte soubor na místě

Chcete nahradit řetězec v jednom nebo více souborech bez použití editoru? Jistě, sed na záchranu:

$ sed -i 's#ORIGINAL_VALLUE#NEW_VALUE#g' myfile1 myfile2

Ale počkejte, milovníci Perlu vám řeknou, že mohou udělat totéž:

$ perl -p -i -e 's#ORIGINAL#NEW_VALUE#' myfile1 myfile2

3. Rychle sdílejte soubor pomocí webového serveru

Zvedněte ruku, pokud jste to alespoň jednou nepoužili pro rychlé sdílení adresáře:

$ cd $mydir && python3 -m http.server 8888

4. Najděte chyby pomocí journalctl

Někdy se věci zlomí. Nejnovější chyby můžete najít pomocí kombinace journalctl , spolu s klasickými nástroji sort a uniq :

$ journalctl --no-pager --since today \
--grep 'fail|error|fatal' --output json|jq '._EXE' | \
sort | uniq -c | sort --numeric --reverse --key 1

898172 "/usr/bin/dockerd"
    752 "/usr/local/sbin/node_exporter"
     30 "/usr/bin/gnome-shell"
     26 "/usr/bin/cat"
     22 "/usr/libexec/gsd-media-keys"
[...]

V tomto případě se zdá, že démon Docker je nešťastný.

[ Stáhněte si tuto e-knihu a připravte se na vzdálenou zkoušku Red Hat. ]

5. Proveďte zálohu pomocí šifrovaného přenosu souborů

Použijte ssh a tar pro vytváření bezpečných záloh. Hodí se k sobě jako arašídové máslo a želé:

$ tar --create --directory /home/josevnz/tmp/ --file - *| \
ssh raspberrypi "tar --directory /home/josevnz \
--verbose --list --file -"

Úlohu zálohování můžete přidat pomocí komprese a šifrování – stejně jako přidávání přísad do sendviče.

6. Zápis okamžitých souborů

Toto je skvělý trik, když potřebujete psát víceřádkové dokumenty:

$ cat<<DOC>/my/new/file
Line1
Line2
A $VARIABLE
DOC

Můžete také jednoduše cat > file a po dokončení úprav zadejte znak EOF (Ctrl+D ):

[josevnz@dmaf5 temp]$ cat > testfile
This is a test
multiple lines
and here we go
[josevnz@dmaf5 temp]$ 

7. Vyhledejte soubor a zahrňte některé přípony a vylučte jiné

Tento příklad používá grep způsob vyhledávání konkrétních souborů. Je to docela rychlé a snadno zapamatovatelné:

$ grep -R 'import' --include='*.java' --color MySourceCodeDir

Nebo můžete zkusit find způsobem (použijte xargs správně zpracovat velký počet zápasů):

$ find MySourceCodeDir/ -name '*.java' -type f -print| xargs \
grep --color 'import

Proč find , můžete se zeptat? find můžete kombinovat s -exec nejprve provést akce s vašimi soubory a poté předat výsledky filtru. Možnosti zpracování jsou zde nekonečné.

8. Monitorujte paměť bez top nebo htop

Tenhle je skoro podvádění. Opakuje příkaz, například free , každých pět sekund a zvýrazní rozdíly:

$ watch -n 5 -d '/bin/free -m'

9. Zobrazit velikosti diskových oddílů

Použijte lsbk (blok seznamu) a jq (pro manipulaci s JSON na příkazovém řádku) pro zobrazení informací o oddílu:

$ lsblk --json | jq -c '.blockdevices[]|[.name,.size]'
["loop0","55.5M"]
["loop1","156M"]
["loop2","32.3M"]
["zram0","4G"]
["nvme0n1","476.9G"]

10. Rychlé zobrazení typu souboru

Co je funkce se volá pomocí wi . Rychle vám sdělí typ souboru.

Kontrola jednoho souboru:

$ function wi { test -n "$1" && stat --printf "%F\n" "$1"; }

Kontrola více souborů:

$ function wi { test "$#" -gt 0 && stat --printf "%n: %F\n" "$@"; }

POZNÁMKA :Funkce jsou nadřazené a mohou dělat stejnou práci jako alias.

11. Zobrazení velikosti nainstalovaných RPM

Pokud máte systém založený na RPM, dříve nebo později své dotazy naformátujete. Zde je příklad:

$ rpm --queryformat='%12{SIZE} %{NAME}\n' \
-q java-11-openjdk-headless

[ Trénujte a otestujte si naše nejnovější kurzy a zkoušky z kurzu Red Hat Training &Certification:Red Hat Enterprise Linux. ]

12. Zobrazení celkové velikosti skupiny souborů

V tomto případě find příkaz funguje jako filtr, zobrazuje velikost každého souboru v bajtech a nakonec ukazuje celkovou velikost:

$ t=0; for n in $(find ~/Documents -type f -name '*.py' -print | xargs \
stat --printf "%s "); do ((t+=n)); done; echo $t

Nebo, pokud chcete funkci (lepší), zkuste tento přístup:

$ function size { t=0; test -d "$1" && for n in $(find $1 \
-type f -name '*.py' -print| \
xargs stat --printf "%s "); do ((t+=n)); done; echo $t; }

size $mydir

13. Aktualizujte všechna úložiště Git v adresáři

Už víte, jak užitečný je Git. Zde je trik, jak být s aktualizacemi efektivnější:

$ for i in */.git; do cd $(dirname $i); git pull; cd ..; done

14. Vystavte webový adresář pomocí kontejnerů

Kontejnery jsou dnes kritické. Tento jednořádkový odhaluje adresář přes Podman:

$ podman run --rm -v .:/usr/share/nginx/html:ro,Z \
-p 30080:80 -d nginx

15. Podívejte se na počasí

Pomocí této funkce zjistíte, zda dnes potřebujete bundu:

weather() { curl -s --connect-timeout 3 -m 5 http://wttr.in/$1; }

16. Zobrazte 10 nejčastějších IP adres zasahujících webový server

Zde je úkol, který mohou weboví administrátoři často používat s Nginxem (může také fungovat s Apache) k získání 10 nejčastějších adres internetového protokolu zasahujících webový server z protokolu přístupu:

$ cat /var/log/nginx/access.log | cut -f 1 -d ' ' | sort | \
uniq -c | sort -hr | head -n 10

17. Round plave v Bash s pomocí Pythonu

S Pythonem můžete dělat docela skvělé věci, ale tento příklad pouze zaokrouhluje čísla:

$ echo "22.67892" | python3 -c "print(f'{round(float(input()))}')"
23

18. Spusťte mini kalkulačku

Tato funkce definuje rychlou kalkulačku na příkazovém řádku s proměnnou přesností (výchozí hodnota je 2). Používá bc. Vytvořte funkci takto:

$ function qqbc() { echo "scale=${2:-2}; $1" | bc -l

Dále proveďte rychlý výpočet:

$ qqbc "2/3"
.66

V případě, že potřebujete další přesnost, stačí definovat druhý parametr:

$ qqbc "2/3" 4
.6666

Tento nástroj se nazývá qqbc protože jde o vylepšení staré funkce qbc .

19. Převeďte CSV na JSON

Tento trik je modifikací tohoto oblíbeného receptu na převod souborů CSV do formátu JSON:

$ python3 -c \
"import csv,json,sys;print(json.dumps(list(csv.reader(open(sys.argv[1])))))" \
covid19-vaccinations-town-age-grp.csv

20. Nainstalujte a spusťte příkazy pomocí Docker

Pokud máte nainstalovaný Docker a chcete spustit příkaz bez instalace hromady závislostí na vašem systému (při rychlém spuštění), může být vše, co potřebujete:

$ docker run --rm --interactive curlimages/curl curl \
--verbose --location --fail --silent --output - \
https://example.com

Příkaz spustí nejnovější verzi curl z nádoby a později ji odstraní. Všimněte si, že příkaz končí pomlčkou (- ), který říká curl pro výstup na váš terminál. Možnosti jsou zde nekonečné.

Sbalit

Schopnost vytvářet výkonné kombinace jednoduchých příkazů je jedním z důvodů, proč jsou Unix a Linux tak populární.

Naštěstí. není těžké se tyto jednovrstvé naučit. Zaměřte se na zapamatování toho, co dělá jednoduchý příkaz, a pak přemýšlejte o tom, jak můžete smíchat mnoho jednoduchých příkazů, abyste vytvořili účinný recept.

Vždy zaškrtněte man nebo použijte info příkaz, abyste zjistili, co ještě nástroj umí. Možná vás překvapí, že jeden nástroj dokáže vše, aniž by jej kombinoval s jiným nástrojem.

Na internetu je mnoho stránek se spoustou jednořádkových příkladů. Doufáme, že vás tyto příklady povedou k napsání lepších vlastních jednořádkových linií.


Linux
  1. Přidejte videa jako tapetu na plochu Linuxu

  2. Příkazy systému Linux pro zobrazení informací o vašem hardwaru

  3. Jak zničit váš systém:Nebezpečné příkazy Linuxu

  1. Vydejte se na dobrodružství ve svém linuxovém terminálu

  2. 5 Příkazy pro odstraňování problémů se sítí Linux

  3. Mých 8 oblíbených praktických linuxových příkazů

  1. Přidejte tyto 4 nástroje do svého kontejneru nástrojů Linux

  2. 10 Find Commands pro zlepšení vyhledávání souborů v Linuxu [Základy]

  3. Jak přidat ukazatel průběhu pro kopírování a přesouvání příkazů v Linuxu?