【LINUX】shell中模拟爬虫

url_home="http://localhost:8080"

curl ${url_home} -o 1.html

cat 1.html | grep 'href="' | awk -F"\"" '{ print $2 }' >urls.txt

cat 1.html | grep 'href="' | awk -F"\"" '{ print 3 }' \| awk -F"\<" '{ print 1 }' | sed "s:>::g"|sed "s: :_:g" > titles.txt

打开文件1

exec 3< urls.txt

打开文件2

exec 4< titles.txt

读取文件1和文件2的内容

while read -u 3 url && read -u 4 title

do

echo "url: $url"

echo "title: $title"

curl "{url_home}/url" -o "${title}.html"

done

关闭文件

exec 3<&-

exec 4<&-

相关推荐
2035去旅行9 分钟前
ADB的底层原理
linux·adb·嵌入式·arm·soc
武子康15 分钟前
单卡 A6000 跑 Qwen-Drive:怎样留下可比较的第一条基线?
linux·人工智能·深度学习
女神下凡21 分钟前
芯参谋(107):杰理AC_中科蓝讯_开发指南
linux·服务器·网络·单片机·嵌入式硬件
落羽的落羽28 分钟前
【C++】C++17的主要特性
linux·服务器·开发语言·c++·算法·机器学习
SQL772 小时前
IT运维发展史,一部宏伟史诗
运维·运维发展史
分布式存储与RustFS3 小时前
Terraform 状态文件老在本地丢、并发还撞锁:把 state 锁进 RustFS
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
csdn_aspnet3 小时前
macOS 10 、Docker 玩轉 MySQL
运维·mysql·macos·docker·容器·mac
爱和冰阔落5 小时前
【Linux网络】TCP 半包粘包怎么解决?从长度报头、JSON 拆包到网络计算器完整实战
linux·运维·网络·tcp/ip
say_fall7 小时前
【Linux网络编程】UDP套接字编程:系统编程组件、基础回显服务、InetAddr与地址转换、翻译服务与线程池聊天室
linux·服务器·网络·udp·vr
ö Constancy7 小时前
一台电脑的硬件组成与作用:按功能分类详解(Windows 与 Linux 视角)
linux·windows·电脑