<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[z54572的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/z54572</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; z54572]]></copyright><item><title><![CDATA[《转载-存档》shell中输入输出重定向，＞、＞＞、＜、＜＜、＞/dev/null、2＞&1、＜＜end、＜＜EOF等]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/120323316</link><guid>https://blog.youkuaiyun.com/z54572/article/details/120323316</guid><author>z54572</author><pubDate>Thu, 16 Sep 2021 10:14:23 +0800</pubDate><description><![CDATA[转载自：https://www.jb51.net/article/106373.htm

其他参考：www.runoob.com/linux/linux-shell-io-redirections.html

实际上，输入输出重定向中的3个标准文件描述符，输入0、正常输出1、错误输出2，这三个值经常被省略。

举例：


ls  &gt; shell_out 等价于:
ls 1&gt; shell_out








前言

相信大家经常能在shell脚本中发现&gt;/dev/null 2&gt;..]]></description><category></category></item><item><title><![CDATA[FastAPI 学习笔记 1]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/120057393</link><guid>https://blog.youkuaiyun.com/z54572/article/details/120057393</guid><author>z54572</author><pubDate>Thu, 02 Sep 2021 14:26:34 +0800</pubDate><description><![CDATA[前言

FastAPI： 是一个基于Python的高效的Web框架。

一、FastAPI是什么？

fastapi是高性能的web框架。他的主要特点是：

快速编码
	减少人为bug
	直观
	简易
	具有交互式文档
	基于API的开放标准（并与之完全兼容）：OpenAPI（以前称为Swagger）和JSON Schema。
技术背景：python3.6+、Starlette、Pydantic

官方文档地址：https://fastapi.tiangolo.com/



二、搭...]]></description><category></category></item><item><title><![CDATA[自动化测试的知识]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/108010150</link><guid>https://blog.youkuaiyun.com/z54572/article/details/108010150</guid><author>z54572</author><pubDate>Fri, 14 Aug 2020 17:18:52 +0800</pubDate><description><![CDATA[自动化测试的知识

Selenium是一个用于测试网站的自动化测试工具，支持各种浏览器包括Chrome、Firefox、Safari等主流界面浏览器，同时也支持phantomJS无界面浏览器。

说起无界面浏览器呢，有一个叫做 phantomjs 的玩意。

网上有很多selenium + phantomjs 达到完全模拟浏览器操作的案例。
如果你喜欢，更多用法可以参考文末地址。

但是呢本文不推荐它，为甚?

因为你使用phantomjs 的时候就会发现：
selenium已经放弃PhantomJS了，建]]></description><category></category></item><item><title><![CDATA[转：浏览器返回错误大全]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/108000991</link><guid>https://blog.youkuaiyun.com/z54572/article/details/108000991</guid><author>z54572</author><pubDate>Fri, 14 Aug 2020 11:27:10 +0800</pubDate><description><![CDATA[浏览器返回错误大全



1 网址协议不支持的协议。
	2 检测器内部错误。
	3 网址格式不正确。
	5 无法连接到代理服务器。
	6 无法连接到服务器或找不到域名。
	7 连接服务器失败。
	28 操作超时。可能原因：页面执行时间过长、服务器压力
	52 服务器未返回任何内容。
1xx-信息提示


这些状态代码表示临时的响应。客户端在收到常规响应之前，应准备接收一个或多个1xx响应。


100-继续。
	101-切换协议。
2xx-成功


这类状态代码表明服务器成功地接受了客户端请求。


20.]]></description><category></category></item><item><title><![CDATA[转：Flask 表单form.validate_on_submit()总是false的解决方法]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106372337</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106372337</guid><author>z54572</author><pubDate>Wed, 27 May 2020 08:48:59 +0800</pubDate><description><![CDATA[今天用Flask 表单，form.validate_on_submit()总是false，总算改对了，总结一下看到的解决方法
表单的地方没写{{ form.csrf_token }}

在HTML &lt;form&gt;&lt;/form&gt;里加上就好

 &lt;form class="layui-form" method="post"&gt;
 {{ form.csrf_token }}
 &lt;div class="layui-input-inline"&g...]]></description><category></category></item><item><title><![CDATA[SQlite元/系统数据查询：表和列]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106287867</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106287867</guid><author>z54572</author><pubDate>Fri, 22 May 2020 17:33:50 +0800</pubDate><description><![CDATA[import sqlite3

basedir='''C:\WorkSpace\PythonProgram\SSOETLMonitor'''
dbfile='''ssoetlmonitor.db'''
conn=sqlite3.connect(basedir+'\\'+dbfile)
md={}

tabs=conn.execute('''select name from sqlite_master where type='table' ''')

def Generate_Row(table_name):]]></description><category></category></item><item><title><![CDATA[转：SQLite中重置自动编号列的方法]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106281863</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106281863</guid><author>z54572</author><pubDate>Fri, 22 May 2020 15:52:09 +0800</pubDate><description><![CDATA[SQLite中重置自动编号列的方法

更新时间：2015年03月02日 09:42:23  转载投稿：junjie 

这篇文章主要介绍了SQLite中重置自动编号列的方法,本文讲解了3种情况和其对应解决方法,需要的朋友可以参考下



目前流行的数据库都提供了自动编号类型，SQLite也不例外。当数据库中包含自动编号的字段时，SQLite会自动建立一个名为 sqlite_sequence 的表。这个表包含两个字段：name 和 seq 。name字段记录了自动编号字段所在的表，seq字段记录了当...]]></description><category></category></item><item><title><![CDATA[转：SQLite 错误码]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106281709</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106281709</guid><author>z54572</author><pubDate>Fri, 22 May 2020 15:46:32 +0800</pubDate><description><![CDATA[#define SQLITE_OK 0 /* 成功 | Successful result */
/* 错误码开始 */
#define SQLITE_ERROR 1 /* SQL错误 或 丢失数据库 | SQL error or missing database */
#define SQLITE_INTERNAL 2 /* SQLite 内部逻辑错误 | Internal logic error in SQLite */
#define SQLIT...]]></description><category></category></item><item><title><![CDATA[Python Web Infrastructure - Flask(2)]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106214076</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106214076</guid><author>z54572</author><pubDate>Tue, 19 May 2020 14:34:46 +0800</pubDate><description><![CDATA[#使用Migrate的步骤：
#1. import flask_migrate包
#2. 调用Migrate方法：Migrate(app,db)参数分别是Flask对象和SQLAlchemy对象
#3. 定义环境变量(Windows/Linux)：set/export FLASK_APP=ModelClass.py 这个脚本是定义模型类的脚本路径，一般在当前目录下定义。
#4. 在命令行执行命令： flask db init 该命令创建归并目录,执行一次即可,在执行中会import FLASK_APP指定的]]></description><category></category></item><item><title><![CDATA[Python Web Infrastructure - Flask(1)]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/106209183</link><guid>https://blog.youkuaiyun.com/z54572/article/details/106209183</guid><author>z54572</author><pubDate>Tue, 19 May 2020 11:07:02 +0800</pubDate><description><![CDATA[##########################################################################################
#########Python script: 创建web app. 包含3个页面的处理：主页面，申请页面，审批页面########
##########################################################################################

from f]]></description><category></category></item><item><title><![CDATA[Python 装饰器-高级功能]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/105834983</link><guid>https://blog.youkuaiyun.com/z54572/article/details/105834983</guid><author>z54572</author><pubDate>Wed, 29 Apr 2020 15:38:47 +0800</pubDate><description><![CDATA[带参数的装饰器

装饰器是一个函数（可以称为装饰器函数），他的参数就是被装饰的函数（可以被称为基础函数），函数体是定义一个内部函数（可以被称为包装器函数），在包装器函数中调用基础函数并添加“装饰”功能，并返回基础函数的执行结果。最后装饰器函数以包装器函数为返回值。 调用装饰器返回包装器函数（这时基础函数并未被调用）。将返回的包装器函数赋值给基础函数同名变量，再执行与基础函数名同名的变量（这个变量指...]]></description><category></category></item><item><title><![CDATA[（转） 计算机专业的书普遍都这么贵，你们都是怎么获取资源的？]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104967041</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104967041</guid><author>z54572</author><pubDate>Thu, 19 Mar 2020 14:29:56 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/JiuZhang_ninechapter/article/details/103670926?depth_1-utm_source=distribute.pc_relevant.none-task&amp;utm_source=distribute.pc_relevant.none-task###

介绍几个可以下载编程电子书籍的网站。
1.Github...]]></description><category></category></item><item><title><![CDATA[（转） JAVA 入门学习资源]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104943445</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104943445</guid><author>z54572</author><pubDate>Wed, 18 Mar 2020 14:02:07 +0800</pubDate><description><![CDATA[学习资源
我知道，对于有些名词，你们可能都没有听过。没关系，按照这个路线一点一点地往下学，相信你会感受到编程的魅力所在。
下面对整条知识路线进行一个梳理，并附上对应的学习资源，需要的小伙伴们下载就好了。

基础阶段
Java基础——链接：https://pan.baidu.com/s/1nB-aqy-5f3Q29CznmcDSIQ 提取码：5u4g

Mysql数据库——链链接：https://p...]]></description><category></category></item><item><title><![CDATA[(转)Linux脚本中$#、$0、$1、$@、$*、$$、$?]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104821697</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104821697</guid><author>z54572</author><pubDate>Thu, 12 Mar 2020 16:23:02 +0800</pubDate><description><![CDATA[Linux脚本中$#、$0、$1、$@、$*、$$、$?

1.首先介绍一下这个几个参数的意义：

　　$#：传入脚本的参数个数；

　　$0: 脚本自身的名称；　　

　　$1: 传入脚本的第一个参数；

　　$2: 传入脚本的第二个参数；

　　$@: 传入脚本的所有参数；

　　$*：传入脚本的所有参数；

　　$$: 脚本执行的进程id；

　　$?: 上一条命令执行后的状态，结...]]></description><category></category></item><item><title><![CDATA[笔记：Docker 从入门到实践-3]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104774308</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104774308</guid><author>z54572</author><pubDate>Tue, 10 Mar 2020 14:59:19 +0800</pubDate><description><![CDATA[Docker 网络配置

当 Docker 启动时，会自动在主机上创建一个 docker0 虚拟网桥， 实际上是 Linux 的一个解为一个软件交换机。它会在挂载到它的网口之间进行转发。同时， Docker 随机分配一个本地未占用的私有网段（在 RFC1918 中定义）中的一个地址口。比如典型的 172.17.42.1 ，掩码为 255.255.0.0 。此后启动的容器内的网口也会自动网段（ 17...]]></description><category></category></item><item><title><![CDATA[笔记：Docker 从入门到实践-2]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104596442</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104596442</guid><author>z54572</author><pubDate>Sun, 01 Mar 2020 18:14:55 +0800</pubDate><description><![CDATA[Docker数据管理， docker容器中产生的数据在容器关闭后会被清除，下次容器启动时会恢复到镜像初始状态。如何保存容器中创建的数据？ docker 提供了两种方法可以把在容器运行中产生的数据保存到宿主机的文件系统中。

第一种：数据卷。

当启动一个容器时可以mount 数据卷（一个宿主机的目录或者文件）到容器中，容器中产生的数据可以保存在数据卷中。

挂载一个宿主机目录作为数据卷：

doc...]]></description><category></category></item><item><title><![CDATA[笔记：Docker 从入门到实践-1]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104552679</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104552679</guid><author>z54572</author><pubDate>Sun, 01 Mar 2020 15:48:37 +0800</pubDate><description><![CDATA[起源：

Linux 容器（LXC）技术类似于沙盒（SandBox）的概念，让进程在隔离的“容器”中运行，是Docker 容器的基础。Docker做了进一步封装，使得用户操作更简单。Docker 容器就像要给快速轻量级的虚拟机一样。

和虚拟机的比较：广泛引用的图



传统的虚拟化方式中部署一个应用，并不是只有十几MB的应用本身和依赖项，还要包括十几GB的Guest OS.

Docker虚拟化...]]></description><category></category></item><item><title><![CDATA[VirtualBox 虚拟机网络配置-Bridge Mode]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104020065</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104020065</guid><author>z54572</author><pubDate>Fri, 17 Jan 2020 15:57:01 +0800</pubDate><description><![CDATA[VirtualBox中虚拟机安装完毕之后，配置网络选择桥接模式，然后指定使用宿主机的哪块网卡。



登录虚拟机进行IP配置，有两种方式：dhcp/static，后者还需要配置具体的IP地址，子网掩码，网关地址，DNS地址。



动态分配（dhcp）配置：

进入目录：/etc/sysconfig/network-scripts， 编辑其中的相应的网卡的配置文件：ifcfg-&lt;网卡名&g...]]></description><category></category></item><item><title><![CDATA[Linux 之 iptalbes 简介]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/104014625</link><guid>https://blog.youkuaiyun.com/z54572/article/details/104014625</guid><author>z54572</author><pubDate>Fri, 17 Jan 2020 11:07:53 +0800</pubDate><description><![CDATA[学习笔记，详细内容请参阅http://www.zsythink.net/archives/1199/。

防火墙分类：网络 /主机 硬件/软件。

防火墙相当于一个关口，所有的网络数据包都要通过这个关口。防火墙对通过的数据包进行检查，根据数据包的特征，如：源地址是什么，目的地址是什么，端口是什么，所用的传输协议（tcp，udp，icmp），应用协议（http，ftp，smtp）等等，进行不同...]]></description><category></category></item><item><title><![CDATA[Shell 脚本调试经验-3]]></title><link>https://blog.youkuaiyun.com/z54572/article/details/101711778</link><guid>https://blog.youkuaiyun.com/z54572/article/details/101711778</guid><author>z54572</author><pubDate>Sun, 29 Sep 2019 19:38:56 +0800</pubDate><description><![CDATA[Shell 数组：

定义空数组：array_name=() #等号两边不能有空格

定义初始化数组： arrary_name=(a b c d ) #默认分隔符为空格，可是手动修改IFS 变量设置新的分隔符，入逗号。

将字符串分割为数组：string_name=1,2,3 希望得到数组：arrary_name=(1 2 3)

arrary_name=(`echo "${string_nam...]]></description><category></category></item></channel></rss>