Linux的自动化脚本:使用crul命令的从某个网站获取数据(从url获取数据),并将其写入一个文件中

目录

一、要求

二、思路

三、shell脚本实现演练

(一)脚本实现

(二)脚本代码说明

(三)脚本执行

(四)数据内容


一、要求

       Linux的一个进程需要获取一个网站上的最新数据,根据这些数据,更新自己的网页的一部分内容。如何让linux自动获取网站更新的数据呢?

        使用http的request等指令,可能需要很多语句,也比较复杂。那么,如何选择?采用哪种方式比较便捷呢?

二、思路

        curl linux的一个强大的命令行工具,用于与服务器进行通信,通常用于发送或接收数据。它支持多种协议,如 HTTPHTTPSFTP 等,并且提供了大量的选项来定制请求和响应。在 Linux 中,curl 经常被用于脚本中以自动化网络相关的任务。

        curl的“-s”选项,用于静默模式或称为安静模式。当使用此选项时,curl 不会在屏幕上显示进度信息或错误消息。它只会输出实际请求的内容。

        因此我们可以采用这个方法,把获取到网站的内容写入到一个文件中,然后给其他进程来使用。

三、shell脚本实现演练

(一)脚本实现

        如下展示如何使用在bash脚本中,使用curl命令,从某个 URL 获取数据,并将其写入一个文件中。

        假设我们有一个脚本 `get_url_data.sh`,内容如下:

#!/bin/bash
# 指定要获取数据的 URL
URL="http://baoyang.com.cn/data"

# 使用 curl 获取数据,并将输出写入文件中
curl -s "$URL" > data.txt

# 检查数据是否成功写入文件
if [ $? -eq 0 ]; then
    echo "数据已成功写入 data.txt"
else
    echo "获取数据失败"
fi
# 脚本结束

(二)脚本代码说明

1、功能部分

        (1). 定义了一个变量 `URL`,它包含了我们要获取数据的 URL。

        (2). 用 `curl` 命令和 `-s` 选项(静默模式,不输出错误信息)来获取指定 URL 的数据。

        (3). 使用 `>` 符号将 `curl` 的输出重定向到文件 `data.txt` 中。

2、执行结果判断

        (1). 使用 `if` 语句和 `$?` 变量来检查 `curl` 命令的退出状态。如果退出状态为 0,表示命令成功执行;否则,表示执行失败。

        (2). 根据执行结果输出成功或者失败的信息提示。

3、其他说明

         这个脚本可以在 Linux 环境中运行,当你想要定期获取某个网站的数据或者在自动化任务中使用时非常有用。你可以根据需要修改 URL 和文件名。

(三)脚本执行

        要运行上述脚本,需要赋予它执行权限,然后可以通过命令行执行它:

chmod +x get_url_data.sh

./get_url_data.sh

        这将运行脚本,并按照脚本的设计输出相应的消息,并将数据写入 `data.txt` 文件。

(四)数据内容

        通过cat命令,可以看出,能够获取到对应的数据,如下图示:

        把data.txt的所有内容(html的源代码)列出来,如下所示:

[root@localhost quinn]# cat data.txt
<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1, minimum-scale=1,user-scalable=no" />
    <meta name="apple-mobile-web-app-capable" content="yes" />
    <meta name="apple-mobile-web-app-status-bar-style" content="black" />
    <meta name="format-detection" content="telephone=no" />
    <title>技术资料-苏州邦耀电子科技有限公司</title>
    <meta name="Keywords" content="苏州邦耀电子科技有限公司" />
    <meta name="Description" content="苏州邦耀电子科技有限公司" />
    <meta name="renderer" content="webkit">
    <meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
    <link href="/public/static/home/css/css.css" rel="stylesheet" type="text/css" />
    <link href="/public/static/home/css/pages.css" rel="stylesheet" type="text/css" />
    <link href="/public/static/home/css/reset.css" rel="stylesheet" type="text/css" />
    <link href="/public/static/home/css/style.css" rel="stylesheet" type="text/css" />
    <script type="text/javascript" src="/public/static/home/js/jquery.js"></script>
    <script type="text/javascript" src="/public/static/home/js/web.js"></script>
    <script type="text/javascript" src="/public/static/home/js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="/public/static/home/js/scroll.js"></script>
    <script type="text/javascript" src="/public/static/home/js/hyt_menu.js"></script>
    <link rel="shortcut icon" href="/favicon.ico" />
