Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

комманды >,>>,<.|

5.7K
15 апреля 2007 года
N-John
52 / / 05.07.2006
Прив всем!
Объясните, что за команды >,>>,<.| и с чем их едят?
В задании на лабораторную работу написано, что этими командами надо работать с текстовым файлом, но че делают они не объясняли....типа сами разбирайтесь. Помогите плз.
И как командой echo можно работать с текст файлом???:confused:
Система FreeBSD 6.1
261
15 апреля 2007 года
ahilles
1.5K / / 03.11.2005
если ты после некоторой команды напишешь > и потом путь к текстовому файлу, в этом файле будет сохранено, то что должно вывеститсь на экран после выполнения команды
334
15 апреля 2007 года
HexEdit
809 / / 27.07.2006
> - перенаправление вывода результата работы программы в файл, с предварительным его стиранием
>> - перенаправление вывода результата работы программы; добавление в конец файла
< - перенаправление ввода данных программы на файл (из этого файла будут браться ответы на вопросы программы, как - зависит от программы)
| - перенаправление вывода результата работы программы в другую программу, например:
 
Код:
ls /home/ -la | less


Работать с текстовым файлом...
Вывод файла на экран
 
Код:
echo < file.txt

Вывод в файл
 
Код:
echo "Это есть строка в файле ;)" > file.txt
echo "Это есть вторая строка в файле" >> file.txt


PS. Объяснил как знаю;) если что не так, просьба ногами не пинать:)
5.7K
15 апреля 2007 года
N-John
52 / / 05.07.2006
хм...команды > и >> понял, а вот < и | что то не совсем....
если имелось ввиду, что < выводит содержимое файла на экран, то чет не пашет...просто пустую строчку выводит.
Примерно так:
 
Код:
univer:~/scripts$ echo < db.dat

univer:~/scripts$


а про | че то ваще не понял....
2
15 апреля 2007 года
squirL
5.6K / / 13.08.2003
Перенаправление стандартного потока ввода (stdin) имеет смысл для тех команд, для которых предусмотрена обработка этого самого потока. Например. Команда wc - подсчитывает количество символов, строк и слов файла, либо, если имя файла не указано - то подсчет ведется для stdin, т. е. для того, что ты вводишь с клавиатуры. Пусть у нас есть файл:
 
Код:
$ cat file.txt
123
abc

подсчитаем строки сначала передав файл как аргумент, затем - с перенаправлением потока ввода вывода
 
Код:
$ wc -l test.txt
2 test.txt
$ wc -l < test.txt
          2
$

обрати внимание на то, как отличается вывод в двух случаях. Вариант с перенаправлением аналогичен тому, как если бы мы написали просто
wc -l
ввели бы две строки с клавиатуры и нажали Ctrl+D (EOF). Именно поэтому во втором случае не выводится имя файла после результатов подсчета - потому что имя файла в данном случае, отсутствует (вернее если быть точным - то это stdin)
Для echo - вариант не работает, потому что echo не предусматривает обработку stdin. то что ты написал - аналогично просто пустой команде echo :)

| - обозначает перенаправление вывода (stdout) команды на ввод (stdin) другой команды.
Пример:
 
Код:
$ cat test.txt | grep abc
abc

т. е. - cat выводит содержимое файла test.txt и через "конвеер" | передает этот вывод на вход утилите grep, которая ищет в переданом ей на вход строку abc.
это, кстати, аналогично:
 
Код:
$ grep abc < test.txt
abc
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог