当前位置: 首页 > news >正文

Linux/C 高级——Linux命令

从这里开始,我们展开对Linux/c 高级的学习,首先介绍的是在Linux/c高级中,Linux的部分

目录

1.Linux简介

1.1Linux起源

1.2查看系统版本命令

1.3分层结构

1.4系统关机重启命令

2.Linux安装工具

2.1软件包安装

2.1.1软件包的管理机制

2.1.2软件包分类

2.1.3软件管理工具

2.2 dpkg工具

2.3 apt工具

2.3.1 apt-get

2.3.2 ubuntu网络配置

2.3.3 apt-cache

3. shell

3.1 shell的基础知识

3.1.1概念

3.1.2命令执行的过程

3.1.3 shell分类

3.1.4 shell命令格式

3.2历史记录命令

3.3起别名命令

3.4Linux特殊字符

3.4.1通配符

3.4.2管道 |

3.4.3输入输出重定向

3.4.4命令置换符

3.4.5 echo命令

4.Linux命令

4.1系统维护命令

4.1.1 man

4.1.2 su

4.1.3 sudo

4.1.4查看磁盘使用情况

4.1.5 mount 挂载命令

4.2用户管理命令

4.3进程管理命令

4.3.1 ps

4.3.2 top

4.3.3修改优先级

4.3.4 grep命令

4.3.5 find命令

4.3.6给进程发送信号命令——kill

4.3.7前后台进程切换

4.4网络管理

4.4.1命令

4.5文件系统管理

4.5.1文件系统分类

4.5.2根文件系统结构

4.5.3显示文件内容

4.5.4链接文件

4.5.5文件压缩解压


1.Linux简介

1.1Linux起源

可以看一下这个网站,Linux的诞生非常有趣 寻·科普|第二期:聊聊Linux的前世今生 (qq.com)

1.2查看系统版本命令

1.查看ubuntu 版本:

        sudo lsb_release -a

        cat /etc/issue

2.查看内核版本:

        uname -r

        cat /proc/version

1.3分层结构

应用层:程序、命令

内核层:五大功能:进程管理、设备管理、内存管理、网络管理、文件系统管理

驱动:字符设备驱动、块设备驱动、网络设备驱动

硬件:鼠标、键盘(字符设备驱动)、硬盘、U盘(块设备驱动)等

1.4系统关机重启命令

sudo shutdown -h now: 立即关机

sodo shutdown -r now:立即重启

sudo reboot now: 立即重启

sudo shutdown -h 时间 "提示语句":定义关机

sudo shutdown -r 时间 "提示语句":定义重启

通过shutdown -c: 可以取消定时操作

2.Linux安装工具

2.1软件包安装

2.1.1软件包的管理机制

debian: deb软件包管理机制

redhat: rpm软件包管理机制(Red Hat Package Manager)

2.1.2软件包分类

二进制软件包:xx.deb

源码包: xx.dsc

2.1.3软件管理工具

在Debian的linux发行版本下,采用dpkg和apt两种包管理工具。

dpkg与apt工具的区别:

        dpkg:离线安装,安装本地包,不能检查软件包的依赖关系,不关系仓库内的软件。

        apt:在线安装,通过仓库获取软件包资源,解决依赖关系,不能安装本地包。A -> B

2.2 dpkg工具

dpkg -i 软件包全称

 例如:安装sl_3.03-17build2_amd64.deb

sl_3.03-17build2_amd64.deb 拖动到虚拟机中的方式:

1)直接拖文件到终端去掉单引号,末尾加空格. 开头加mv移动到目标路径下

2)打开虚拟机文件夹,直接复制粘贴;

3)设置共享文件夹

步骤:

sudo dpkg -i 软件包的全称:安装软件

sudo dpkg -s 软件包名:显示软件的安装状态

sudo dpkg -L 软件包名:显示软件的安装路径

sudo dpkg -r 软件包名:卸载软件

sudo dpkg -P 软件包名:完全卸载软件,重新下载不会保留上一次配置。

2.3 apt工具

用的比较多的是apt-get

其他可以挖掘一下:

        apt-cache apt-config

        apt-ftparchive apt-key

2.3.1 apt-get

