Linux shell入門基礎(三)


三、輸入輸出重定向及管道 01.過濾器   Linux過濾器分三種:     1.過濾器(重定向只對過濾器有作用) #gzip a(將a作為輸入源,涉及到輸入輸出)     2.編輯器     3.交互式工具 #setup 02.標准輸入輸出 03.改變標准輸出 #ls >(將正確的輸出輸出去) /tmp/aaa #ls /tttt 2>(標准的錯誤的消息) /tmp/aaa(把后邊的文件清空,將前邊 的文件加入到后邊的文件) #> b (創建新文件) #> passwd (清空文件) #find / -name asdfasdfadf > /tmp/findfile 2>&1 #echo aaa >> a(追加到a文件) #cat > a.txt hello! this is a test! good for you hello world Ctrl+d(退出) #cat a.txt 04.輸出的種類 正確的信息和錯誤的信息 #find / -name asdfasdfadf > /tmp/findfile 2>&1(將兩類信息:正確的 信息和錯誤的信息重定向到指定文件) #find / -name asdfasdfadf &> /tmp/findfile(功能同上) #echo aaa > a #cat a a #echo aaa >> a #echo aaa >> a aaa aaa #cat << EEE >adsfasdfa >adfasdfasdf >asdfads Ctrl+d(或者輸入EEE,結束輸入) adsfasdfa adfasdfasdf asdfads 05.改變輸入 #tr "a-z" "A-Z" hello HELLO #tr "a-z" "A-Z" /etc/passwd 改: #tr "a-z" "A-Z"(指明輸入源) < /etc/passwd # cat > a.txt <<EEE >hello >world >! Ctrl+d(EEE) #cat a.txt hello world ! #vi b.sh cat > b.txt <<(讓系統將一次鍵盤的全部輸入,先送入虛擬的‘當前文 檔’,再一次性輸入追加到文檔尾部) DDD this is a text asdfasdf asdfadsf asdfadsf asdfadsf asdfa DDD :wq #chmod a+x b.sh #./b.sh /tmp/bbb/b.sh #./b.sh #cat b.txt this is a text asdfasdf asdfadsf asdfadsf asdfadsf asdfa # >(清空)2>(錯誤信息重定向)&>(正確和錯誤信息重定向 2>&1(同&>輸出重定向) #<<<(輸入重定向)追加 #>>(兩個輸出重定向)追加 #ls /etc/ |wc -l(包含多少行,多少個文件) #ls(只是顯示出來) byf sherk todd #ls /etc/ > a #cat a byf sherk todd 06.管道 #ls /etc/ -l |(|前邊的輸出作為后邊指令的輸入,這就是管道,只能對 過濾器起作用)grep '^d'|wc -l(查看有多少個文件夾) #ls /etc/ -l | grep '^-'|wc -l (有多少個普通文件) #ls /etc/ -l | grep '^l'|wc -l  (有多少個連接) #ls /etc/ -l | grep '^l'|tee(復制從此|位置的前邊的輸出到bbb文件)  bbb|wc -l  07.實例 #tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' i love you very much V YBIR LBH IREL ZHPU #tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd  文件加密,輸出重定向成abc.txt #tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd >  abc.txt #tr '"a-m""n-z""A-M""N-Z"' '"N-Z""A-M""n-z""a-m"' < /etc/passwd >  |mail(也是一個過濾器) -s "For you" 312358196@163.com

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com