linux - 尝试在 bash shell 环境中从下载的 html 页面中获取 'grep' 链接,而无需 cut、sed、tr 命令(仅 e/grep)

标签 linux bash shell tr

在 Linux shell 中,我试图从下载的 HTML 脚本文件中返回指向 JPG 文件的链接。到目前为止,我只到了这一点:

grep 'http://[:print:]*.jpg' 'www_page.html'

我不想使用“tr”、“cut”、“sed”等辅助命令...“lynx”没问题!

最佳答案

单独使用 grep 而不修改文件是可行的,但正如许多人在评论中指出的那样不推荐。

如果您可以稍微放宽您的要求,那么您可以使用 html tidy修改下载的 HTML 文件,使每个 html 实体都在一行上,这样正则表达式就可以像你想要的那样更简单,像这样:

$ tidy file.html|grep -o 'http://[[:print:]]*.jpg'

注意使用“-o”选项来 grep 只打印输入的匹配部分

关于linux - 尝试在 bash shell 环境中从下载的 html 页面中获取 'grep' 链接,而无需 cut、sed、tr 命令(仅 e/grep),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7592082/

相关文章:

linux - 为什么 proc_create 模式参数 0 对应于 0444

ruby - 使用 Ruby Enterprise v1.8.7 安装 ruby​​-debug/ruby-debug-base 时出错

ruby-on-rails - 在运行 Debian 的虚拟机上使用 RVM 安装 Ruby 无提示失败

python - 如何将Azure应用服务Python版本从3.9.7更改为3.9.12?

递归遍历文件的shell脚本

linux - 从单个用户导出时在所有 shell 中重复的环境变量

c++ - 如果没有\n则不会打印消息,而使用\n则打印消息

bash - 自动化 "git merge"提交消息

bash - 根据另一列计算列的平均值

linux - mac + linux 执行jar文件?