亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 6408 | 回復: 7
打印 上一主題 下一主題

如何判斷一個文件的內(nèi)容是否為空?(運行環(huán)境時ksh) [復制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2012-04-17 12:52 |只看該作者 |倒序瀏覽
先申明我的運行環(huán)境時ksh 不是bash

現(xiàn)在用vi編輯一個文件,創(chuàng)建文件、dd和用X 刪光文件后,用
cat filename |wc -l
輸出行數(shù)是1

用if [ ! -s filename ]來判斷依然是非空的文件。

我現(xiàn)在用printf >  filename  清空文件后。
運行 cat filename |wc -l 才是輸出0
判斷是因為用VI 編輯,刪光完文件會留下一個回車符,讓文件成為非空文件。

求解決的方法。。


我要崩潰了 bash 上沒這個問題的啊。。。。。

論壇徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亞冠之浦和紅鉆
日期:2015-06-23 19:10:532015亞冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16賽季CBA聯(lián)賽之山東
日期:2016-01-31 18:25:0515-16賽季CBA聯(lián)賽之四川
日期:2016-02-16 16:08:30程序設(shè)計版塊每日發(fā)帖之星
日期:2016-06-29 06:20:002017金雞報曉
日期:2017-01-10 15:19:5615-16賽季CBA聯(lián)賽之佛山
日期:2017-02-27 20:41:19
2 [報告]
發(fā)表于 2012-04-17 12:56 |只看該作者
你的意思是如何判斷一個非空文件是空文件?

論壇徽章:
0
3 [報告]
發(fā)表于 2012-04-17 13:09 |只看該作者
是判斷一個文件的內(nèi)容是否是空的,
因為ksh里用vi創(chuàng)建的文件即使沒用內(nèi)容,用wc -l也會顯示出1行。
所以用VI編輯器把文件的內(nèi)容給刪光了,用wc -l也還是會顯示1行。
用if [ ! -s filename ]也是一樣會判斷這個文件不是空的。
PS:-s 是判斷非空 ! -s 是判斷為空

論壇徽章:
3
2015年辭舊歲徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:51:162015年亞洲杯之阿曼
日期:2015-04-07 20:00:59
4 [報告]
發(fā)表于 2012-04-17 13:10 |只看該作者
提示: 作者被禁止或刪除 內(nèi)容自動屏蔽

論壇徽章:
0
5 [報告]
發(fā)表于 2012-04-17 13:17 |只看該作者
  1. [sca076][root][/]#vi test.1




































  2. "test.1" [New file]

  3. ~
  4. ~
  5. ~
  6. ~
  7. ~
  8. ~
  9. ~
  10. ~
  11. ~
  12. ~
  13. ~
  14. ~
  15. ~
  16. ~
  17. ~
  18. ~
  19. ~
  20. ~
  21. ~
  22. ~
  23. ~
  24. ~
  25. ~
  26. ~
  27. ~
  28. ~
  29. ~
  30. ~
  31. ~
  32. ~
  33. ~
  34. ~
  35. ~
  36. ~
  37. ~
  38. ~
  39. ~
  40. "test.1" [New file] 1 line, 1 character
  41. [sca076][root][/]#cat test.1 |wc -l
  42.        1
復制代碼
這是KSH上的。。。。
  1. [scl001][root][/root]#vi test.1







































  2. ~                                                                                                                                                                     
  3. ~                                                                                                                                                                     
  4. ~                                                                                                                                                                     
  5. ~                                                                                                                                                                     
  6. ~                                                                                                                                                                     
  7. ~                                                                                                                                                                     
  8. ~                                                                                                                                                                     
  9. ~                                                                                                                                                                     
  10. ~                                                                                                                                                                     
  11. ~                                                                                                                                                                     
  12. ~                                                                                                                                                                     
  13. ~                                                                                                                                                                     
  14. ~                                                                                                                                                                     
  15. ~                                                                                                                                                                     
  16. ~                                                                                                                                                                     
  17. ~                                                                                                                                                                     
  18. ~                                                                                                                                                                     
  19. ~                                                                                                                                                                     
  20. ~                                                                                                                                                                     
  21. ~                                                                                                                                                                     
  22. ~                                                                                                                                                                     
  23. ~                                                                                                                                                                     
  24. ~                                                                                                                                                                     
  25. ~                                                                                                                                                                     
  26. ~                                                                                                                                                                     
  27. ~                                                                                                                                                                     
  28. ~                                                                                                                                                                     
  29. ~                                                                                                                                                                     
  30. ~                                                                                                                                                                     
  31. ~                                                                                                                                                                     
  32. ~                                                                                                                                                                     
  33. ~                                                                                                                                                                     
  34. ~                                                                                                                                                                     
  35. ~                                                                                                                                                                     
  36. ~                                                                                                                                                                     
  37. ~                                                                                                                                                                     
  38. ~                                                                                                                                                                     
  39. "test.1" [New] 0L, 0C written
  40. [scl001][root][/root]#cat test.1|wc -l
  41. 0
復制代碼
這是linux的bash上的

論壇徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亞冠之浦和紅鉆
日期:2015-06-23 19:10:532015亞冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16賽季CBA聯(lián)賽之山東
日期:2016-01-31 18:25:0515-16賽季CBA聯(lián)賽之四川
日期:2016-02-16 16:08:30程序設(shè)計版塊每日發(fā)帖之星
日期:2016-06-29 06:20:002017金雞報曉
日期:2017-01-10 15:19:5615-16賽季CBA聯(lián)賽之佛山
日期:2017-02-27 20:41:19
6 [報告]
發(fā)表于 2012-04-17 13:20 |只看該作者
樓主,換個說法: 你認為一個文件是不是非空文件

論壇徽章:
0
7 [報告]
發(fā)表于 2012-04-17 13:22 |只看該作者
現(xiàn)在就是一個底層的空文件判斷出錯了,這應(yīng)該算ksh本身的問題,但是影響到了程序本身。

論壇徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亞冠之浦和紅鉆
日期:2015-06-23 19:10:532015亞冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16賽季CBA聯(lián)賽之山東
日期:2016-01-31 18:25:0515-16賽季CBA聯(lián)賽之四川
日期:2016-02-16 16:08:30程序設(shè)計版塊每日發(fā)帖之星
日期:2016-06-29 06:20:002017金雞報曉
日期:2017-01-10 15:19:5615-16賽季CBA聯(lián)賽之佛山
日期:2017-02-27 20:41:19
8 [報告]
發(fā)表于 2012-04-17 13:31 |只看該作者
我覺得是KSH作者與其它KSH用戶認為一個非空文件不是空文件,而你認為是,所以大家的約定不太一致造成的
如果你改變自己的邏輯和大家統(tǒng)一起來那就不是ksh本身的問題了
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP