Shell 编写一个sed命令来提取单词

Shell 编写一个sed命令来提取单词,shell,sed,Shell,Sed,我想从中获取一个文件 libqt4-dbus libqt4-network libqt4-script libqt4-test libqt4-xml libqtcore4 libqt4-designer libqt4-opengl libqt4-svg libqtgui4 如何编写sed命令,例如sed's//'test 这是名为test的文件 以下包具有未满足的依赖项: libqt4核心:依赖于:libqt4 dbus(=4:4.8.2

我想从中获取一个文件

libqt4-dbus   
libqt4-network   
libqt4-script   
libqt4-test   
libqt4-xml   
libqtcore4   
libqt4-designer   
libqt4-opengl   
libqt4-svg   
libqtgui4 
如何编写sed命令,例如
sed's//'test

这是名为test的文件

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

libqt4核心:依赖于:libqt4 dbus(=4:4.8.2+dfsg-10)但是 将安装4:4.8.2+dfsg-2
取决于:libqt4网络(=4:4.8.2+dfsg-10),但要安装4:4.8.2+dfsg-2
取决于:libqt4脚本(=4:4.8.2+dfsg-10),但不会安装它
取决于:libqt4测试(=4:4.8.2+dfsg-10),但不会安装它
取决于:libqt4xml(=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设计器(=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


假设以下位置存在某种格式问题:

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
使用awk

 awk -v RS="Depends:" 'NR>1{print $1}' temp.txt

如果您想区分“不安装”和“将要安装”这两行,您需要修改问题的文本。祝你好运。“依赖于每个独立的行吗?那么你可能会觉得很简单。它也需要使用吗?
libqt4gui
libqt4designer
信息真的与
libqt4core
信息在同一行吗?