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

  免費(fèi)注冊 查看新帖 |

Chinaunix

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

[Linux資訊] 命令在腳本與命令行輸出結(jié)果不一致 [復(fù)制鏈接]

論壇徽章:
1
申猴
日期:2013-10-18 10:42:24
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2014-05-16 10:30 |只看該作者 |倒序?yàn)g覽
  1. #!/bin/bash
  2. keepa=`ps aux | grep "keepalive" | sed '/grep/d' | wc -l `
  3. echo $keepa
復(fù)制代碼
執(zhí)行結(jié)果后會出現(xiàn)5或者6,而keepalive只有3個(gè)進(jìn)程。
  1. ps aux | grep "keepalive" | sed '/grep/d' | wc -l
復(fù)制代碼
在secureCRT直接用鼠標(biāo)復(fù)制的這條命令,在命令行輸出正常~

我郁悶了好久,發(fā)現(xiàn)唯一不同的也就是有一個(gè)#!/bin/bash
去掉,果然正常了~
想請教下各位大大,這個(gè)#!/bin/bash怎么會影響到輸出值~

論壇徽章:
33
榮譽(yù)會員
日期:2011-11-23 16:44:17天秤座
日期:2014-08-26 16:18:20天秤座
日期:2014-08-29 10:12:18丑牛
日期:2014-08-29 16:06:45丑牛
日期:2014-09-03 10:28:58射手座
日期:2014-09-03 16:01:17寅虎
日期:2014-09-11 14:24:21天蝎座
日期:2014-09-17 08:33:55IT運(yùn)維版塊每日發(fā)帖之星
日期:2016-04-17 06:23:27操作系統(tǒng)版塊每日發(fā)帖之星
日期:2016-04-18 06:20:00IT運(yùn)維版塊每日發(fā)帖之星
日期:2016-04-24 06:20:0015-16賽季CBA聯(lián)賽之天津
日期:2016-05-06 12:46:59
2 [報(bào)告]
發(fā)表于 2014-05-16 12:02 |只看該作者
哪有這么取的.
  1. # ps -ef | grep httpd
  2. root      4548     1  0 May05 ?        00:00:21 /usr/sbin/httpd
  3. root     16258 11256  0 12:00 pts/3    00:00:00 grep httpd
  4. apache   25420  4548  0 May11 ?        00:00:08 /usr/sbin/httpd
  5. apache   25422  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  6. apache   25423  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  7. apache   25424  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  8. apache   25425  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  9. apache   25426  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  10. apache   25427  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  11. apache   25428  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  12. apache   25429  4548  0 May11 ?        00:00:00 /usr/sbin/httpd

  13. # ps -ef | grep [h]ttpd
  14. root      4548     1  0 May05 ?        00:00:21 /usr/sbin/httpd
  15. apache   25420  4548  0 May11 ?        00:00:08 /usr/sbin/httpd
  16. apache   25422  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  17. apache   25423  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  18. apache   25424  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  19. apache   25425  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  20. apache   25426  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  21. apache   25427  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  22. apache   25428  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
  23. apache   25429  4548  0 May11 ?        00:00:00 /usr/sbin/httpd
復(fù)制代碼
上面是正確的取法.

你那個(gè)bash加上之后, 多了一個(gè) 子shell, 而這個(gè)shell的名字很可能跟你的keepa是匹配的. 所以, 才會多出兩個(gè). 改個(gè)名字, 再用上面我的試試.

論壇徽章:
1
申猴
日期:2013-10-18 10:42:24
3 [報(bào)告]
發(fā)表于 2014-05-16 15:41 |只看該作者
回復(fù) 2# q1208c


    謝謝q1208c大大回答~
1、keepa換一個(gè)名字還是不行的。還是會多出兩個(gè)!
2、取法里邊那個(gè)grep的中括號是怎么個(gè)理解方法,沒搞懂~

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2014-05-16 16:08 |只看該作者
最簡單的分析方法:
    #!/bin/bash
    keepa=`ps aux | grep "keepalive" | sed '/grep/d' `
    echo $keepa
這就能看出為什么多出東西來啦。

我猜可能是要在
keepa=`ps aux | grep "keepalive" | sed '/grep/d' | wc -l `
這行里加個(gè)grep -v grep試試

論壇徽章:
1
申猴
日期:2013-10-18 10:42:24
5 [報(bào)告]
發(fā)表于 2014-05-16 16:22 |只看該作者
回復(fù) 4# ccddtt


    噢!找到了~
多謝ccddtt兄~
您需要登錄后才可以回帖 登錄 | 注冊

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP