测试工程师的linux 命令学习(持续更新中)

news2025/1/18 8:35:45

1.ls

"""1.ls"""
ls -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出 ls -l等同于 ll

在这里插入图片描述

第一列共10位,第1位表示文档类型,d表示目录,-表示普通文件,l表示链接文件。后9位,依次对应三种身份所拥有的权限,身份顺序为:owner、group、others,权限顺序为:readable、writable、excutable。如:-r-xr-x—的含义为当前文档是一个文件,拥有者可读、可执行,同一个群组下的用户,可读、可执行,其他人没有任何权限。
第二列表示链接数,表示有多少个文件链接到inode号码。
第三列表示拥有者
第四列表示所属群组
第五列表示文档容量大小,单位字节
第六列表示文档最后修改时间,注意不是文档的创建时间
第七列表示文档名称。以点(.)开头的是隐藏文档

在这里插入图片描述

	linux查看命令中-h参数,通常是指Human readable也就是说把文件的大小转成我们熟悉的大小单位如
	K、M、G

ll -h

在这里插入图片描述

  • rws
    setuid:该位是让普通用户可以以root用户的角色运行只有root帐号才能运行的程序或命令
    那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 如果本来在该位上有x, 则这些特殊标志显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T)
    在这里插入图片描述

2.who am i

"""2.who am i """

显示当前登录时用的用户名 如root
在这里插入图片描述

3.top

"""3.top """
top 查看服务器总体的系统运行状态和cpu的使用率

总体的系统运行状态和cpu的使用率

直接输入大写的M 按照 %MEM降序排列
直接输入大写的P 按照 %CPU降序排列
Z 黑白彩色
q 退出
top -c: 显示完整的命令

4.cat

"""4.cat """
cat(英文全拼:concatenate)
cat filename 查看某个文件内容

在这里插入图片描述

	cat /dev/null > file_name  清空某个文件

在这里插入图片描述

5.grep

"""5.grep Global Regular Expression Print(全局正则表达式打印) """
用于对文件内容进行搜索匹配 一般和cat一起使用 如 cat XXX.txt | grep -n 123 
  -E :开启扩展(Extend)的正则表达式。 

  -i :忽略大小写(ignore case)。

  -v :反过来(invert),只打印没有匹配的,而匹配的反而不打印。

  -n :显示行号

  -w :被匹配的文本只能是单词,而不能是单词中的某一部分,如文本中有liker,而我搜寻的只是like,就可以使用-w选项来避免匹配liker

  -c :显示总共有多少行被匹配到了,而不是显示被匹配到的内容,注意如果同时使用-cv选项是显示有多少行没有被匹配到。

  -o :只显示被模式匹配到的字符串。

  --color :将匹配到的内容以颜色高亮显示。

  -A n:显示匹配到的字符串所在的行及其后n行,after

  -B n:显示匹配到的字符串所在的行及其前n行,before

  -C n:显示匹配到的字符串所在的行及其前后各n行,context

查找mysql.log文件中含有emission的行
在这里插入图片描述

使用联合筛选 如要名称和日期 and的关系,这是指同一条日志同时要满足的条件

cat mysql.log | grep "市经道路与铁路交叉二期工程" | grep ”building“

查询mysql日志中含有 “car_inout_data” 或 “building”的数据or关系,这是指某条日志只要查看其中一个就可以

tail -f mysql.log | grep "car_inout_data|building"

目前使用来看这个命令不是那么稳定,需要转义一下

tail -f mysql.log | grep "car_inout_data\|building"

在这里插入图片描述

追踪实时的数据

tail mysql.log -f | grep  -C 1 "市经道路与铁路交叉二期工程"

实时追踪不含有 car 和and关系 point的,这是指某条日志不包含其中一个都不显示
tail -f mysql.log | grep -v “car” | grep -v “point”

  • 2022年3月24日更新 实时追踪不含有 car 或者 point的行,这是指某条日志不包含其中一个都不显示。同 tail -f mysql.log | grep -v "car" | grep -v "point"一样的效果

      tail -f mysql.log | egrep -v "car|point"
    

