linux - 删除特定分隔符后的文本

标签 linux

我使用 lynx 从特定网页中提取所有链接。

lynx -dump http://www.example.com/videos | awk '/http/"{print $2}"' >> links.txt

它给出以下输出:

http://www.example.com/home/
http://www.example.com/contact/
http://www.example.com/videos/
..
..
..
..
http://www.example.com/video/1001/The-title-of-video
http://www.example.com/video/1002/The-title-of-video
http://www.example.com/video/1003/The-title-of-video
http://www.example.com/video/1004/The-title-of-video
..so on

我想做以下事情。

  1. 只输出那些包含/video/的链接
  2. 删除链接末尾的标题http://www.example.com/video/1001/ The-title-of-video 应该只输出 http://www.example.com/video/1001/

最佳答案

使用grep过滤输出,sed去除标题:

lynx -dump http://www.example.com/videos | grep /video/ | sed 's=/[^/]*$=='

关于linux - 删除特定分隔符后的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33699065/

相关文章:

c - 具有自己的文件偏移量的重复文件描述符

c++ - Linux中getlogin函数的使用

java - PHP 为 ls 命令返回问号

创建僵尸进程

linux - 使用gunzip计算一个字符串的crc32码

c++ - 无法将 Google Test NuGet 包添加到 Visual Studio Linux C++ 项目

python - apt-dpkg python-rpi.gpio依赖问题

linux - 使用 bash $ 命令执行 vi

linux - 带有重定向的 .htaccess 不起作用

mysql - 轻量级 mySQL 服务器?