在 shellscript 裡面找出 process 的數目 - Linux

Wallis avatar
By Wallis
at 2015-05-21T22:36

Table of Contents


我寫了一支 shellscript,叫做 test.sh,內容是:
#!/bin/bash
var=$(ps aux | grep 'test' )
echo $var


然後我執行的時候輸入 ./test.sh

結果輸出:
linux 7264 0.0 0.2 5180 1092 pts/0 S+ 22:33 0:00 /bin/bash ./test.sh
linux 7265 0.0 0.1 5180 512 pts/0 S+ 22:33 0:00 /bin/bash ./test.sh
linux 7267 0.0 0.1 4384 800 pts/0 S+ 22:33 0:00 grep test



如果把 shellscript 改成:

#!/bin/bash
ps aux | grep 'test'

會輸出:
linux 7271 0.0 0.2 5176 1096 pts/0 S+ 22:36 0:00 /bin/bash ./test.sh
linux 7273 0.0 0.1 4384 800 pts/0 S+ 22:36 0:00 grep test



想請問為何有這樣的差異呢 ?

--
Tags: Linux

All Comments

Sierra Rose avatar
By Sierra Rose
at 2015-05-22T00:39
pross substitution是用sub shell實現的,多一層sh
Andrew avatar
By Andrew
at 2015-05-24T05:07
http://www.tldp.org/LDP/abs/html/commandsub.html
Erin avatar
By Erin
at 2015-05-28T07:17
這兩個結果是不是放反啦?應該有echo的才會失去換行字元
Olive avatar
By Olive
at 2015-06-01T04:26
數目?那要加 | wc -l 啊

免費私有Git Repo - Visual Studio Online

Jacky avatar
By Jacky
at 2015-05-21T11:05
PTT的Linux板好像比較多人在用Git,所以就貼在這裡。 今天發現微軟的Visual Studio Online有提供免費的私有Git repo。 有別於GitHub的免費公開Git repo。 VSO與GitHub可說是有互補的功用。 GitHub的定位基於公開(public),VSO的定位則是基於私有 ...

Linux 下 WD My Passport 隨身硬碟加密問題(已解決)

Thomas avatar
By Thomas
at 2015-05-19T23:20
最近發生了滿好笑的狀況~ 大約 2年前吧,當我還在使用 Windows 系統時, 我購入了 WD my passport 的隨身硬碟來存放一些秘密資料, 並給他加上了密碼。 如今我已經把我的桌機、筆電都換成 Debian 了。 然後最近突然想從那個硬碟拿以前的資料回來, 結果發現,系統根本過不了加密那關 ...

Debian 套件打包工作坊

Sandy avatar
By Sandy
at 2015-05-19T19:30
https://tossug.hackpad.com/Debian-packaging-workshop-7-LqufwsVhqbE 正在準備開始中 #tossug #debian #packaging #workshop 歡迎大家遠端線上參加 主題一:metapackage/transitional/dum ...

用pdf開啟文字檔 (轉檔問題)

Megan avatar
By Megan
at 2015-05-19T15:45
請問一下,小弟目前在使用鼎新的tiptop 因工作需要 想寫一個shell可以用pdf將報表直接開啟 目前已可呼叫pdf來開啟檔案 但因報表是txt純文字 所以開啟時會因為沒有轉檔而發生錯誤 請問一下各位大大有沒有遇過類似的問題 這邊該如何解決轉檔的問題 謝謝atat - ...

迴圈內變數中的變數問題?

Edith avatar
By Edith
at 2015-05-18T22:50
有段時間沒有寫 script 了,不過我的話會把所有 ip 放到一個檔案裡面, 例如 ip_addr.txt,然後用一個變數去抓那隻檔案的內容,大概會像這樣: --- #/bin/bash # 把 ip_addr.txt 內所有 ip 存到 ip_addr 這個變數裡面。 ip_addr = `cat ...