查看日志末尾10行

tail -n 10 filename

循环实时查看最后10行

tail -fn 10 filename

查询日志前10行

head -n 10 filename

2022年4月1日更新 更新服务器时间

硬件时间:计算机自己有自己的时间,也就是硬件时间,hard clock,也就是存在 BIOS 里那个时间
服务器时间:计算机启动时,就要读取硬件时间

6.date 查看当前服务器时间

"""6.date  """

date -s "20220401 23:59:59" 设置服务器时间
hwclock --show 显示硬件时间
hwclock --hctosys 将硬件时间写入系统时间
date

在这里插入图片描述

date -s "20220401 23:59:59"

在这里插入图片描述

hwclock --show

在这里插入图片描述

hwclock --hctosys

在这里插入图片描述

7.df -h

7 . 查看当前主机磁盘存储空间 df:disk free
df -h

在这里插入图片描述

  • H与h的区别 大写 -H:在某些命令中,如 df -H、du -H,大写的 -H 表示以“基于十进制的单位”显示结果。这意味着磁盘空间大小 以 1000 的倍数进行计算和显示。例如,1 GB 表示 1000 MB,而不是 1024 MB。
    小写 -h:在许多命令中,如 df -h、du -h,小写的 -h 表示以“人类可读的单位”显示结果。这意味着磁盘空间大小以更易读的方式进行显示,使用 K(千字节)、M(兆字节)、G(吉字节)等单位。例如,1 GB 表示 1 吉字节。
  • 如下图所示
    在这里插入图片描述
    df -h /xxx可以查看此文件在哪块硬盘(存储位置)上

在这里插入图片描述
上图中 /dev/vad1已经满了导致系统不可用,但是不知道要删除哪个文件夹下的文件
此时可以df -h /xxx来查看文件在哪块硬盘上,就可以通过删除下面的文件来腾出空间
在这里插入图片描述

8.查看服务器版本

hostnamectl status

在这里插入图片描述

9.代码自动补全

yum -y install bash-completion

在这里插入图片描述
输入host按tab就会出现之相关的命令
在这里插入图片描述

10 rm

rm 加文件名 删除文件需要确认
rm -f 强制删除文件 不需要确认  f:force
  • 删除某个文件夹下所有文件
    cd 该文件夹下
rm -f *

2022-07-01更新

11 nohup

nohup python3 gps_minitor.py &    注释:使用python3 后台运行 py程序

在这里插入图片描述

12 jobs

jobs 是Linux命令 jobs 命令显示了当前 shell 环境中已启动的作业状态

在这里插入图片描述

jobs -l 多显示一列ID号
current 一个“+”(加标志)标识了将被 fg 或 bg 命令作为缺省值使用的作业。这个作业标识也能够使用 %+ (百分号、加号)或 %% (双百分号)来指定。
如果当前缺省作业退出,就用一个“-”(减号标志)来标识将要成为缺省作业的作业。这个作业标识也可以用 %-(百分号、减号)来指定。
state 显示以下值之一:
Running
表示此作业没有被信号挂起并没有退出。
Done
表示此作业已经完成并返回退出状态 0。
Done (code)
表示此作业已经正常完成和退出并返回指定的非零退出状态码。这个代码用一个十进制数来表示。
Stopped
表示此作业已经挂起。
killed
表示此作业正在被杀死

在这里插入图片描述

13 find

Linux find 命令用来在指定目录下查找文件。
find / -name 'java' 查找根目录下 名称叫做java的文件

在这里插入图片描述
2022-07-05更新

14 lsof

losf: list of file 列出当前系统打开文件
加端口号,查看端口被谁占用
如lsof -i:8888 查看8888端口是否被占用

在这里插入图片描述

	kill -9 8888即可释放改端口

15 cron

	cron:CRON的全称:Command Run On (UNIX scheduler) 可以理解为在linux/unix上运行程序

