User Tools

Site Tools


перенаправление_потоков_ввода_вывода

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
перенаправление_потоков_ввода_вывода [2011/10/20 17:47]
val
перенаправление_потоков_ввода_вывода [2018/03/02 15:26]
val [Операторы < >]
Line 1: Line 1:
 ====== Перенаправление потоков ввода/​вывода ====== ====== Перенаправление потоков ввода/​вывода ======
  
-[[http://​ru.wikipedia.org/​wiki/​Стандартные_потоки]] +  * [[http://​ru.wikipedia.org/​wiki/​Стандартные_потоки]] 
- +  ​* ​[[http://​ru.wikipedia.org/​wiki/​Перенаправление_(UNIX)]] 
-[[http://​ru.wikipedia.org/​wiki/​Перенаправление_(UNIX)]]+  * [[http://​ru.wikipedia.org/​wiki/​Именованный_канал]] 
 +  * [[http://​en.wikipedia.org/​wiki/​Remote_Shell]]
  
 ===== Файловые дескрипторы ===== ===== Файловые дескрипторы =====
Line 11: Line 12:
 1       ​STDOUT ​       > 1       ​STDOUT ​       >
 </​code>​ </​code>​
-===== Операторы < > =====+===== Оператор > =====
 <​code>​ <​code>​
 $ ps ax > ps.txt $ ps ax > ps.txt
  
-more ps.txt+> ps.txt ps ax 
 + 
 +$ less ps.txt
  
 $ grep init ps.txt $ grep init ps.txt
 +</​code>​
  
 +===== Оператор < =====
 +
 +  * [[Сервис MySQL#​Импорт данных]] MySQL
 +
 +<​code>​
 $ grep init < ps.txt $ grep init < ps.txt
 +
 +$ < ps.txt grep init
 </​code>​ </​code>​
 +
 +
 ===== Оператор | ===== ===== Оператор | =====
 <​code>​ <​code>​
Line 28: Line 41:
 $ ps ax | grep init $ ps ax | grep init
  
-FreeBSD +$ du -/usr/​share/​* ​| sort -n | tail -n 1
-$ du -d1 /var | sort -n +
-Linux +
-$ du --max-depth=1 /var sort -n+
  
 FreeBSD FreeBSD
 $ tail -f /​var/​log/​messages | grep auth $ tail -f /​var/​log/​messages | grep auth
 Linux Linux
-$ tail -f /​var/​log/​auth.log ​ | grep FAILED+$ tail -f /​var/​log/​auth.log | grep FAILED
  
-$ ls -l /bin | sort -k5 | tail -n5 | cut -c48-60+$ ls -l /bin | sort -n -k5 | tail -n5 | cut -c48-60 
 +</​code>​ 
 + 
 +===== Команда tee ===== 
 + 
 +<​code>​ 
 +$ find /usr/share -name '​*.html'​ | tee find_res.txt 
 + 
 +$ ls /bin /b1n 2>&1 | tee full_log.txt
 </​code>​ </​code>​
  
Line 69: Line 87:
 $ ls fhgfdgbdfhsd $ ls fhgfdgbdfhsd
  
-$ ls errfilename > ls.txt+$ ls errfilename > ls_res.txt
  
-$ ls errfilename 2> ls.txt+$ ls errfilename 2> ls_err.txt
  
-$ ls /bin /errdirname > ls.txt ​2>ls.txt+$ ls /bin /b1n 2>&1 | tee full_log.txt
  
 $ ls /bin /errdirname > ls.txt 2>&1 $ ls /bin /errdirname > ls.txt 2>&1
  
 $ ls /sdfgsdfgsd > /dev/null 2>&1 $ ls /sdfgsdfgsd > /dev/null 2>&1
 +
 +$ ls /sdfgsdfgsd 2>/​dev/​null >&2
 </​code>​ </​code>​
  
 ===== Перенаправление ввода/​вывода между процессами,​ работающими на разных системах ===== ===== Перенаправление ввода/​вывода между процессами,​ работающими на разных системах =====
 <​code>​ <​code>​
-$ tar -c -f etc.tar etc/+# cd /
  
-tar -c -f - etc/ | cat > etc.tar+# tar -c -f etc.tar etc/ 
 + 
 +tar -c -f - etc/ | cat > etc.tar 
 + 
 +# tar -c -f - etc/ | rsh -l userX backup 'cat > etc.tar'​ 
 + 
 +# tar -c -f - etc/ | ssh -l userX backup 'cat > etc.tar'​ 
 + 
 +# tar -c -f - etc/ | ssh userX@backup 'cat > etc.tar'​ 
 +</​code>​ 
 + 
 +===== Именованные каналы ===== 
 + 
 +В файлах grep1.txt и grep2.txt не должно быть пустых строк в конце 
 + 
 +<​code>​ 
 +$ cat grep1.txt 
 +</​code><​code>​ 
 +rtf$ 
 +doc$ 
 +</​code><​code>​ 
 +$ cat grep2.txt 
 +</​code><​code>​ 
 +gz$ 
 +</​code><​code>​ 
 +$ mkfifo findresult.fifo
  
-tar -c -f - etc/ | rsh -l user server '​cat ​etc.tar'+find /​usr/​share/ ​-type f > findresult.fifo &
  
-tar -c -f - etc/ | ssh -l user server 'cat > etc.tar'+cat grep*.txt | grep -f - findresult.fifo
  
-tar -c -f - etc/ | ssh user@server 'cat > etc.tar'+rm findresult.fifo
 </​code>​ </​code>​
перенаправление_потоков_ввода_вывода.txt · Last modified: 2019/06/26 14:00 by val