2
此命令按預期工作:
(dpkg -l | egrep "linux.+3.8.0.*44" | awk '{print $2}')
linux-generic-lts-raring
linux-headers-3.8.0-44
linux-headers-3.8.0-44-generic
linux-headers-generic-lts-raring
linux-image-3.8.0-44-generic
linux-image-generic-lts-raring
然而,當我與bash -c
運行它它不工作:
bash -c "(dpkg -l | egrep "linux.+3.8.0.*44" | awk '{print $2}')"
ii linux-generic-lts-raring 3.8.0.44.44 Generic Linux kernel image and headers
ii linux-headers-3.8.0-44 3.8.0-44.66~precise1 Header files related to Linux kernel version 3.8.0
ii linux-headers-3.8.0-44-generic 3.8.0-44.66~precise1 Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii linux-headers-generic-lts-raring 3.8.0.44.44 Generic Linux kernel headers
ii linux-image-3.8.0-44-generic 3.8.0-44.66~precise1 Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii linux-image-generic-lts-raring 3.8.0.44.44 Generic Linux kernel image
我不知道爲什麼。這幾乎就像管道破裂一樣。
您能否生成一個示例,說明不在Debian派生髮行版上的用戶可以複製/粘貼/運行? –
也就是說,一個非常明顯的問題是傳遞給'egrep'的引號是外部使用的相同類型。 –
...爲什麼要將grep和awk作爲單獨的命令使用? 'bash -c「dpkg -l | awk'/linux.+3[.]8[.]0.*44/ {print $ 2}'」'。哦。除了「$ 2」在那裏不起作用。 –