linux 关于减号 - 代替stdin 和stdout 的用法
生活随笔
收集整理的這篇文章主要介紹了
linux 关于减号 - 代替stdin 和stdout 的用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡單解析下, stdin就是標準輸入, ?stdout就是標準。
舉個例子, ?在當前我要打包1個文件夾 /var/log/ ?到當前目錄下,并用zip壓縮,那么我們可以分步執行
#tar -cvf ?log.tar /var/log/#zip -r log.tar.zip ?log.tar#rm -rf log.tar
寫成一條語句就是tar -cvf ?log.tar /var/log/ ?&& ?zip -r log.tar.zip ?log.tar ?&&?rm -rf log.tar
那么我們可以發現第一條語句的輸出(log.tar) ?就是第二條語句的輸入
這種情況下我們可以用 “-” 來取代這個輸出輸入
直接執行如下語句就ok了
tar -cvf - /var/log | zip -r log.zip -
意思就是 第一條語句不再輸入到1個具體文件,而輸出到stdout中, 而作為第二條件的標準輸入(stdin), 而stdin 和 stdout都可以用“-”來取代。
這樣的話就不會有中間文件生成了~
舉個例子, ?在當前我要打包1個文件夾 /var/log/ ?到當前目錄下,并用zip壓縮,那么我們可以分步執行
#tar -cvf ?log.tar /var/log/#zip -r log.tar.zip ?log.tar#rm -rf log.tar
寫成一條語句就是tar -cvf ?log.tar /var/log/ ?&& ?zip -r log.tar.zip ?log.tar ?&&?rm -rf log.tar
那么我們可以發現第一條語句的輸出(log.tar) ?就是第二條語句的輸入
這種情況下我們可以用 “-” 來取代這個輸出輸入
直接執行如下語句就ok了
tar -cvf - /var/log | zip -r log.zip -
意思就是 第一條語句不再輸入到1個具體文件,而輸出到stdout中, 而作為第二條件的標準輸入(stdin), 而stdin 和 stdout都可以用“-”來取代。
這樣的話就不會有中間文件生成了~
總結
以上是生活随笔為你收集整理的linux 关于减号 - 代替stdin 和stdout 的用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 关于一维数组和二位数组的数组指针
- 下一篇: C 语言里的字符串---字符数组