sudo apt-get install 软件包名: 安装

可以在/etc/apt/sources.list源头

默认下载的包存放路径:/var/cache/apt/archives/

练习下载:xcowsay、 oneko

sudo apt-get install 软件包名:软件下载并安装

sudo apt-get remove 软件包名:卸载软件

sudo apt-get --purge remove:完全卸载软件包

sudo apt-get autoremove 软件包名:卸载软件

sudo apt-get update :下载更新软件包列表信息

sudo apt-get upgrade : 将系统中所有软件包升级到最新的版本

sudo apt-get upgrade 软件包名:将系统中指定的软件包升级到最新的版本

sudo apt-get clean:清空安装包的存放路径

2.3.2 ubuntu网络配置

1.桥接模式:

1)桥接模式:编辑->虚拟网络编辑器->更改设置->选择vmnet0->桥接模式->桥接的网络适配器(根据主机的网络连接进行选择,当然选择自动也可以)->确定。

如果自动不行也可以找到对应的网络适配器。

2)虚拟机->设置->网络适配器->选择桥接模式

 3)点击图标选择有线设置 -> 点击+号 -> ipv4 -> 添加

如果是手动设置ip,需要点击Method里manual,手动设置ip地址
2.nat模式
1)编辑->虚拟网络编辑器->更改设置->选择vmnet8->nat模式->确定。

2)虚拟机->设置->网络适配器->选择nat模式

如果还不行就试试关闭虚拟机然后还原默认设置

如果网用着用着有问题可以用一下命令:

sudo nmcli network off

sudo nmcli network on

2.3.3 apt-cache

sudo apt-cache show 软件包名:获取二进制软件包的详细描述信息

sudo apt-cache policy 软件包名:获取软件包当前的安装状态

sudo apt-cache depends 软件包名:获取该软件包的依赖信息

sudo apt-cache rdepends 软件包名:获取所有依赖于该软件包的软件包

3. shell

3.1 shell的基础知识

3.1.1概念

shell: 命令行解释器

shell是贝壳的意思,起到保护作用。那linux的shell可以保护内核。

作用:负责把应用程序的输入命令信息解释给操作系统, 将操作系统指令处理后的结果解释给应用程序。

3.1.2命令执行的过程

用户在命令行下命令,开始与Shell进行交互。接着,Shell将用户的命令或按键转化成内核所能够理解的指令控制操作系统做出响应,直到控制相关硬件设备。然后,Shell将输出结果提交给用户。

3.1.3 shell分类

(1)Bourne Shell(简称sh):Bourne Shell由AT&T贝尔实验室的S.R.Bourne开发,也因开发者的姓名而得名。它是Unix的第一个Shell程序,早已成为工业标准。目前几乎所有的Linux系统都支持它。不过Bourne Shell的作业控制功能薄弱,且不支持别名与历史记录等功能。目前大多操作系统是将其作为应急Shell使用。

(2)C Shell(简称csh):C Shell由加利福尼亚大学伯克利分校开发。最初开发的目的是改进Bourne Shell的一些缺点,并使Shell脚本的编程风格类似于C语言,因而受到广大C程序员的拥护。不过C Shell的健壮性不如Bourne Shell。

(3)Korn Shell(简称ksh):Korn Shell由David Korn开发,解决了Bourne Shell的用户交互问题,并克服了C Shell的脚本编程怪癖的缺点。Korn Shell的缺点是需要许可证,这导致它应用范围不如Bourne Shell广泛。

(4)Bourne Again Shell(简称bash):Bourne Again Shell由AT&T贝尔实验室开发,是Bourne Shell的增强版。随着几年的不断完善,已经成为最流行的Shell。它包括了早期的Bourne Shell和Korn Shell的原始功能,以及某些C Shell脚本语言的特性。此外,它还具有以下特点:能够提供环境变量以配置用户Shell环境,支持历史记录,内置算术功能,支持通配符表达式,将常用命令内置简化。

3.1.4 shell命令格式

命令名称 选项 参数

命令名称:必须得有

选项和参数:可有可无,选项前有-符号

3.2历史记录命令

history: :查看历史命令,默认显示的命令行数根据HISTSIZE来定

