0

有一个我想从中获取的文件

libqt4-dbus   
libqt4-network   
libqt4-script   
libqt4-test   
libqt4-xml   
libqtcore4   
libqt4-designer   
libqt4-opengl   
libqt4-svg   
libqtgui4 

我如何编写一个 sed 命令,例如 sed 's/ /' test

这是名为 test 的文件

以下包具有未满足的依赖项:

libqt4-core :取决于:libqt4-dbus (= 4:4.8.2+dfsg-10) 但要安装 4:4.8.2+dfsg-2
取决于:libqt4-network (= 4:4.8.2+dfsg- 10) 但要安装 4:4.8.2+dfsg-2
取决于:libqt4-script (= 4:4.8.2+dfsg-10) 但不会安装
取决于:libqt4-test (= 4: 4.8.2+dfsg-10) 但不会安装
取决于:libqt4-xml (= 4:4.8.2+dfsg-10) 但要安装 4:4.8.2+dfsg-2
取决于:libqtcore4 (= 4:4.8.2+dfsg-10) 但要安装 4:4.8.2+dfsg-2 libqt4-gui : 取决于: libqt4-designer (= 4:4.8.2+dfsg-10) 但它是不会安装
取决于:libqt4-opengl (= 4:4.8.2+dfsg-10) 但要安装 4:4.8.2+dfsg-2
取决于:libqt4-svg (= 4:4.8.2+dfsg-10) 但它不会安装
取决于:libqtgui4 (= 4:4.8.2+dfsg-10) 但要安装 4:4.8.2+dfsg-2

4

2 回答 2

0

假设在以下位置存在某种格式故障:

Depends: libqtcore4 (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed libqt4-gui : Depends: libqt4-designer (= 4:4.8.2+dfsg-10) but it is not going to be installed

(所以实际上它可能是这样写的:

Depends: libqtcore4 (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
libqt4-gui : Depends: libqt4-designer (= 4:4.8.2+dfsg-10) but it is not going to be installed

) 那么这应该这样做:

sed 's/.*Depends: \([^ ]*\) .*/\1/' lib-dep-list

给定数据文件lib-dep-list

libqt4-core : Depends: libqt4-dbus (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
Depends: libqt4-network (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
Depends: libqt4-script (= 4:4.8.2+dfsg-10) but it is not going to be installed
Depends: libqt4-test (= 4:4.8.2+dfsg-10) but it is not going to be installed
Depends: libqt4-xml (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
Depends: libqtcore4 (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
libqt4-gui : Depends: libqt4-designer (= 4:4.8.2+dfsg-10) but it is not going to be installed
Depends: libqt4-opengl (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed
Depends: libqt4-svg (= 4:4.8.2+dfsg-10) but it is not going to be installed
Depends: libqtgui4 (= 4:4.8.2+dfsg-10) but 4:4.8.2+dfsg-2 is to be installed

输出是:

libqt4-dbus
libqt4-network
libqt4-script
libqt4-test
libqt4-xml
libqtcore4
libqt4-designer
libqt4-opengl
libqt4-svg
libqtgui4
于 2013-02-03T01:54:54.123 回答
0

使用 awk

 awk -v RS="Depends:" 'NR>1{print $1}' temp.txt
于 2013-02-04T08:23:33.110 回答