BASH - INPUT/OUTPUT Redirections
В тази статия ще разгледам Input/Output redirections, когато ползваме BASH.
Ако мога накратко да опиша какво е това-импортирането или изващането на файл, текст или др. към и от определен файл.
Понеже преполага, че не съм бил достатъчно ясен се надявам да разберете за какво става на въпрос в следващите редове и от примерите, които ще дам.
И да започнем с примерите.
Да каже, че не знаем името на нашата система, а желаем да го запишем във файл. За да го проверим примерно или изписваме командата $hostname, или отваряме и преглеждаме файлът /etc/hostname. Проблмът в този случай, е че ако искаме да вземем този текст/резултат първо трябва да отворим съответният файл, да копираме съответният запис и да го поставим в новият файл примерно name.txt Сега ще направим всичко това с една команда:
$hostname >> /home/name.txt
Цялата "магия" в случаят е идва от символът >> И така ние вече направихме/показах пример за output redirection.
Сега един пример за input redirection
В командата, която ще разгледам ще вкараме съдържанието от файл name.txt в програма, която се казва примерно spell, която проверява за правописни грешки и ще ни покаже/изпише допуснатите такива.
$spell < name.txt
И отново магията тук идва от символа <
Сега един "сложен" пример, който включва в себе си и двете посоки. В примерът, който ще напиша, ще искаме в програма spell, да се имортира съдържанието на файл host.txt и да се запишат изведените грешки във файл errors.txt. Всичко става ето така:
$spell < hostname.txt > errors.txt
Това е в общи линии. Комбинации, кото може да ползвате много. Само трявба да обобщя няколко важни правила а именно:
Когато говорим за INput/OUTput Redirections трябва да запомним следните неща:
> Когато символът сочи надясно имаме OUTPUT
< Когато символът сочи наляво имаме INPUT
ДВОЕН И ЕДИНИЧЕН СИМВОЛ > и >>
Когато символът е един т.е. > имаме redirection, КАТО НИ СЕ ПРЕЗАПИСВА СЪДЪРЖАНИЕТО НА ФАЙЛЪТ В КОЙТО ИСКАМЕ ДА ЗАПИСВАМЕ
Когато символът е двоен т.е. >> имамре redirection, КАТО НЕ НИ СЕ ПРЕЗАПИСВА СЪДЪРЖАНИЕТО НА ФАЙЛЪТ В КОЙТО ИСКАМЕ ДА ЗАПИСВА, А СЕ ДОБАВЯ НАЙ-ОТДОЛУ т.е. добавя към краят на негоявото съдържание.