</head>

<body>
    <div class="header">
        <div class="header_center">
            <div class="logo fl"><a href="/"><img src="/public/static/home/picture/logo.jpg" class="fl"></a>
                <p>专业从事无线通讯设备销售<br />提供恰如所需的服务及通信解决方案</p>
            </div>
            <div class="header_r fr">
                <p class="top_links" style="text-align:right; margin-top:10px;"><a href="/service.html">技术资料</a> | <a href="/qa.html">常见问题</a> | <a href="/contact.html">联系我们</a></p>
                <p class="top_tel" style="text-align:right; margin-top:20px;"><img src="/public/static/home/images/tel.png"></p>
            </div>
            <div class="clear"></div>
        </div>
        <div class="nav" id="mynav">
            <ul class="clearfixed">
                <li>
                    <a href="/" class="">首页</a>
                </li>
                                <li>
                    <a href="/about.html" class="">关于我们</a>
                </li>
                                <li>
                    <a href="/news.html" class="">新闻中心</a>
                </li>
                                <li>
                    <a href="/products.html" class="">产品展示</a>
                </li>
                                <li>
                    <a href="/cases.html" class="">成功案例</a>
                </li>
                                <li>
                    <a href="/hr.html" class="">人才招聘</a>
                </li>
                                <li>
                    <a href="/service.html" class="cur">客户服务</a>
                </li>
                                <li>
                    <a href="/store.html" class="">购买方式</a>
                </li>
                            </ul>
        </div>
    </div>
<style>
#newlist li {
    border-bottom: dashed 1px #ccc;
    text-indent: 20px;
    line-height: 35px;
    background: url(/public/static/home/images/icon.jpg) 5px 14px no-repeat;
}

#newlist li span {
    float: right;
    padding: 0 10px 0 0;
    display: inline
}
</style>
<div style="width:980px; margin:0 auto; height:200px;"><img src="/public/static/home/images/banner_fuwu.jpg"></div>
<div class="container">
    <div class="pages_content">
        <div class="pages_bar fl">
            <div class="pages_menu">
                <div class="title">客户服务</div>
                <ul>
                                        <li class="cur"><a href="/service.html">技术资料</a></li>
                                        <li class=""><a href="/qa.html">常见问题</a></li>
                                    </ul>
            </div>
            <div class="pags_contact m10">
    <div class="title">联系我们</div>
    <div class="info">
        <p><img title="联系我们" src="/public/static/home/picture/14080036633180.png" alt=""></p>
        <p style="line-height:42px;"><strong>苏州邦耀电子科技有限公司</strong></p>
        <p><img src="/public/static/home/images/coni2.jpg" width="16" alt=""><a href="/store.html">门店联系方式</a></p>
        <p><img src="/public/static/home/images/coni1.jpg" width="15" alt=""><a href="/contact.html">公司联系方式</a></p>
        <p>网址:<span class="blue">http://www.szbydz.cn/</span></p>
        <p>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; www.bangyao.com.cn</p>
    </div>