具体用法如下 不要被某些文章误导了 要看就要看服务器给出的文章
比如 下图表达式根本解释不出来 浪费了笔者 1 2个小时
在这里插入图片描述

在这里插入图片描述
cron在线工具

crontab -l 查看正在运行中的定时任务
corntab -e 编辑某个用户的任务 只用这个编辑吧 避免报错和不必要的麻烦

注意:cron -e 应全部写绝对路径 并以/开头 比如 /usr/local/python3.9/bin/python3 否则会报错
不建议直接使用python3 建议 使用 which python3 得到执行目录 把这个路径拷贝下来

在这里插入图片描述
corntab -e 按 i 进入编辑模式 esc键退出编辑 ctrl + : 输入wq 保存并退出

若出现下图加横线的语句便是安装成功
在这里插入图片描述
centos 7.x

	/sbin/service crond status     //查看状态
	/sbin/service crond start     //启动
	 /sbin/service crond stop     //停止
	 /sbin/service crond restart   //重启
	sbin/service crond reload    //重载

在这里插入图片描述
cron 的log 在var/log/cron里 可以查看是否执行 计划任务

在这里插入图片描述

备注 上图的根目录没有写 /python_project/导致失败 修改之后执行成功 在这里插入图片描述
记录一个完整的流程
corntab -e
输入
*/1 * * * * cd /python_project/script/tfbluemq/ && /usr/local/python3.9/bin/python3 testc.py
出现
在这里插入图片描述
重启corn使其立即生效
/sbin/service crond restart   
查看是否生效
tail -f var/log/cron

crontab -e实际修改的是/var/spool/cron下的root 文件
在这里插入图片描述

2022-07-12

16 curl

curl(CommandLine Uniform Resource Locator) 用于访问  上传和下载  网络上的资源

访问百度
在这里插入图片描述

  • 获取本机公网IP(实际上是访问了一个网址,返回ip地址)

     curl ifcojnfig.me
    
  • 下载文件到当前路径下

      curl -O url
    

2022-09-05

17 mv

  • mv :MV 的全称是 Move(移动) 目前用来修改文件名把老的文件名(old)换成新的文件名(new)

      mv old new
    

2022-09-10

18 find

  • 查询指定目录下查找文件

      find / -name python  # / 代表根目录 -name  python 文件名称符合 name 为 pyhton 的文件 pyhton
    

19 ctrl + z 与 ctrl + c

  • Ctrl+C和Ctrl+Z都是中断命令,但作用不同。

      Ctrl+C是发送SIGINT信号,终止一个进程。
      Ctrl+Z是发送SIGSTOP信号,挂起一个进程,将作业放置到后台(暂停状态)。与此同时,可以通过fg重启前台被中断的任务,也可以通过bg
      把中断的任务放到后台执行。 
    

20 fg bg

  • fg 将命令进程号码为N的命令进程放到前台执行,同%N

      fg % [jobnumber] 
    
  • bg 将命令进程号码为N的命令进程放到后台执行,同%N

      bg % [jobnumber] 
    

jobnumber可以通过jobs -l获得

21 ps

  • ps :Process Status(进程状态) 查看进程信息

  •   -e: 显示所有/每个(evevy)进程。这个选项让 ps 显示系统中的所有进程,而不仅仅是当前用户的进程。
    
      -f: 全格式输出(full-format)。这个选项使 ps 输出更加详细的信息,包括 UID(用户ID)、PID(进程ID)、PPID(父进程ID)、C(CPU使用率)、STIME(启动时间)、TTY(终端)、TIME(占用的CPU时间)和 CMD(命令名称或路径)。
    
    ps  -ef | grep nginx  # 显示完成的格式输出并含有nginx的进程
    
  • 找出并杀死含有xxx的进程
    ps -ef | grep xxx| grep -v grep | cut -c 9-15 | xargs kill -s 9

说明:

“grep firefox”的输出结果是,所有含有关键字“firefox”的进程。

“grep -v grep”是在列出的进程中去除含有关键字“grep”的进程。

