07.02.2009 17:23
zb — файлдескрипторы баш
Пока комментил предыдущий пост вспомнил о полезной фиче баш - файл дескрипторы, короче баш умеет перенаправлять ввод-вывод команд в специальные файлы, которые можно подсунуть программе.Проще объяснить на примерах:
Скажем нам нужно сравнить по-быстрому содержимое двух директорий, можно написать мегаскрипт а можно обойтись и одной командой:
1 |
|
чтобы понять как это работает достаточно заменить diff на echo:
1 |
|
/dev/fd/63 /dev/fd/62
Такой приём обычно полезен в случае когда программа-обработчик не умеет выводить или вводить данные с устройств стандартного ввода-вывода, а так-же в случае когда требуется жонглировать с вводом-выводом нескольких программ одновременно.
ps: внимание файл дескрипторы могут быть не включены в вашей версии bash (насколько я помню отсутствует в каких-то редхатах)
хм, если сделать
vim <(modprobe -l | grep cpu)
то получаю пустой файл, но cat все видит. ЧЯДНТ?
Не повезло наверное. у меня все работает.
смотри версию bash
bash --version
GNU bash, version 4.0.33(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
смотри версию bash
bash --version
GNU bash, version 4.0.33(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Круто, больше фишек! Я любитель изящного кода