[andrey@fedora ~]$ ll /usr2/ 2> out.txt
[andrey@fedora ~]$ cat out.txt
ls: невозможно получить доступ к '/usr2/': Нет такого файла или каталога
Перенаправление стандартного вывода и стандартного вывода ошибок в один файл
команда &> файл - перенаправляет стандартный вывод и стандартный вывод ошибок с в файл
команда &>> файл - перенаправляет стандартный вывод и стандартный вывод ошибок с добавлением в конец одного и того же файла
Пример:
[andrey@fedora ~]$ ll test/ &>> out.txt
[andrey@fedora ~]$ ll test1/ &>> out.txt
[andrey@fedora ~]$ cat out.txt
итого 0
drwxrwxr-x. 1 andrey andrey 0 мая 20 16:00 dir1
drwxrwxr-x. 1 andrey andrey 0 мая 20 16:00 dir2
d---------. 1 andrey andrey 0 мая 20 16:06 dir3
ls: невозможно получить доступ к 'test1/': Нет такого файла или каталога
Удаление нежелательного вывода
команда 2> /dev/null - удалит нежелательный вывод переслав его на специальное системное устройство битоприемник (bit bucket) /dev/null
Пример:
[andrey@fedora ~]$ ll test1/ 2> /dev/null
Перенаправление стандартного ввода
cat [файл...] - читает содержимое одного или нескольких файлов и копирует его в стандартный вывод
cat - начнет читать ввод с клавиатуры
cat > файл - запишет ввод с клавиатуры в файл (для окончания ввода необходимо нажать Ctrl + D)
Пример:
[andrey@fedora ~]$ cat > in.txt
Строка текста введенная с клавиатуры и записанная в файл
[andrey@fedora ~]$ cat in.txt
Строка текста введенная с клавиатуры и записанная в файл
Конвейеры
команад1 | команда2 - стандартный вывод одной команды связывает со стандартным вводом другой
[andrey@fedora ~]$ ls -l /usr/bin/ | less
[andrey@fedora ~]$ ls -l test/ test/dir1 | cat
test/:
итого 0
drwxrwxr-x. 1 andrey andrey 48 мая 20 17:01 dir1
drwxrwxr-x. 1 andrey andrey 0 мая 20 16:00 dir2
d---------. 1 andrey andrey 0 мая 20 16:06 dir3
test/dir1:
итого 12
-rw-rw-r--. 1 andrey andrey 878 мая 20 17:00 out1.txt
-rw-rw-r--. 1 andrey andrey 878 мая 20 17:00 out2.txt
-rw-rw-r--. 1 andrey andrey 878 мая 20 17:00 out3.txt