</div>
        </div>
        <div class="pages_main fr">
            <h2 class="pages_title">
                <div class="posi fr">
                    <span>当前位置:</span> <a href="/">首页</a>&gt;&gt;<a href="/service.html">客户服务</a> &gt;&gt; <a href="/service.html" target="_self" class="cur">技术资料</a>
                </div>
                <span class="tit">技术资料</span>
            </h2>
            <div class="cont_text" style="padding:0 12px; margin-top:20px;line-height: 30px; font-size:14px;">
                <ul id="newlist">
                                        <li><span>2019-01-24</span> <a href="/service/12.html">为什么要选择数字对讲机?</a></li>
                                        <li><span>2019-01-24</span> <a href="/service/11.html">美军标及国际防护标准简介</a></li>
                                        <li><span>2016-04-25</span> <a href="/service/10.html">什么叫数字对讲机、数字对讲机的特点及优势</a></li>
                                        <li><span>2016-04-25</span> <a href="/service/9.html">如何正确使用电池</a></li>
                                        <li><span>2016-04-25</span> <a href="/service/7.html">普通消费者如何购买对讲机</a></li>
                                        <li><span>2016-04-25</span> <a href="/service/8.html">海能达对讲机电池日常使用及存放保养说明</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/6.html">功分器、合路器、分路器的介绍</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/4.html">防爆对讲机比较</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/5.html">对讲机日常保养及使用注意事项</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/3.html">对讲机莫当手机使用</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/2.html">车载天线和基地台天线的选购知识</a></li>
                                        <li><span>2016-04-22</span> <a href="/service/1.html">DMR技术白皮书</a></li>
                                    </ul>
                <div class="clear"></div>
                <div class="pages" align="center"></div>
            </div>
        </div>
        <div class="clear"></div>
    </div>
</div>
<div id="fooding">
    <div class="w980">
        <div class="fooding_lb">
                        <ul>
                <p><a href="/about.html">关于我们</a></p>
                                <li><a href="/about.html">公司简介</a></li>
                                <li><a href="/culture.html">企业文化</a></li>
                                <li><a href="/honor.html">资质荣誉</a></li>
                                <li><a href="/idea.html">企业愿景</a></li>
                                <li><a href="/adv.html">我们的优势</a></li>
                            </ul>
                                    <ul>
                <p><a href="/news.html">新闻中心</a></p>
                                <li><a href="/news.html">邦耀咨询</a></li>
                            </ul>
                                    <ul>
                <p><a href="/products.html">产品展示</a></p>
                                <li><a href="/products.html?classid=21">对讲机产品</a></li>
                                <li><a href="/products.html?classid=22">车载对讲机</a></li>
                                <li><a href="/products.html?classid=23">中继台</a></li>
                                <li><a href="/products.html?classid=24">通讯配件</a></li>
                            </ul>
                                                            <ul>
                <p><a href="/service.html">客户服务</a></p>
                                <li><a href="/service.html">技术资料</a></li>
                                <li><a href="/qa.html">常见问题</a></li>
                            </ul>
                                    <ul>
                <p><a href="/store.html">购买方式</a></p>
                                <li><a href="/store.html">联系门店</a></li>
                                <li><a href="/contact.html">联系公司</a></li>
                                <li><a href="/message.html">在线留言</a></li>
                            </ul>
                                    <ul style=" width:120px;">
                <p><a href="">微信公众号</a></p>
                <li style="padding-top:5px;"><img src="/public/static/home/images/er.jpg" style="width:117px; height:117px;" /></li>
            </ul>
            <div style="clear:both"></div>
        </div>
        <div style="clear:both"></div>
    </div>
</div>
<!--顶上-->
<div class="footer">
    <div style="clear:both"></div>
    <div class="fooxia">
        <div class="w980" style="">
            <div class="fooxia_2" style="padding-top:25px;">
                <a href="/">网站首页</a>&nbsp;
                                <a href="/about.html">关于我们</a>&nbsp;
                                <a href="/news.html">新闻中心</a>&nbsp;
                                <a href="/products.html">产品展示</a>&nbsp;
                                <a href="/cases.html">成功案例</a>&nbsp;
                                <a href="/hr.html">人才招聘</a>&nbsp;
                                <a href="/service.html">客户服务</a>&nbsp;
                                <a href="/store.html">购买方式</a>&nbsp;
                            </div>
            <div class="fooxia_2">友情链接&nbsp;
                                <a href="http://www.hytera.com.cn">海能达</a>&nbsp;
                            </div>
            <div class="fooxia_3">
                <p>地址:江苏省苏州市姑苏区南园北路118号 &nbsp;联系电话:0512-65106078&nbsp;联系人:王经理&nbsp;手机:15995615713</p>
                <p style="padding-top:10px;">©  2024 苏州邦耀电子科技有限公司 <a href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank">苏ICP备16015847号-1</a>&nbsp;<a href="https://beian.mps.gov.cn/#/query/webSearch" target="_blank"><img src="/uploads/system/20240422/add01486cf3f0cb0b3634e1e5e964ec2.png" style="display:inline-block; height:20px">苏公网安备32050802011816号</a>&nbsp;技术支持:汇成传媒</p>
            </div>
        </div>
    </div>