“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。

“xargs kill -s 9”中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -s 9”命令的参数,并执行该命令。“kill -s 9”会强行杀掉指定进程。

22 yum install -y bash-completion

  • 用于敲击tab键时补全命令

23 firewalld

  • 开启防火墙
systemctl start firewalld
  • 开启某个端口
 firewall-cmd --zone=public --add-port=8041/tcp --permanent
  • 重载已添加的端口
firewall-cmd --reload
  • 查看开放的端口
firewall-cmd --zone=public --list-ports

24 解决中文乱码

  • 下载中文包
sudo yum install langpacks-zh_CN
  • 查看已安装的语言包列表
locale -a
  • 设置系统默认语言,请使用以下命令:
localectl set-locale LANG=zh_CN.UTF-8

25 firewall

  • 启动防火墙
systemctl start firewalld
  • 开放防火墙端口 port=xxxx
firewall-cmd --zone=public --add-port=8041/tcp --permanent
  • 重载已添加的端口
firewall-cmd --reload
  • 查看开放的端口
firewall-cmd --zone=public --list-ports
  • 删除防火墙
firewall-cmd --zone=public --remove-port=80/tcp --permanent

26 tar

  • 压缩 czf 解压缩 xzf

  • tar:Tape Archive(磁带归档)是一个用于打包文件和目录的命令,它将多个文件和目录组合成一个单独的归档文件。tar
    命令本身并不执行压缩操作,而只是将文件和目录打包到一个文件中,通常使用 .tar 扩展名。
    想要使用tar命令打包则需要使用

      tar -czvf archive.tar.gz file.txt
    
  • 将 file.txt 打包并使用 gzip 进行压缩成archive.tar.gz;参数说明 -czvf

    • c 表示创建归档文件
    • z:使用 gzip 压缩算法进行压缩。文件名为tar.gz
    • v 表示显示详细的操作过程
    • f 后面跟着 archive.tar.gz,指定归档文件的名称
      在这里插入图片描述

说明如下:

gzip 是用于进行文件压缩的命令,它使用 gzip 压缩算法对单个文件进行压缩,并将其扩展名更改为 .gz。gzip 压缩通常与 tar
命令结合使用,以在打包文件时进行压缩,从而生成 .tar.gz 或 .tgz 格式的压缩文件。

因此,如果你只想打包文件和目录,但不进行压缩,可以使用 tar 命令。示例如下:

压缩文件:tar -cvf archive.tar file.txt (将 file.txt 打包成 archive.tar)
压缩目录:tar -cvf archive.tar directory/ (将 directory 目录打包成 archive.tar)
如果你希望在打包文件时进行压缩,可以使用 tar 命令结合 gzip 进行压缩。示例如下:

压缩文件:tar -czvf archive.tar.gz file.txt (将 file.txt 打包并使用 gzip 进行压缩成
archive.tar.gz) 压缩目录:tar -czvf archive.tar.gz directory/ (将 directory
目录打包并使用 gzip 进行压缩成 archive.tar.gz) 综上所述,如果你只需要打包文件和目录,选择 tar
命令;如果你需要在打包时进行压缩,可以选择 tar 结合 gzip 进行压缩

  • 解压缩

    tar -xzvf archive.tar.gz

    tar:是一个用于打包和解包文件的命令。

    • x:表示解压缩(或提取)归档文件的内容。
    • z:表示解压缩时使用 gzip 压缩算法。
    • v:显示详细的操作过程,将输出被处理的文件列表。
    • f archive.tar.gz:指定要处理的归档文件的名称为 archive.tar.gz。

执行该命令后,tar 将会解压缩 archive.tar.gz 文件,并将其中的文件提取到当前目录中。解压缩后的文件和目录将在屏幕上以详细的方式显示出来。

解压缩到指定目录:

tar -xzvf archive.tar.gz -C /path/to/directory