history n:显示n行历史记录

echo $HISTSIZE: 将变量的值打印到终端,echo命令作用是打印内容到终端

HISTSIZE=10: 临时修改变量的值

在家目录下的隐藏文件,通过vi打开:

.bash_history:默认存放2000条历史记录命令的文件

.bashrc :定义HISTSIZE(使用history时默认显示的记录个数)和HISTFILESIZE(.bash_history文件可以存放命令的个数)变量的脚本文件

修改.bashrc文件中HISTSIZE的值,将终端退出:可以永久修改

3.3起别名命令

alias: 查看系统中起别名的命令 alias 新名='原来的命令': 别名

unalias 新名:取消别名

3.4Linux特殊字符

3.4.1通配符

*: 匹配所有字符

?:匹配一个字符

[...]:匹配[]中指定的任意一个字符

[-]: 匹配指定的一个字符范围

[^]: 除了其中指定的一个字符,均可匹配

3.4.2管道 |

格式: 命令1 | 命令2

将前一个命令的输出作为下一个命令的输入

例如:

wc -l 文件名: 显示文件行数

wc -w 文件名:显示文件单词个数

wc -c 文件: 显示文件字符个数(Byte数)

ls | wc -w : 通过ls加管道连用wc显示当前路径下单词数

例如:

ls | xcowsay: 将ls的输出通过管道传递给xcowsay

3.4.3输入输出重定向

>文件名:输出重定向,新建模式

>>文件名:输出重定向,追加模式

2> 或者&>文件名: 将有命令产生的错误信息输出到文件中

<文件名:输入重定向

输出重定向例子:

输入重定向例子:

3.4.4命令置换符

