GNU/Linux >> Znalost Linux >  >> Linux

Příkaz select v Linuxu

Dobrý den, přátelé. V tomto příspěvku se dozvíte, jak používat příkaz select v Linuxu. Tento tutoriál jsme testovali na Debianu 11, ale měl by fungovat na Ubuntu 20.04 a jeho derivátech.

Co je to příkaz select?

Příkaz select je nástroj vytvořený pomocí Rust, který má být robustnější a snáze použitelnou alternativou k cut a awk příkazy.

Díky tomuto příkazu budeme moci vybírat slova nebo rozsahy slov z řetězce nebo celého souboru. Díky tomu je ideální pro skripty a zejména programy třetích stran, které vyžadují práci se znakovými řetězci.

Jelikož je vytvořen s Rustem, můžeme jej bez problémů nainstalovat v Linuxu. Kromě toho je to lehký nástroj a jeho instalace je jednoduchá.

Některé funkce příkazu select jsou:

  • Stručná syntaxe výběru polí podobná řezům seznamu v Pythonu
  • Negativní indexování od konce řádku
  • Volitelný počáteční/koncový index
  • Nulový index

Tak jdeme na to.

Nainstalujte příkaz Choose

Protože se jedná o nástroj vytvořený pomocí Rustu, budeme moci nainstalovat pomocí cargo . Pokud již máte Rust nainstalovaný v systému, pak již máte cargo také.

V opačném případě jej můžete nainstalovat jako samostatný balíček z Rustu. O Debianu a Ubuntu můžete otevřít terminál a před jeho instalací aktualizovat systém.

sudo apt update
sudo apt upgrade

Nyní můžete nainstalovat cargo spuštěním

sudo apt install cargo

S cargo nainstalován, můžeme nainstalovat vybrat. Chcete-li tak učinit, stačí spustit

cargo install choose

Na konci instalace budete vyzváni k přidání instalační cesty do PATH, abyste ji mohli použít v terminálu.

V mém případě jsem spustil tento příkaz

export PATH=$PATH:/home/angelo/.cargo/bin

Upravte jej na svůj a nyní zkontrolujte verzi Vybrat.

choose --version

Výstup:

choose 1.3.3

Tímto způsobem jej budeme moci bez problémů používat.

Použití příkazu select

Příkaz select nám umožňuje vybrat jedno nebo několik slov z textového řetězce nebo souboru podle jejich pozice. Kromě toho pracuje také s rozsahy.

Abyste to lépe vysvětlili, zvažte tento text.

Hi, welcome to unixcop. Nice to meet you. So, have a nice day

Pokud v tomto textu chceme zobrazit první slovo a šesté slovo.

echo 'Hi, welcome to unixcop. Nice to meet you. So, have a nice day' | choose 0 5

Výstup:

Hi, to

Pamatujte, že volba začíná počítání na 0. Tedy 0 je první slovo v řetězci.

Chcete-li získat rozsah, použijte : . Například,

echo 'Hi, welcome to unixcop. Nice to meet you. So, have a nice day' | choose 1:6

Výstup:

welcome to unixcop. Nice to meet

V tomto případě jsem tiskl od druhého slova k sedmému.

Podobně jako v Pythonu, select využívá část své syntaxe k definování posledních slov řetězce. Takže -1 odkazuje na poslední slovo, -2 na předposlední slovo a tak dále.

Například:

echo 'Hi, welcome to unixcop. Nice to meet you. So, have a nice day' | choose 2:-1

V tomto případě zobrazujeme od třetího slova do konce. Výsledek je:

to unixcop. Nice to meet you. So, have a nice day

Můžete také vybrat různá slova a rozsahy

echo 'Hi, welcome to unixcop. Nice to meet you. So, have a nice day' | choose 0 10 4:-3 -1

Vybral jsem tedy první slovo, jedenácté, páté až předposlední a poslední slovo. Výsledek je:

Hi, a Nice to meet you. So, have a day

Příkaz select je také užitečný pro práci s .csv soubor. V tomto případě je použití stejné, ale pokud je odděleno , musíte přidat -f volba. Například,

cat [csv_file] | choose -f ',' 0:2

Tímto způsobem určíte, že oddělovač je , .

Pokud chcete, aby byl výstup na obrazovce čitelnější, můžete použít -o pomocí tabulátoru.

cat [csv_file] | choose -f ',' -o '0 3

Je to tak jednoduché.

Závěr

V tomto příspěvku jsme vám představili důležitý nástroj, jako je výběr. Má být solidní alternativou k awk a cut příkazy, ale vše zjednodušovat.


Linux
  1. Úvod do příkazu alternatives v Linuxu

  2. Linuxový příkaz mv

  3. Linux du command

  1. Zvládněte příkaz Linux ls

  2. Linuxový ip příkaz

  3. Vyhledejte příkaz v Linuxu

  1. 5 Praktické příklady příkazu dd v Linuxu

  2. pěkné příklady příkazů v Linuxu

  3. Vraťte zpět příkaz linuxového koše