</div>
</body>
[root@localhost quinn]#

显然,可以获取到我们需要的内容。

要求能够得到实现!


若想了解更多,文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/574121.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript:将input标签中的内容打印到控制台

使用浏览器进行开发时&#xff0c;按F12可以查看网页信息。 目标&#xff1a;实现将input标签中的内容&#xff0c;打印到控制台&#xff08;console&#xff09; HTML页面的关键代码实现&#xff1a; 登录功能&#xff1a; HTML代码&#xff1a; <div class"form-…

FastAPI从入门到实战(16)——请求参数汇总

FastAPI有各种各样的参数,包括: url参数(定义在url中的参数)param参数(使用url后面?xxxx)定义的参数body参数(在请求主体中携带的json参数)form参数(在请求主体中携带的web表单参数)cookie参数(在请求的cookie中携带的参数)file参数(客户端上传的文件) 1. url参数 from fas…

【A-034】基于SSH的电影订票系统(含论文)

【A-034】基于SSH的电影订票系统&#xff08;含论文&#xff09; 开发环境&#xff1a; Jdk7(8)Tomcat7(8)MySQLIntelliJ IDEA(Eclipse) 数据库&#xff1a; MySQL 技术&#xff1a; SpringStruts2HiberanteJSPJquery 适用于&#xff1a; 课程设计&#xff0c;毕业设计&…

户外指南——时代产物

分类 一级分类&#xff1a; 衣&#xff1a;除了上述提到的&#xff0c;还包括衣物的材质、款式多样性、与身份地位的关联等。 食&#xff1a;还包括饮食的文化内涵、地域特色、对特殊饮食需求的满足等。 住&#xff1a;还包括居住空间的合理布局、智能家居的应用、与自然环境…

mysql的约束和表关系

根据查询的结果&#xff0c;复制出一个新表 create table newTable AS select * from oldTable; create table newPeople AS select * from day2_test.people; 约束 引入&#xff1a;如果某一列如id列&#xff0c;有重复的数据&#xff0c;无法准确定位&#xff0c;有的列有空…

安装VCenter 7 对硬件资源的需求

安装VMware vCenter Server 7.x 对硬件资源的需求主要包括以下方面&#xff1a; 服务器硬件&#xff1a; 处理器&#xff1a;64位 x86架构&#xff0c;推荐采用多核CPU以支持高并发管理和运行多个虚拟机。具体数量取决于vCenter Server将管理的虚拟机规模及复杂度。内存&#x…

vue系统指令二

vue系统指令二 v-model:双向数据绑定 重点&#xff1a;双向数据绑定&#xff0c;只能用于表单元素&#xff0c;或者用于自定义组件。 之前的文章里&#xff0c;我们通过v-bind&#xff0c;给<input>标签绑定了data对象里的name属性。当data里的name的值发生改变时&#…

未来五十年,智能科技将如何改变传统行业格局?

未来五十年内&#xff0c;随着人工智能&#xff08;AI&#xff09;和智能科技的不断发展&#xff0c;许多行业将面临被取代的风险。虽然这种趋势可能会带来一些担忧&#xff0c;但也将为人类社会带来巨大的变革。下面将详细探讨哪些行业可能会在未来被智能科技所取代。 ▶ 制造…

攻防世界fileclude题解

攻防世界fileclude题解 ​​ 题目要求file1和file2参数不能为空 且file2这个文件内容值为hello ctf&#xff0c;用php://input 然后POST体内输入hello ctf即可满足这个if条件 满足这个条件后就会包含file1变量所指定的那个文件。用php伪协议来跨目录包含一下flag.php文件就可以…

群组分析方法