esc键下的` (不是单引号)

命令1 `命令2`

将一个命令的输出作为另一个命令的参数

例如:

3.4.5 echo命令

向终端输出指定内容

echo 字符串: 向终端输出指定内容

-n: 不换行输出

echo "字符串":原样输出

例如:

4.Linux命令

4.1系统维护命令

4.1.1 man

man man: 查看man手册

1 Executable programs or shell commands 可执行程序或shell命令

2 System calls (functions provided by the kernel) 系统调用

3 Library calls (functions within program libraries) 库函数

4.1.2 su

su root: 切换到超级用户

sudo su 用户名:切换用户

退出:exit (或者ctrl d快捷键)

4.1.3 sudo

临时管理员权限,需要输入密码。

4.1.4查看磁盘使用情况

df -Th: 查看磁盘使用情况

文件系统 文件类型 大小 已使用 可用 使用比例 挂载点

Filesystem Type Size Used Avail Use% Mounted on

/dev/sda1 ext4 19G 6.6G 12G 38% /

4.1.5 mount 挂载命令

作用:文件系统的挂载

挂载设备:sudo mount -t 设备类型 设备名称 挂载点

卸载命令: sudo umount 挂载点

注意:卸载时不要在挂载点卸载

4.2用户管理命令

sudo adduser 用户名: 添加用户

sudo deluser --remove-home 用户名:删除用户的同时删除工作目录

注意:不要进入用户删除当前用户

4.3进程管理命令

什么是进程? 就是程序的一次执行过程,是动态的。

4.3.1 ps

ps -aux: 显示当前系统中运行的进程

ps -ef: 显示当前系统中运行的进程,包含PPID(父进程号)

表头

含义

USER

该进程是由哪个用户产生的。

PID

进程的 ID。

%CPU

该进程占用 CPU 资源的百分比,占用的百分比越高,进程越耗费资源。

%MEM

该进程占用物理内存的百分比,占用的百分比越高,进程越耗费资源。

VSZ

该进程占用虚拟内存的大小,单位为 KB。

RSS

该进程占用实际物理内存的大小,单位为 KB。

TTY

该进程是在哪个终端运行的。其中,tty1 ~ tty7 代表本地控制台终端(可以通过 Alt+F1 ~ F7 快捷键切换不同的终端),tty1~tty6 是本地的字符界面终端,tty7 是图形终端。pts/0 ~ 255 代表虚拟终端,一般是远程连接的终端,第一个远程连接占用 pts/0,第二个远程连接占用 pts/1,依次増长。?是守护进程,也就是一开始启动时系统在后台运行的进程。(后面IO会讲)

STAT

  1. D uninterruptible sleep (usually IO) 不可中断的睡眠态
  2. R running or runnable (on run queue) 运行态
  3. S interruptible sleep (waiting for an event to complete) 可中断的睡眠态
  4. T stopped by job control signal 暂停态
  5. t stopped by debugger during the tracing 因为调试而暂停
  6. X dead (should never be seen) 死亡态
  7. Z defunct ("zombie") process, terminated but not reaped by its parent 僵尸态
  8. < high-priority (not nice to other users) 高优先级
  9. N low-priority (nice to other users) 低优先级
  10. L has pages locked into memory (for real-time and custom IO) 锁在内存中
  11. s is a session leader 会话组组长
  12. l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)多线程
  13. + is in the foreground process group 前台进程
  14. 没有+时,默认是后台进程
  15. I 空闲状态进程

START

该进程的启动时间。

TIME

该进程占用 CPU 的运算时间,注意不是系统时间。

COMMAND

产生此进程的命令名。

4.3.2 top

动态查看系统中运行的进程

shift >: 向下翻页

shift <: 向上翻页

q: 退出

4.3.3修改优先级

PR = NI + 20

NI值的范围: -20~19, NI值越小优先级越高

sudo renice NI值 PID: 改变正在运行进程的优先级

sudo nice -n NI值 启动进程的命令:以指定的优先级运行进程

4.3.4 grep命令

从文件中查找字符串

grep "要查找的字符串" 文件名

grep "\<要查找的字符串\>" 文件名:精确查找

结合ps以及管道:

ps -ef | grep a.out: 从进程信息中查找带a.out的字符串

4.3.5 find命令

find 路径 -name 文件名: 查找路径下的文件

查找多个文件可以加""

4.3.6给进程发送信号命令——kill

从本质上讲,kill 命令只是用来向进程发送一个信号,至于这个信号是什么,是用户指定的。

kill -l:查看系统中定义的信号

        2:SIGINT 快捷方式:ctrl+c 结束进程

        3:SIGQUIT 快捷方式:ctrl+\ 结束进程

        9:SIGKILL 杀死进程

        15:SIGTERM 结束进程 kill发信号时不加编号,默认信号为15号

        18: SIGCONT 让暂停进程继续

        20:SIGTSTP 暂停信号 快捷方式:ctrl+z 暂停信号

        kill -num PID:

        num:信号编号

        PID:通过ps或top命令查看到的进程号

kill -num PID :

        num:信号编号

        PID:通过ps或top命令查看到的进程号

4.3.7前后台进程切换

步骤:先运行进程

ctrl z: 将进程暂停

bg 编号: 切换到后台

jobs:在当前终端查看后台进程

fg 编号:将后台进程切换到前台

4.4网络管理

4.4.1命令

ifconfig:查看linux的ip地址

ipconfig:查看windows的ip地址

win+r打开运行窗口,输入cmd打开命令窗口,输ipconfig

ping 域名/ip地址:检查网络的连通性(是否能通信)

4.5文件系统管理

用于组织和管理计算机存储设备上的大量文件,并提供用户交互接口

4.5.1文件系统分类

磁盘文件系统 :指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见文件系统格式有:Ext2、Ext3、Ext4、VFAT等

网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。常见文件系统格式有:NFS(Network File System,网络文件系统)、Samba(SMB/CIFS)等

专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见格式有:TMPFS(临时文件系统)、PROCFS(Process File System,进程文件系统)和LOOPBACKFS(Loopback File System,回送文件系统)。

4.5.2根文件系统结构

需要了解常见的目录含义:

/bin:存放系统中最常用的可执行文件(二进制)

/sbin : 存放更多的可执行文件(二进制),包括系统管理、目录查询等关键命令文件

/boot:存放Linux内核和系统启动文件,包括Grub、lilo启动器程序

/opt: 与系统无关的安装程序

/etc: 放的一些配置文件。Linux开机自启动脚本存放在/etc/rc.d或/etc/init.d目录下。这些目录是Linux系统中用于存放启动脚本的标准目录

/dev : 存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等

/lib : 存放共享的库文件,包含许多被/bin和/sbin中程序使用的库文件

/mnt : 该目录通常用于作为被挂载的文件系统的挂载点

/proc : 存放所有标志为文件的进程,它们是通过进程号或其他的系统动态信息进行标识,例如cpuinfo文件存放CPU当前工作状态的数据

/usr : 用于存放与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。以下罗列了/usr中部分重要的目录。

/usr/lib: 库文件,系统默认搜索的库路径

/usr/include: 头文件,系统默认搜索的头文件路径

Linux开机自启动脚本存放在/etc/rc.d或/etc/init.d目录下。这些目录是Linux系统中用于存放启动脚本的标准目录

4.5.3显示文件内容

cat 文件名:显示文件全部内容

head:

        head -n 文件名:显示前n行

        head 后面不加数字,默认显示前10行

tail:

        tail -n 文件名:显示后n行

        tail 后面不加数字,默认显示后10行

4.5.4链接文件

1.文件类型:7种,b c d - l s p

硬链接:是利用Linux中为每个文件分配的物理编号——inode号建立链接。 因此,硬链接不能跨越文件系统。

软链接(符号链接):是利用文件的路径名建立链接。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性;类似windows下的快捷方式

2.命令:

硬链接:ln 源文件 链接文件名

软链接: ln -s 源文件 链接文件名

3.注意:

硬链接:删除或移动目标文件链接依然有效

        只能操作普通文件

软链接:删除或移动目标文件链接失效,但是在此创建时链接依然有效

              建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性

4.5.5文件压缩解压

1.zip 命令用于将一个文件或多个文件压缩成单一的压缩文件

unzip命令用于将zip压缩文件进行解压

注意:

        1)具有归档功能,并进行压缩

        2)可以压缩文件夹,后缀为.zip

        3)压缩或者解压后源文件依然存在

格式:

        zip 压缩文件名.zip 要压缩文件列表

        unzip 压缩文件名.zip

2.gzip命令用于将一个文件继续压缩

gunzip命令用于将gzip压缩的文件进行解压

注意:

        1)只能对一个文件进行压缩,并自动后缀为.gz

        2)没有归档功能

        3)压缩或解压后源文件不存在

格式:

        gzip 要压缩的文件名

        gunzip 压缩文件名

3.bzip2: 功能、特点与gzip相同,只是后缀为.bz2

bunzip2: 解压

4.tar:

        -x : 释放归档文件,解压

        -c : 创建一个新的归档文件,压缩

        -v : 显示归档和释放的过程信息

        -f : 用户指定归档文件的文件名,否则使用默认名称

        -j : 由tar生成归档,然后由bzip2压缩 .tar.bz2

        -z : 由tar生成归档,然后由gzip压缩 .tar.gz

注意:

        1)具有归档功能,并通过选项可以进行压缩或解压

        2)压缩或解压后源文件存在

        3)需要写全压缩或解压的文件名格式:

格式:

        tar 选项 压缩(解压)文件名 [要压缩的文件列表]

组合:

        -cjf :以bz2的格式压缩文件

        -czf :以gz的格式压缩文件

        -xvf : 解压一个压缩包;解压后压缩包依然存在

相关文章:

Linux/C 高级——Linux命令

从这里开始&#xff0c;我们展开对Linux/c 高级的学习&#xff0c;首先介绍的是在Linux/c高级中&#xff0c;Linux的部分 目录 1.Linux简介 1.1Linux起源 1.2查看系统版本命令 1.3分层结构 1.4系统关机重启命令 2.Linux安装工具 2.1软件包安装 2.1.1软件包的管理机制 …...

怎么在 tailwindcss 项目中自定义一些可复用的样式

在 Tailwind CSS 项目中自定义可复用的样式有几种常用方法: 使用 apply 指令 你可以在 CSS 文件中使用 apply 指令来创建可复用的样式类: layer components {.btn-primary {apply py-2 px-4 bg-blue-500 text-white font-semibold rounded-lg shadow-md hover:bg-blue-700 f…...

在vue3中 引入echarts

安装&#xff1a;npm install echarts --save 方式一&#xff1a;直接在组件中引用 <template><divref"myChart"id"myChart":style"{ width: 800px, height: 400px }"></div></template><script>import * as echa…...

栈和队列(数据结构)

1. 栈(Stack) 1.1 概念 栈 &#xff1a;一种特殊的线性表&#xff0c;其 只允许在固定的一端进行插入和删除元素操作 。进行数据插入和删除操作的一端称为栈顶&#xff0c;另一端称为栈底。栈中的数据元素遵守后进先出LIFO &#xff08; Last In First Out &#xff09;的原…...

如何实现ElementUI表单项label的文字提示?

在Vue和ElementUI的丰富组件库中,定制化表单是常见的需求之一。那么如何在表单项label后添加文字提示,以提升用户体验呢? 首先我们来看一下效果图: 这里我们鼠标移动到❓图标上就会出现提示 在 ElementUI 中,el-form-item 组件允许使用 slot 自定义 label。通过在 el-fo…...

c++中的标准库

前言 hello&#xff0c;我是文宇。 正文 C标准库是C编程语言的基本组成部分之一&#xff0c;它为开发人员提供了一套丰富和强大的工具和功能&#xff0c;以便快速开发高效、可靠和可移植的应用程序。C标准库由两个主要部分组成&#xff1a;STL&#xff08;Standard Template…...

洛谷 B2145 digit 函数 B2146 Hermite 多项式 题解

题目目录&#xff1a; No.1 B2145 digit 函数 No.2 B2146 Hermite 多项式 OK&#xff0c;开始正文&#xff01; 第一题&#xff1a;B2145 digit 函数 题目描述 在程序中定义一函数 digit(n,k)&#xff0c;它能分离出整数 n 从右边数第 k 个数字。 输入格式 正整数 n …...

tailwindcss @apply 和 @layer 有什么区别

在 Tailwind CSS 中&#xff0c;apply 和 layer 是两个不同的指令&#xff0c;它们各自有不同的用途和功能。以下是它们的区别和使用方法&#xff1a; apply 指令 apply 指令用于将一组现有的 Tailwind CSS 工具类应用到一个自定义的 CSS 类中。这对于简化和复用复杂的样式非…...

React 中的 useMemo 和 useCallback

1. useMemo语法 const memoizedValue useMemo(() > computeExpensiveValue(a, b), deps); 1. 传入一个函数进去&#xff0c;会返回一个 memoized 值&#xff0c;需要注意的是&#xff0c;函数内必须有返回值&#xff1b; 2. 第二个参数会依赖值&#xff0c;当依赖值更新…...

idea社区版lombok总是突然失效:log未知的变量

用maven打包运行就没问题&#xff0c;就是idea的原因 有这么个参数 -Djps.track.ap.dependenciesfalse 是用来配置 IntelliJ IDEA 的 JVM 参数&#xff0c;它控制着 IntelliJ IDEA 是否跟踪处理器相关的依赖关系。具体来说&#xff0c;-Djps.track.ap.dependenciesfalse 参数的…...

Java语言程序设计基础篇_编程练习题*16.13(比较不同利率的贷款)

目录 题目&#xff1a;*16.13&#xff08;比较不同利率的贷款&#xff09; 习题思路 代码示例 结果展示 题目&#xff1a;*16.13&#xff08;比较不同利率的贷款&#xff09; 改写编程练习题5.21&#xff0c;创建一个图形用户界面&#xff0c;如图16-41b所示。程序应该允许…...

正点原子imx6ull-mini-Linux驱动之Regmap API 实验

我们在前面学习 I2C 和 SPI 驱动的时候&#xff0c;针对 I2C 和 SPI 设备寄存器的操作都是通过相关 的 API 函数进行操作的。这样 Linux 内核中就会充斥着大量的重复、冗余代码&#xff0c;但是这些本质 上都是对寄存器的操作&#xff0c;所以为了方便内核开发人员统一访问 I2C…...

postgresql 双重排序后 重复项 标识次序

postgresql 双重排序后 重复项 标识次序 在PostgreSQL中&#xff0c;如果你想要在双重排序后标识重复项的次序&#xff0c;可以使用窗口函数&#xff08;window functions&#xff09;。一个常见的方法是使用ROW_NUMBER()窗口函数&#xff0c;它会为每个分组内的行分配一个唯一…...

线程池ThreadPoolExecutor使用

文章目录 一、基础-Java中线程创建的方式1.1、继承Thread类创建线程1.2、实现Runnable接口创建线程1.3、实现Calable接口创建线程1.4、使用线程池创建线程二、概念-线程池基本概念2.1、并发和井行的主要区别2.1.1、处理任务不同2.1.2、存在不同2.1.3、CPU资源不同2.2、什么是线…...

Codeforces Round 963 (Div. 2)

A题&#xff1a;Question Marks 题目&#xff1a; Tim正在做一个由 4n 个问题组成的测试&#xff0c;每个问题都有 4 个选项&#xff1a;“A”、“B”、“C”和“D”。对于每个选项&#xff0c;有 n 个正确答案对应于该选项&#xff0c;这意味着有 n 个问题的答案为“A”。 n…...

Mysql函数学习笔记

MySQL 字符串函数 ASCII(s) 返回字符串 s 的第一个字符的 ASCII 码。 //返回 CustomerName 字段第一个字母的 ASCII 码 SELECT ASCII(CustomerName) AS NumCodeOfFirstChar FROM Customers;CHAR_LENGTH(s)-返回字符串 s 的字符数 //返回字符串 RUNOOB 的字符数 SELECT CHAR…...

【Linux基础】Linux基本指令(一)

目录 前言1&#xff0c; ls指令2&#xff0c;pwd指令三&#xff0c;cd指令3.1 当前目录与上级目录3.2 绝对路径和相对路径 四&#xff0c;创建一个普通文件或目录4.1 touch指令4.2 mkdir指令 五&#xff0c;删除目录或文件5.1 rmdir指令5.2 rm 指令 前言 从本章开始&#xff0…...

全球视野:航空蓄电池的国际标准与技术创新

航空蓄电池是一种专门为满足航空工业独特要求而设计的高性能储能设备。由于航空环境的特殊性&#xff0c;如高海拔、极端温度变化、频繁的充放电需求、以及对于设备重量和体积的严格限制&#xff0c;航空蓄电池需要具备一系列高级特性以确保飞机在各种飞行条件下能够安全有效地…...

11-初识python的函数——定义和调用

1 函数简介 function input()、print()、range()、len()都是python的内置函数&#xff0c;可以直接使用的 函数&#xff1a;可以用来保存代码&#xff0c;在需要的时候对这些语句进行重复调用 优点&#xff1a; 1. 遇到重复功能的时候&#xff0c;直接调用即可&#xff0c;…...

Windows安装Swoft框架

实现方式&#xff1a; 安装虚拟机&#xff0c;在虚拟机里用宝塔搭建环境后安装Swoft&#xff0c; 然后用Phpstorm SSH方式开发&#xff0c;用Apipost调用 websocket服务。 1、安装虚拟机&#xff0c;下载和安装参见 &#xff1a; https://blog.csdn.net/2401_84297265/article…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes&#xff08;简称K8s&#xff09;中&#xff0c;Ingress是一个API对象&#xff0c;它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress&#xff0c;你可…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装

以下是基于 vant-ui&#xff08;适配 Vue2 版本 &#xff09;实现截图中照片上传预览、删除功能&#xff0c;并封装成可复用组件的完整代码&#xff0c;包含样式和逻辑实现&#xff0c;可直接在 Vue2 项目中使用&#xff1a; 1. 封装的图片上传组件 ImageUploader.vue <te…...

第25节 Node.js 断言测试

Node.js的assert模块主要用于编写程序的单元测试时使用&#xff0c;通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试&#xff0c;通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...

【单片机期末】单片机系统设计

主要内容&#xff1a;系统状态机&#xff0c;系统时基&#xff0c;系统需求分析&#xff0c;系统构建&#xff0c;系统状态流图 一、题目要求 二、绘制系统状态流图 题目&#xff1a;根据上述描述绘制系统状态流图&#xff0c;注明状态转移条件及方向。 三、利用定时器产生时…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...