rEFInd: How to Install and Boot Alternative OS on Mac
Obsah:
- Čtení syntaxe řádek po řádku
- Čtení příkladů řádek po řádku
- Alternativní metody čtení souborů
- Použití substituce procesu
- Použití řetězce zde
- Pomocí deskriptoru souboru
- Závěr
Při psaní skriptů Bash se někdy ocitnete v situacích, kdy potřebujete číst řádek po řádku. Například můžete mít textový soubor obsahující data, která by měla být skriptem zpracována.
V tomto tutoriálu diskutujeme o tom, jak číst řádek po řádku v Bash.
Čtení syntaxe řádek po řádku
Nejobecnější syntaxe pro čtení souboru řádek po řádku je následující:
while IFS= read -r line do echo "$line" done < input_file
nebo ekvivalentní jednořádková verze:
while IFS= read -r line; do echo $line; done < input_file
Jak to funguje?
Vstupní soubor (
input_file
) je název souboru, který chcete otevřít pro čtení příkazem
read
. Příkaz
read
přečte souborový řádek po řádku a každý řádek přiřadí k
line
proměnné. Po zpracování všech řádků se smyčka while ukončí. Vnitřní oddělovač polí (
IFS
) je nastaven na nulový řetězec, aby se zachoval úvodní a koncový mezera, která je výchozím chováním příkazu
read
.
Čtení příkladů řádek po řádku
Podívejme se na následující příklad. Předpokládejme, že máme soubor s názvem
distros.txt
obsahuje seznam některých nejpopulárnějších distribucí Linuxu a jejich správců balíků oddělených čárkou (
,
):
Ubuntu, apt Debian, apt CentOS, yum Arch Linux, pacman Fedora, dnf
Chcete-li číst řádek po řádku, spusťte v terminálu následující kód:
while IFS= read -r line do echo "$line" done < distros.txt
Kód přečte soubor po řádku, přiřadí každý řádek k proměnné a echo promění. V zásadě byste viděli stejný výstup, jako kdybyste zobrazovali obsah souboru pomocí příkazu cat.
Co když chcete tisknout pouze distribuce, které používají apt? Jedním ze způsobů by bylo použití příkazu if a kontrola, zda řádek obsahuje podřetězec apt:
while IFS= read -r line do if]; then echo "$line" fi done < distros.txt
Ubuntu, apt Debian, apt
Při čtení souboru řádek po řádku můžete také předat více než jednu proměnnou příkazu čtení, který rozdělí řádek do polí na základě
IFS
. První pole je přiřazeno první proměnné, druhé druhé proměnné atd. Pokud existuje více polí než proměnných, jsou zbývající pole přiřazena poslední proměnné.
V následujícím příkladu nastavujeme IFS na čárku (
,
) a předáváme dvě proměnné
distro
a
pm
příkazu read. Všechno od začátku řádku do první čárky bude přiřazeno první proměnné (
distro
) a zbytek řádku bude přiřazen druhé proměnné (
pm
):
while IFS=, read -r distro pm do echo "$pm" is the package manager for "$distro" done < distros.txt
apt is the package manager for Ubuntu apt is the package manager for Debian yum is the package manager for CentOS pacman is the package manager for Arch Linux dnf is the package manager for Fedora
Alternativní metody čtení souborů
Použití substituce procesu
Substituce procesu umožňuje předávat výstup z příkazu jako název souboru:
while IFS= read -r line do echo "$line" done < <(cat input_file)
Použití řetězce zde
Here String je varianta dokumentu Here. Řetězec
(cat input_file)
zachová nové řádky:
while IFS= read -r line do echo "$line" done <<< $(cat input_file)
Pomocí deskriptoru souboru
Vstup do smyčky můžete také zadat pomocí deskriptoru souboru:
while IFS= read -r -u9 line do echo "$line" done 9< input_file
Při práci s deskriptory souborů použijte číslo mezi 4 a 9, abyste se vyhnuli konfliktu s interními deskriptory souborů prostředí.
Závěr
V Bashu můžeme číst soubor řádek po řádku poskytnutím názvu souboru jako vstupu do smyčky while while čtení.
bash terminálRecenze: Quick View Plus vám umožňuje číst téměř jakýkoli obchodní soubor

Chcete-li rozšířit možnosti náhledu systému Windows, zkuste to tento nástroj pro prohlížení souborů. Je integrován do aplikace Explorer a podporuje více než 300 typů souborů, včetně mnoha, které už nemusíte vlastnit.
Jak extrahovat soubor CAB pomocí nástrojů příkazového řádku v systému Windows 10/8/7

Můžete dekomprimovat jednu nebo více komprimovaných souborů CAB kabinetů pomocí vestavěných nástrojů příkazového řádku systému Windows, jako jsou expand.exe, makecab a extrac32.
Soubor nelze uložit, protože zdrojový soubor nebyl čitelný

Pokud nemůžete stáhnout a uvidíte appdatalocaltemp nemohlo být uloženo, protože zdrojový soubor nemohl být v prohlížeči Firefox čten, je zde vše, co musíte udělat.