27 scp

  • scp( Secure Copy 安全拷贝)命令用于在不同的服务器之间安全地复制文件或目录。

      scp /path/to/file username@destination:/path/to/destination
    

下面是 scp 命令的具体解释:

  • /path/to/file:指定源服务器上要复制的文件或目录的路径。
  • username:目标服务器上的用户名,你需要使用目标服务器的有效用户名进行替换。
  • destination:目标服务器的主机名或 IP 地址。
  • :/path/to/destination:指定要将文件复制到的目标服务器上的路径。冒号前的部分表示目标服务器上的路径,你可以根据需要进行替换。

在这里插入图片描述

28 不同服务器的数据库之前复制表

1若两台服务器可以进行通信

  • 注意格式和大小写,-p后面的xxx是数据库密码,-P后面跟端口号
  • --skip-lock-tables是不锁表进行传输 看实际需要进行添加或删除
  • newgps是库名
  • vehicle_point_2024-10-10是表名
  • pv是查看进度 需要yum install -y pv进行安装 若是不需要查看进入则删除pv |
mysqldump -h 221.237.xxx.xx -P 3336 -u epuser -p'xxxx' --skip-lock-tables newgps vehicle_point_2024-10-10 | pv | mysql -h 106.75.xxx.xxx -u epuser -p'xxxx' newgps
  • 不需要查看进度命令 不需要锁表命令
mysqldump -h 221.237.xxx.xxx -P 3336 -u epuser -p'xxxx'  newgps vehicle_point_2024-10-10 |  mysql -h 106.75.138.97 -u epuser -p'xxxx' newgps

2 实测最稳定的方式(执行了1.9G的sql文件,其它方式可能连接会断开)

  • 1 在需要同步复制数据的服务器上(我的路径为/root)使用下列命令导出sql
 nohup mysqldump -h 221.237.xxx.xxx -P 3336 -u epuser -p'xxx' --skip-lock-tables newgps vehicle_point_2024-10-10 > original_table.sql &

2 进入mysql,并选择数据库名

mysql -u xxx -p’xxx‘ 
# 选择数据库名
use xxx;

3 执行sql文件

source /root/original_table.sql

29 whereis和which

whichwhereis 是两个不同的命令,都是用来查找命令的位置如mysqlpythonnginx
1 whereis搜索更全面更广
2 在环境变量中的命令,which才可以找到

