Можно ли сделать команду в Linux с "двойными трубами", как это?
blah | blah | blah
Можно ли сделать команду в Linux с "двойными трубами", как это?
blah | blah | blah
Да сколько угодно.
$ ls -al
дает это
total 25 drwxr-xr-x+ 1 nifle None 4096 2010-04-11 11:34 . drwxrwxrwt+ 1 nifle root 0 2010-02-09 18:46 .. -rw------- 1 nifle None 4581 2010-06-10 20:34 .bash_history -rwxr-xr-x 1 nifle None 1150 2010-02-09 16:42 .bash_profile -rwxr-xr-x 1 nifle None 3754 2010-02-09 16:42 .bashrc -rwxr-xr-x 1 nifle None 1461 2010-02-09 16:42 .inputrc -rwxrwxrwx 1 nifle None 308 2010-04-11 11:38 so.pl
Если я передам это через grep, sed и cut так:
$ ls -al | grep prof | sed 's/i/XX/g' | cut -c 10-
я получил
x 1 nXXfle None 1150 2010-02-09 16:42 .bash_profXXle
Да, вы можете использовать столько каналов, сколько хотите (и до тех пор, пока это имеет смысл с командами;))
Вы можете использовать столько каналов, сколько вы передаете в команду, которая принимает ввод.