欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

shell下time”命令的輸出詳解-創(chuàng)新互聯(lián)

這篇文章主要講解了“shell下time”命令的輸出詳解”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“shell下time”命令的輸出詳解”吧!

成都創(chuàng)新互聯(lián)公司2013年至今,先為濟南等服務(wù)建站,濟南等地企業(yè),進行企業(yè)商務(wù)咨詢服務(wù)。為濟南企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

前言

相信大家都知道bash下time是一個很有用的命令,它可以為一段腳本或一個程序的執(zhí)行計時,這通常在粗略比較程序執(zhí)行效率的時候很方便。但是你會發(fā)現(xiàn),time命令輸出的時間文字不能被簡單地重定向,例如重定向至一個文本文件,只能顯示在屏幕上,這對于非交互計時很不方便。

例如:

$ time find . -name "mysql.sh" >1.txt

real 0m0.081s
user 0m0.060s
sys  0m0.020s

$ time find . -name "mysql.sh" 2>2.txt
./work186/sms/bin/mysql.sh
./work186/sms/src/scripts/mysql.sh
./work186/sms/src/scripts1/mysql.sh
./work186/sms1/bin/mysql.sh
./work186/sms1/src/scripts/mysql.sh
./temp/sms/bin/mysql.sh
./temp/sms/src/scripts/mysql.sh

real 0m0.068s
user 0m0.040s
sys  0m0.030s

通過上面的嘗試,發(fā)現(xiàn)無法將time的輸出信息重定向到文件里面,為什么?因為time是shell的關(guān)鍵字,shell做了特殊處理,它會把time命令后面的命令行作為一個整體來進行處理,在重定向時,實際上是針對后面的命令來的,time命令本身的輸出并不會被重定向的。

關(guān)鍵字time設(shè)置了一個標(biāo)記,知道command(find)命令執(zhí)行完,timing信息才被打印到stderr中。time關(guān)鍵字要整個command和管道,還有相關(guān)的重定向都要來得高級。這就是為什么簡單的重定向?qū)τ趖ime而言不起作用。 這是Bash語法定義的。command之后的重定向?qū)τ趖ime而言,是command的一部分。

注:time命令的輸出到標(biāo)準(zhǔn)錯誤(stderr)中

當(dāng)time命令執(zhí)行時,command運行于當(dāng)前shell(也就是time命令所執(zhí)行的shell)的下一級shell,而time自身的輸出位于當(dāng)前shell的stderr。像上面所示的那樣重定向只會使得command的stdout被重定向至一個文本文件,而不會輸出time自身的輸出內(nèi)容。

第一種解決方法,就是將time命令和將要執(zhí)行的命令行放到一個shell代碼塊中,也就是一對大括號中,要注意空格和分號的使用。

$ { time find . -name "mysql.sh"; } 2>2.txt
./work186/sms/bin/mysql.sh
./work186/sms/src/scripts/mysql.sh
./work186/sms/src/scripts1/mysql.sh
./work186/sms1/bin/mysql.sh
./work186/sms1/src/scripts/mysql.sh
./temp/sms/bin/mysql.sh
./temp/sms/src/scripts/mysql.sh
$ cat 2.txt

real 0m0.068s
user 0m0.030s
sys  0m0.040s

第一種方式的嘗試成功了,總結(jié)起來就是 { time command-line; } 2>file 注意分隔符的使用。

另外一種方式就是使用子Shell的方式

如下所示:

$ (time find . -name "mysql.sh") 2>2.txt
./work186/sms/bin/mysql.sh
./work186/sms/src/scripts/mysql.sh
./work186/sms/src/scripts1/mysql.sh
./work186/sms1/bin/mysql.sh
./work186/sms1/src/scripts/mysql.sh
./temp/sms/bin/mysql.sh
./temp/sms/src/scripts/mysql.sh
$ cat 2.txt

real 0m0.083s
user 0m0.040s
sys  0m0.020s
[root@web186 root]#

第二種方式的嘗試也成功了,總結(jié)起來就是(time command-line) 2>file這里time緊貼著小括號(也可以的,命令行結(jié)束也不必帶分號。當(dāng)然好還是用第一種方式,畢竟啟動一個子shell是要多占些資源的。

感謝各位的閱讀,以上就是“shell下time”命令的輸出詳解”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對shell下time”命令的輸出詳解這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,,小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!

分享名稱:shell下time”命令的輸出詳解-創(chuàng)新互聯(lián)
本文鏈接:http://chinadenli.net/article26/cdjpcg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、外貿(mào)網(wǎng)站建設(shè)用戶體驗搜索引擎優(yōu)化、動態(tài)網(wǎng)站網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營
美国欧洲日本韩国二本道| 欧美一级不卡视频在线观看| 伊人国产精选免费观看在线视频 | 国产一区国产二区在线视频| 国产色一区二区三区精品视频| 日韩国产亚洲欧美激情| 日韩欧美国产精品自拍| 日本高清不卡在线一区| 欧美一区二区三区高潮菊竹| 99福利一区二区视频| 亚洲中文字幕在线观看四区| 亚洲一区精品二人人爽久久| 日本中文在线不卡视频| 国产成人精品一区二区在线看| 99精品国产一区二区青青| 欧美日韩精品综合一区| 99久久国产综合精品二区| 欧美一级特黄大片做受大屁股| 欧美不卡高清一区二区三区| 在线九月婷婷丁香伊人| 人妻人妻人人妻人人澡| 欧美亚洲91在线视频| 91欧美日韩精品在线| 日韩成人中文字幕在线一区| 国产成人午夜福利片片| 欧美中文日韩一区久久| 日韩一区二区三区高清在| 丰满人妻熟妇乱又伦精另类视频| 日韩人妻中文字幕精品| 玩弄人妻少妇一区二区桃花| 在线观看中文字幕91| 久久精品国产99精品最新| 日韩一区二区三区在线欧洲| 精品日韩国产高清毛片| 欧美午夜伦理在线观看| 日韩国产中文在线视频| 深夜视频在线观看免费你懂| 日本特黄特色大片免费观看| 麻豆在线观看一区二区| 男人大臿蕉香蕉大视频| 91精品日本在线视频|