which 命令

  • which 用于查找系统 PATH 环境变量中指定命令的位置。
  • 它会按照 $PATH 变量中定义的路径顺序查找是否存在指定命令。
  • 如果在 $PATH 中找不到该命令(如 nginx
    which nginx 返回 no nginx,说明 nginx 不在系统的 $PATH 中。

whereis 命令

  • whereis 查找命令的位置,包括二进制文件、源代码和手册页的位置。
  • 它不仅仅依赖于 $PATH 变量,还会在一些系统默认目录中进行查找,因此更全面。
  • whereis 的结果通常包含了命令的所有相关文件。

whereis nginx 找到了 nginx 安装在 /usr/local/nginx 下,表明 nginx 安装在该路径下,但不在 $PATH 目录中。

总结

nginx/usr/local/nginx 目录下,但这个目录未添加到 $PATH 中,导致 which 命令无法找到它。如果需要通过直接输入 nginx 命令来运行,可以将 /usr/local/nginx 添加到系统的 $PATH 变量中,例如:

export PATH=$PATH:/usr/local/nginx

这样之后可以直接使用 nginx 命令而无需指定完整路径

30 du

duDisk Usage,用于显示文件和文件夹的磁盘使用情况。

  • 查看此文件夹下总共大小
du -sh xxx
  • -s–summarize,表示只显示指定目录的总大小,而不是显示其每个文件和子目录的大小。
  • -h–human-readable,表示以“人类可读”的格式显示大小,自动将结果以 KB、MB、GB 等单位显示出来。
  • xxx: 文件夹名称

31 unzip

解压.zip后缀文件,一般用于服务器上打包失败,必须上传本地打包的文件,应压缩为.zip格式,.rar在windows上不好解压
此命令若在服务器上没找到,sudo yum install unzip
则需要下载相应的库包
以centos服务器为例

sudo yum install unzip

32 公网ip地址查询

curl ifconfig.me

实际上是访问某个网址,此网址将公网ip返回给服务器

33 上传文件

此程序可以通过直接拖拽文件到xshell界面上传文件到xshell目前所在路径下,非常好用!

sudo yum install lrzsz

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HJ34 图片整理(Java版)

一、试题地址 图片整理_牛客题霸_牛客网 二、试题描述 描述 对于给定的由大小写字母和数字组成的字符串,请按照 ASCIIASCII 码值将其从小到大排序。 如果您需要了解更多关于 ASCIIASCII 码的知识,请参考下表。 输入描述: 在一行上输入一…

web开发工具之:三、JWT的理论知识,java的支持,封装的工具类可以直接使用

文章目录 前言一、JWT的理论知识1. 什么是 JWT(JSON Web Token)?2. **JWT 的组成**3. **JWT 的特点**4. **JWT 的使用场景**5. **JWT 的生命周期**6. **JWT 的优点**7. **JWT 的注意事项**5. **JWT 示例**总结 二、java的springboot支持1. po…

电路笔记(信号):Python 滤波器设计分析工具pyfda

目录 滤波器设置(3步实现滤波器设计)数据分析与使用pyfda功能界面数字滤波器数学表示线性相位线性相位的定义线性相位的特性 冲击响应quartus数据加载 CG 滤波器设置(3步实现滤波器设计) pip install pyfda #安装python依赖,详见https://pyfda.readthedocs.io/en/la…

【15】Word:互联网发展状况❗

目录 题目​ NO2 NO3 NO4 NO5 NO6 NO7.8.9 NO7 NO8 NO9 NO10 题目 NO2 布局→页面设置→纸张:A4→页边距:上下左右→版式:页眉/页脚页码范围:多页:对称页边距→内侧/外侧→装订线 NO3 首先为文档应用内置…

Web前端开发技术之HTMLCSS知识点总结

学习路线 一、新闻网界面1. 代码示例2. 效果展示3. 知识点总结3.1 HTML标签和字符实体3.2 超链接、颜色描述与标题元素3.3 关于图片和视频标签:3.4 CSS引入方式3.5 CSS选择器优先级 二、flex布局1. 代码示例2. 效果展示3. 知识点总结3.1 span标签和flex容器的区别3.…

BUUCTF Web

[极客大挑战 2019]LoveSQL union注入 是sql注入类型 输入1 发现不是数字型注入,那就是字符型注入。判断字段数,输入order by 4 #发现错误,就存在三个字段数 判断回显点:1 union select 1,2,3 # 判断回显点为2,3 判断数据库名 …

Kinova仿生机械臂Gen3搭载BOTA 力矩传感器SeneOne:彰显机器人触觉 AI 与六维力传感的融合力量

随着工业4.0时代的到来,自动化和智能化成为制造业的趋势。机器人作为实现这一趋势的重要工具,其性能和智能水平直接影响到生产效率和产品质量。然而,传统的机器人系统在应对复杂任务时往往缺乏足够的灵活性和适应性。为了解决这一问题&#x…

【数据库】MySQL数据库SQL语句汇总

目录 1.SQL 通用语法 2.SQL 分类 2.1.DDL 2.2.DML 2.3.DQL 2.4.DCL 3.DDL 3.1.数据库操作 3.1.1.查询 3.1.2.创建 3.1.3.删除 3.1.4.使用 3.2.表操作 3.2.1.查询 3.2.2.创建 3.2.3.数据类型 3.2.3.1.数值类型 3.2.3.2.字符串类型 3.2.3.3.日期时间类型 3.2…

《汽车与驾驶维修》是什么级别的期刊?是正规期刊吗?能评职称吗?

​问题解答: 问:《汽车与驾驶维修》是不是核心期刊? 答:不是,是知网收录的第二批认定学术期刊。 问:《汽车与驾驶维修》级别? 答:省级。主管单位:中国机械工业联合会…

鸿蒙UI(ArkUI-方舟UI框架)-开发布局

文章目录 开发布局1、布局概述1)布局结构2)布局元素组成3)如何选择布局4)布局位置5)对子元素的约束 2、构建布局1)线性布局 (Row/Column)概述布局子元素在排列方向上的间距布局子元素在交叉轴上的对齐方式(…

数据结构——概述

1、什么是数据结构? 数据结构是计算机存储和管理数据的方式。数据必须依据某种逻辑联系组织在一起存储在计算机内,数据结构研究的就是这种数据的逻辑结构和数据的存储结构 2、逻辑结构——数据本身之间的关系 逻辑结构在计算机中的实现 (1…

业务架构、数据架构、应用架构和技术架构

TOGAF(The Open Group Architecture Framework)是一个广泛应用的企业架构框架,旨在帮助组织高效地进行架构设计和管理。 TOGAF 的核心就是由我们熟知的四大架构领域组成:业务架构、数据架构、应用架构和技术架构。 企业数字化架构设计中的最常见要素是4A 架构。 4…

python爬虫入门(实践)

python爬虫入门(实践) 一、对目标网站进行分析 二、博客爬取 获取博客所有h2标题的路由 确定目标,查看源码 代码实现 """ 获取博客所有h2标题的路由 """url "http://www.crazyant.net"import re…

简历_使用优化的Redis自增ID策略生成分布式环境下全局唯一ID,用于用户上传数据的命名以及多种ID的生成

系列博客目录 文章目录 系列博客目录WhyRedis自增ID策略 Why 我们需要设置全局唯一ID。原因:当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题。 问题:id的规律性太明显、…

win32汇编环境,窗口程序中对多行编辑框的操作

;运行效果 ;win32汇编环境,窗口程序中对多行编辑框的操作 ;比如生成多行编辑框,显示文本、获取文本、设置滚动条、捕获超出文本长度消息等。 ;直接抄进RadAsm可编译运行。重点部分加备注。 ;下面为asm文件 ;>>>>>>>>>>>>>&g…

【Flink系列】5. DataStream API

5. DataStream API DataStream API是Flink的核心层API。一个Flink程序,其实就是对DataStream的各种转换。具体来说,代码基本上都由以下几部分构成: 5.1 执行环境(Execution Environment) Flink程序可以在各种上下文…

探索未来:Leap Motion JavaScript框架——开启VR与手势控制的无限可能

探索未来:Leap Motion JavaScript框架——开启VR与手势控制的无限可能 leapjs JavaScript client for the Leap Motion Controller 项目地址: https://gitcode.com/gh_mirrors/le/leapjs 项目介绍 欢迎来到Leap Motion JavaScript框架的世界!Lea…

PCM5142集成32位384kHz PCM音频立体声114dB差分输出DAC编解码芯片

目录 PCM5142 简介PCM5142功能框图PCM5142特性 参考原理图 PCM5142 简介 PCM514x 属于单片 CMOS 集成电路系列,由立体声数模转换器 (DAC) 和采用薄型小外形尺寸 (TSSOP) 封装的附加支持电路组成。PCM514x 使用 TI 最新一代高级分段 DAC 架构产品,可实现…

技术领衔 互学互鉴|ZASM召开2024年度技术交流会

1月16日,ZASM组织召开了“2024年度企业员工技术交流活动”。公司总经理,技术部门负责人及项目经理参加本次会议。 会上,公司所属各项目技术负责人围绕“三维模型切割模块的基础操作与模型发布缓存的技术演示”、“J18微型智能空中作业平台的…

UI自动化测试:异常截图和page_source

自动化测试过程中,是否遇到过脚本执行中途出错却不知道原因的情况?测试人员面临的不仅是问题的复现,还有对错误的快速定位和分析。而异常截图与页面源码(Page Source)的结合,正是解决这一难题的利器。 在实…