目录 1.什么是群组分析方法 2.基本原理 3.群组分析方法分类 3.1.层次方法 3.2.划分方法 3.3.密度基方法 ​​​​​​​3.4.模型基方法 4.群组评估 5.应用步骤 1.什么是群组分析方法 群组分析&#xff08;Cluster Analysis&#xff09;是数据分析中的一种重要方法&…

【第3节】“茴香豆“:搭建你的 RAG 智能助理

目录 1 基础知识1.1.RAG技术的概述1.2 RAG的基本结构有哪些呢&#xff1f;1.3 RAG 工作原理&#xff1a;1.4 向量数据库(Vector-DB )&#xff1a;1.5 RAG常见优化方法1.6RAG技术vs微调技术 2、茴香豆介绍2.1应用场景2.2 场景难点2.3 茴香豆的构建&#xff1a; 3 论文快读4 实践…

Swift - Playground

文章目录 Swift - Playground1. 新建Playground2. View3. 图片4. ViewController5. Playground - 多Page6. 注释6.1 Playground的注释支持markup语法&#xff08;与markdown相似&#xff09;6.1.1 语法 Swift - Playground Playground可以快速预览代码效果&#xff0c;是学习语…

SpringCloud系列(15)--Eureka自我保护

前言&#xff1a;在上一章节中我们说明了一些关于Eureka的服务发现功能&#xff0c;也用这个功能进行接口的实现&#xff0c;在本章节则介绍一些关于Eureka的自我保护 1、Eureka保护模式概述 保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。默认情况…

chrome插件 脚本 使用和推荐

chrome插件使用 在极简插件中可以进行下载并进行安装, 内部有安装教程在极简插件中搜索"油猴",下载一个油猴插件,并安装,可以用于下载很多的用户脚本用户脚本下载地址Greasy Fork,里面有很多实用的用户脚本供下载,并在油猴中进行管理 推荐的插件 Tampermonkey 篡改…

动态规划---斐波那契数列模型

目录 一、斐波那契数列的基本概念 二、动态规划在斐波那契数列中的应用与优势 三、实际案例&#xff1a;使用动态规划解决斐波那契数列问题 四、动态规划问题的做题步骤 五、例题 1、第N个泰波那契数---点击跳转题目 2、三步问题----点击跳转题目 3、最小花费爬楼梯---…

SparkSQL---简介及RDD V.S DataFrame V.S Dataset编程模型详解

一、SparkSQL简介 SparkSQL&#xff0c;就是Spark生态体系中的构建在SparkCore基础之上的一个基于SQL的计算模块。SparkSQL的前身不叫SparkSQL&#xff0c;而叫Shark&#xff0c;最开始的时候底层代码优化&#xff0c;sql的解析、执行引擎等等完全基于Hive&#xff0c;总之Sha…

ElasticSearch:查询操作合集

先看下我的数据&#xff1a; 1、查询所有文档&#xff1a; GET /cartest/_search或者 GET /cartest/_search {"query": {"match_all": {}} }2、匹配查询&#xff1a; match匹配类型查询&#xff0c;会把查询条件进行分词&#xff0c;然后进行查询&…

el-table 三角形提示

<template><div><el-table :data"tableData" style"width: 100%"><el-table-column prop"ddd" label"日期2" width"150" /><el-table-column prop"ddd" label"日期2" width…

Apifox接口调试工具

1、Apifox简介 Apifox 是集 API 文档、API 调试、API Mock、API 自动化测试多项实用功能为一体的 API 管理平台&#xff0c;定位为 Postman Swagger Mock JMeter。旨在通过一套系统、一份数据&#xff0c;解决多个工具之间的数据同步问题。只需在 Apifox 中定义 API 文档&a…

线性模型算法-完结总结篇

简介 该篇文章就是在CSDN上更新的最终版本。 本文章将介绍&#xff1a;机器学习中的线性模型有关内容&#xff0c;我将尽可能做到 详细地介绍线性模型的所有相关内容,模块如下&#xff0c;希望这些将有助于读者了解这种最初步但却强大的算法&#xff1a; 线性回归逻辑回归 S…