Linux 常见命令使用(超详细版)

文章目录

  • 基本
    • echo
    • 关机、重启命令
    • 上传下载工具rz/sz
    • <、>、>>
    • ls
    • 管道
    • clear
    • cd
    • pwd
  • 文件处理类命令
    • mkdir
    • rmdir
    • touch
    • cp
    • mv
  • 文件查看类命令
    • cat
    • more
    • less
    • head
    • tail
  • 用户管理命令
    • useradd
    • passwd
    • usermod
    • userdel
    • groupadd
    • groupdel
  • 文件属性类命令
    • chmod
    • chown
    • chgrp
    • ln
  • 文件压缩类命令
    • tar
    • gzip
    • unzip
  • 文本处理类
    • awk
    • sed
    • cut
    • tr
  • 查找类
    • find
    • grep
  • 正则表达式
  • 工具类命令
    • cal
    • date
    • wc
    • sort
    • which / whereis
    • su
    • sudo
    • rpm/yum/apt-get
    • win-linux格式转换
    • 防火墙操作
  • vi编辑器
    • **普通模式**
    • **插入模式**
    • **末行模式**
    • vi与shell交互
    • vi文件冲突
  • 网络管理
    • ping
    • traceroute
    • netstat
    • 网络相关配置文件
    • service
    • chkconfig
    • systemd
    • systemctl
    • 开机自启动
    • 重启虚拟机网络
  • 常用符号含义
  • 常用符号含义

基本

echo

作用:在终端上显示文本字符串或变量的值

格式:echo [选项] 字符串

选项:-n:不在输出的末尾添加换行符。

[root@localhost ~]# name=alice
[root@localhost ~]# echo hello,$name
hello,alice

关机、重启命令

【普通用户不允许关机和重启】

  • shutdown
shutdown [OPTIONS] [TIME] [MESSAGE]
shutdown –h now "close"    (-h=halt)  //立即关机,显示close
shutdown -r now            (r=reboot) //重启
  • init(改变系统的运行级别,从而实现关机或重启)
init 0  //关机
init 6  //重启
  • halt( 直接停止所有处理并关闭系统 )
halt -p
  • poweroff(类似halt)
poweroff -p
  • reboot(等同shutdown -r)
reboot

上传下载工具rz/sz

rz:receive——从windows上传文件到这个linux虚拟机

sz [文件路径]:send——从linux虚拟机下载文件到windows的rzsz文件夹

<、>、>>

<:输入重定向

把右边的输入作为左边的输入

cat < input.txt
结果:展示input.txt内容

>:输出重定向,把左边的结果输出到右边文件。

如果文件存在,则覆盖其内容;如果文件不存在,则创建该文件。

ls > filelist.txt
将ls的输出 写到filelist内

>>:追加

文件末尾添加

echo abc >> list.txt

ls /usr /abc 列出/usr/abc目录的内容

ls /usr /abc >ok.txt 将列出的目录内容输出到ok.txt

ls /usr /abc 1>ok.txt :1>和>等价,和上一条效果一样

ls /usr /abc 2>err.txt :2>将标准错误输出重定向到文件err.txt

ls /usr /abc 1>ok.txt 2>err.txt : 将 /usr/abc 目录的内容写入 ok.txt 文件,任何错误信息(如果有)会写入 err.txt 文件。

ls /usr /abc 2>/dev/null :/dev/null 是一个特殊文件,写入其中的数据会被丢弃。

ls /usr /abc 1>/dev/null 2>&1 :1> 将标准输出重定向到 /dev/null,所以 /usr/abc 目录的内容会被丢弃。

2>&1 表示将标准错误输出重定向到标准输出的目标,即 /dev/null

ls

作用:显示某个目录下的文件内容,可以显示文件和子目录的名称及其相关信息。

格式:ls [选项] [文件或目录]

选项:

-a:显示所有文件,包括以 . 开头的隐藏文件。(all)

-l:以长格式列出文件的详细信息。(list)

-h:与 -l 选项一起使用,以人类可读的格式显示文件大小(如 KB、MB)。(human)

-R:递归地列出子目录中的内容。 (recursive递归)

-t:根据修改时间排序,最近修改的文件排在最前面。

-r:逆序排列。(reverse)

-S:根据文件大小排序,最大的文件排在最前面。

-i:显示文件的 inode 号码。

-d:仅显示目录自身的信息,而不显示其内容。

-1:每行只显示一个文件名

[root@localhost ~]# ls -hl
total 4.0K
drwxr-xr-x 2 root root    6 May 24 16:18 disktmp
-rw-r--r-- 1 root root 1.1K May 26 17:27 exam8.txt
drwxr-xr-x 3 root root   53 May 26 17:12 nginx
drwxr-xr-x 2 root root   66 May  8 11:01 shell
drwxr-xr-x 2 root root   82 May 24 15:44 tmp

在这里插入图片描述

ls -ail:显示当前目录的所有文件(包括隐藏文件)及其详细信息和 inode 号。

ls -lR /etc:递归地列出 /etc 目录及其子目录中的所有文件和目录的详细信息。

ls -lS /var/log:列出 /var/log 目录中的文件和目录,并根据文件大小从大到小排序

管道

把前一个命令的输出作为下一个命令的输入,实现将多个命令连接起来

格式:命令1 | 命令2 | 命令3 …

例子:cat /etc/passwd | grep root | wc -l

效果:cat /etc/passwd:显示了该目录下的文件内容; grep root :读取前一个命令中的文件内容,搜索并输出包含“root”的所有行;wc -l:计算前一个命令传过来的包含root的所有行,计算出行数

综合效果:读取文件内容,计算包含root的行数,并最后输出行数

clear

清空屏幕

cd

作用:切换目录

cd ~ 进入主目录 或者cd 以root身份进入主目录就是root

cd .. 返回上一级目录

cd ../.. 返回上两级目录

cd - 进入上一个访问的目录

cd / 快速进入根目录

cd ~/projects/my_project

pwd

作用:显示当前路径 print work directory

[root@localhost disktmp]# pwd
/root/disktmp

文件处理类命令

mkdir

作用:创建新目录(文件夹)

格式:mkdir [选项] 目录名

mkdir dir1 dir2 :在当前目录下创建dir1和dir2

mkdir dir4/dir5 :创建dir4下的dir5目录,要求dir4必须已经存在,不然会报错

mkdir -p dir4/dir5 :递归创建目录,在当前目录下创建dir4然后在dir4下创建dir5,如果dir4已存在dir5不存在,创建dir5,不会报错

rmdir

作用:删除目录。只能删除空目录

格式:rmdir [选项] 目录名

rmdir -p dir1/dir2 :递归删除当前目录下的dir1和他的子目录dir2

touch

作用:创建空文件和更新文件的时间戳

格式:touch [选项] 文件名

选项:-a :改变档案的读取时间记录

-m :改变档案的修改时间记录

-r :使用参考档的时间记录

-d :设定时间与日期,可以使用各种不同的格式

touch file1.txt file2.txt file3.txt: 创建三个空文件,如果这些文件不存在

touch myfile.txt :更新文件的时间戳,如果文件不存在,则创建该文件

touch -t [[CC]YY]MMDDhhmm[.ss] file :自定义时间戳

touch -t 202405261230.00 myfile.txt: 将 myfile.txt文件的时间戳设置为 2024 年 5 月 26 日 12:30:00。如果文件不存在,则会创建一个新的空文件。

touch -r referencefile.txt newfile.txt: 将 后面文件的时间戳设置为与 前面文件相同

cp

作用:文件或目录的复制

格式:cp [选项] 源文件 目标文件cp [选项] 源文件... 目标目录

选项:-a :复制目录时,保留链接、文件属性,并复制目录下的所有内容

-f :覆盖已存在的目标文件而不进行提示

-p :除复制文件的内容外,还把修改时间和访问权限也复制到新文件中(保留文件属性)

-r :递归复制目录中的所有内容,包括子目录

cp file1.txt file2.txt: 将file1.txt复制一份并重命名为file2.txt,如果file2.txt已经存在,可以选择overwrite

cp file1.txt file2.txt /home/root/aaa:将当前目录下的file1file2复制到后面的路径文件夹中

cp -r source_directory target_directory 将原路径下所有内容复制到目标路径

cp -f file1.txt file2.txt file1复制到file2,如果file2有内容强制覆盖不提示

mv

作用:移动文件或目录(重命名)

格式:mv [选项] 源文件 目标文件mv [选项] 源文件... 目标目录

选项:-i 目标路径如果同名,先询问是否覆盖

-f 覆盖已经存在的目标文件而不给提示

-n 不要覆盖任何已存在的文件或目录

mv file1.txt file2.txt:将前重命名为后

mv file1.txt aaa/bbb:将file1移动到目标路径目录


文件查看类命令

cat

作用:显示文件的内容、连接文件并输出到终端上。“concatenate”(连接)

选项:-n 给每行编号,-b 除了空白行,给每行编号

  • 显示单个文件:
cat /etc/shells
这会在终端中显示 `/etc/shells` 文件的内容。
【etc文件夹存储系统配置文件】
  • 连接两个文件一起显示
cat file1.txt file2.txt
这会先显示 `file1.txt` 的内容,然后显示 `file2.txt` 的内容。
  • 重定向输出到新文件
cat file1 file2 > newfile
示例:
cat file1.txt file2.txt > combined.txt
这会将 `file1.txt` 和 `file2.txt` 的内容连接起来,并将结果保存到 `combined.txt`
  • 追加文件内容
cat file1 >> existingfile
【使用 >> 可以将内容追加到现有文件的末尾,而不是覆盖它】
示例:
cat additional.txt >> combined.txt
这会将 `additional.txt` 的内容追加到 `combined.txt` 的末尾。

可选选项

cat -n /etc/shells  //文件的每一行加上行号并显示
cat -s file.txt  //将连续的空白行压缩成一行
cat -v file.txt //显示不可打印字符(例如,制表符和换行符)

more

作用:逐屏显示长文件内容,可以方便地查看长文本文件,一次显示一屏内容

格式:more [选项] 文件名

选项:+数字 从第n行开始显示 -10一次显示前10行

-s 把连续的多行空行显示为一行

-d 显示行号

基本操作

空格键:显示下一屏内容。

回车键:向下滚动一行。

/pattern:向前搜索匹配 pattern 的字符串。

n 键:跳转到下一个匹配 pattern 的字符串。

q 键:退出查看

【注意点:一次性加载。只能往下翻。】

less

作用:逐屏查看文件内容。相比于 more 命令,less 提供了更强大的功能和更多的选项

格式:less [选项] 文件名

选项:-e 当文件显示结束后,自动退出-f 强迫打开特殊文件-i 忽略搜索时的大小写-N 显示每行的行号-s 显示连续空行为一行

基本操作

q:退出

空格:下一页

回车 下一行

上下移动键上下移动

注意点:支持上下翻。按需加载。

head

作用:显示文件的开头的内容。在默认情况下显示文件的前10行内容

格式:格式: head [选项] 文件名

-q 隐藏文件名

-v 显示文件名

-c<数目> 显示的字节数

-n<行数> 显示的行数

head -n 5 file1:显示 file1的前 5 行内容

head -c 20 file1: 显示 file1的前 20 个字节的内容

tail

作用:显示文件的结尾的内容。在默认情况下显示文件的最后10行内容

格式: tail [选项] 文件

-f 当文件变化时输出文件新增内容

-c<数目> 显示的字节数

-n<行数> 显示的行数

-v 显示详细的处理信息

tail file1:显示 file1 的最后 10 行内容

tail -n 5 file1:显示 file1 的最后 5 行内容

tail -c 50 file1:显示 file1 的最后 50 个字节的内容

tail -f file1:以“跟随”模式显示 file1 的内容。它会显示文件末尾的内容,并在文件更新时持续输出新增的内容。这个选项常用于查看日志文件。


用户管理命令

useradd

作用:新增用户

格式: useradd [选项] 用户名

root用户

-d dirName指定用户主目录。默认将会在/home目录下新建一个与用户名相同的用户主目录
-s shellName指定用户登录时使用的shell。默认为/bin/sh
-g groupName指定用户所属的组名。创建用户时默认创建一个与用户名同名的组
-G groupList一个用户可以属于一个组,也可以属于多个组。用户创建时属于的组称为主组,其他的叫附属组
-u uid指定新用户的UID。新用户默认UID为当前最高UID值+1

useradd -d /home/customdir -s /bin/zsh username

创建一个名为 username的用户,主目录设为/home/customdir,登录 shell 设置为 /bin/zsh。

passwd

作用:修改密码

格式:passwd [选项] [用户名]

普通用户只能修改自己密码,root可以修改其他人

passwd:选项用户名都不输入,默认是修改当前登录用户的密码

passwd user1

  • 高级应用-无交互设置密码

    echo xxx | passwd --stdin root

    将 root用户的密码设置为 xxx,并且不会提示交互输入。

    --stdin:从标准输入中读入新的密码

usermod

作用:修改现有用户账户属性

格式:usermod [选项] 用户名

root权限下:

  • -d dirName :指定用户主目录。默认将会在/home目录下新

建一个与用户名相同的用户主目录

  • -s shellName :指定用户登录时使用的shell。默认为/bin/sh

  • -g groupName :指定用户所属的组名。创建用户时默认创建一个与用户名同名的组

  • -G groupList :一个用户可以属于一个组,也可以属于多个组。用户创建时属于的组称为主组,其他的叫附属组。

  • -u uid :指定新用户的UID。新用户默认UID为当前最高UID值+1

usermod -u 2048 user2 :将用户 user2 的用户ID (UID) 修改为2048

usermod -d /home/user2048 user2:将用户 user2 的主目录更改为 /home/user2048

userdel

作用:删除用户(root权限下)

格式:userdel [-r] 用户名

-r:删除用户账户的同时,删除用户的主目录及主目录下的所有文件和目录。

groupadd

作用:增加用户组(root权限下)

格式:groupadd [-g] 组名

groupadd user3

groupadd -g 1024 user1024 增加组并设置user1024用户的gid为1024

groupdel

作用:删除用户组(root权限下)

格式:groupdel 组名

groupdel user3:删除user3组


文件属性类命令

chmod

(change mode)

作用:更改文件或目录的权限

格式:chmod [-R] 权限模式 路径

权限模式的两种表示方式:

  • 数字模式:使用三个八进制数字表示文件的权限,每个数字表示一组权限:用户、组 和其他人。

    其中,4表示读r,2表示写w,1表示执行x,可以通过和组合的方式组合权限。

    如741表示:用户权限可读可写可执行,组权限可读,普通权限可执行

  • 符号模式:使用符号来表示权限的添加或删除

    符号模式的格式为 [ugoa] [±=] [rwx],其中:

    • u(用户),g(组),o(其他人),a(所有人)
    • +(添加权限),-(删除权限),=(设置权限)
    • 如:u+x:添加用户的执行权限

chmod u+x file.txt :为 file.txt 的用户添加执行权限

chmod g-w file.txt: 移除file.txt对组的写权限

chmod -R 755 /path/to/directory :递归地将 /path/to/directory 及其所有子目录和文件的权限设置为 755。

chmod a=rwx,u-x,g-wx,o-rwx a.txt:将a.txt设置所有用户读写执行权限,移除用户(文件所有者)的执行权限,移除组的写执行权限,移除其他用户的读写执行权限

最终权限:用户rw-r- - 其他用户- - -

ls -l a.txt
-rw-r----- 1 username groupname size date time a.txt

chmod 640 a.txt:用户-wx, 组-w- , 其他用户无权限

chown

(change owner)

作用:更改文件或目录的所有者和所属组(root权限)

格式:chown[-R]用户名[ :组名 ]路径

chown wilson a.txt:将a.txt的所属用户改为wilson

chown wilson:wilson a.txt :将a.txt的所属用户改为wilson组里的wilson用户

chown -R wilson dir1 递归将dir1目录下所有文件的所有者蛇者为wilson

chgrp

(change group)

作用:改变指定目录或文件的所属组。(root权限)

格式:chgrp [-R] 组名路径

chgrp wilson a.txt

chgrp -R wilson dir1

ln

作用:创建文件的快捷方式

格式:ln [-s] 源路径 目标路径

  • 硬链接:指向同一文件数据块的多个文件名

    • 所有硬链接共享相同的 inode 号,因此它们是完全等价的。

    • 给文件一个副本(别名),同时建立两者之间的连接关系,修改其中一个,与其连接的文件同时被修改,如果删除其中一个,其余的文件不受影响。磁盘上只有一份数据。

    • 硬链接是存在同一个文件系统中

  • 软链接(符号链接):指向另一个文件或目录的特殊文件

    • 软链接的方式则是产生一个特殊的文件,该文件的内容是指向另一个文件的位置。

    • 它只是一个快捷方式,删除了源文件,这个连接文件就没用了。

    • 软链接可以跨越不同的文件系统

ln file1.txt link1.txt :创建名为link1.txt的硬链接指向file1

ln -s /path/to/file1.txt symlink1.txt:创建名为symlink1的软连接指向该路径


文件压缩类命令

tar

作用:备份文件

格式:tar [选项] 压缩文件名 路径

-c 创建备份 create

-C path 切换到指定目录

-f 指定备份文件

-t 测试备份文件

-v 显示指令执行过程 -verbose

-x 从备份中还原文件 -extract

-z 通过gzip指令处理备份文件 -gzip

tar cvf dir1.tar dir1 :将dir1压缩命名为dir1.tar

tar xvf dir1.tar :从 dir1.tar 存档文件中提取所有文件和目录,解压(x) 到当前目录。

tar xvf dir1.tar -C /tmp:从 dir1.tar 存档文件中提取所有文件和目录,解压到 /tmp 目录。

tar zcvf dir1.tar.gz dir1 :创建一个名为 dir1.tar.gz 的压缩 tar 存档文件,包含 dir1 目录及其内容。

tar zxvf dir1.tar.gz :从 dir1.tar.gz 压缩 tar 存档文件中提取所有文件和目录,解压到当前目录。

gzip

作用:用于压缩文件(不包括目录)

格式:gzip [选项] 文件…

-d 解开压缩文件

-l 列出压缩文件的相关信息

-r 递归处理指定目录

-v 显示指令执行过程

-t 测试压缩文件是否有误

gzip dir1 :将dir1压缩为.gz后缀文件

gzip -drv dir1 :递归解压dir1.gz文件

unzip

作用:用于解压缩zip文件(zip -r myfolder.zip myfolder)

格式:unzip [选项] 路径

-n 解压时不要覆盖原有文件

-l 列出压缩文件的相关信息

-d dir 指定解压时存放的目录

-v 显示指令执行过程

-t 测试压缩文件是否有误

unzip a.txt.zip:将 a.txt.zip 压缩文件解压缩到当前目录

unzip -d /tmp a.txt.zipa.txt.zip 压缩文件解压缩到指定(-d)的 /tmp下


文本处理类

awk

作用:强大的文本数据处理工具

格式:awk [选项] ‘脚本命令’ 文件名

cat 文件名 | awk [选项] '脚本命令’

选项:

-F fs 指定分隔符fs,fs可以使字符串或正则表达式

-v 赋值一个用户定义变量

-f scriptfile 从脚本文件中读取awk命令

  • cat /etc/passwd | awk -F: ‘{print $1,$5}’

    将 /etc/passwd 文件的内容作为输入传递给 awk,使用 awk 命令来处理输入内容,-F:指定字段分隔符为 :,然后打印每行的第一个字段(用户名)和第五个字段(用户描述)。

  • awk -F: ‘{print $1,$5}’ /etc/passwd

    直接使用 awk命令处理 /etc/passwd文件,指定字段分隔符为 :,然后打印每行的第一个字段(用户名)和第五个字段(用户描述)。

  • cat /etc/passwd | awk -va=1 -F: ‘{print $1,$4+a}’

    将 /etc/passwd文件的内容作为输入传递给 awk。使用 awk 命令来处理输入内容,-va=1 定义变量 a 的值为 1,-F: 指定字段分隔符为 : ,然后打印每行的第一个字段(用户名)和第四个字段加上变量 a 的值。

    这里如果$4是数字,显示的是加法加上1的值,如果不是,显示0

sed

(stream editor)

作用:自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等,但不改变原文件

格式:sed [选项] 处理格式路径

a 在指定行号之后插入

c 整行替换

s 匹配替换

i 在指定行号位置插入

d 删除

sed ‘1a Hello Unix’ test.txt :对test.txt在第一行之后插入一行hello unix

sed ‘2c Hello Unix’ test.txt :将第 2 行替换

sed ‘s/l/L/’ test.txt:匹配替换(s),将每行中第一次出现的l变为L

sed ‘s/l/L/g’ test.txt:匹配替换(s),将每行中所有出现的l变为L

sed ‘1i Hello Unix’ test.txt 在第一行之前(1i)插入,也可以说插入到第一行

sed ‘1d’ test.txt :删除第一行

sed ‘d’ test.txt :删除所有行

以上默认不修改源文件

如需修改原文件,使用-i选项

sed -i ‘2c Hello Unix’ test.txt:第二行整行替换,并且源文件修改

cut

作用:从指定文件中过滤或提取特定内容,并显示在当前屏幕上

格式:cut [选项] 路径

-b 以字节为单位进行分割

-c 以字符为单位进行分割

-d 自定义分隔符,默认为制表符

-f 与-d一起使用,指定显示哪个区域

cut -d: -f 1,3,5 /etc/passwd:定义分隔符为-d,提取分隔后的第1,3,5字段

cut -c 2-5 /etc/passwd:提取第2-5个字符

tr

(text replacer)

作用:用于转换或删除文件中的字符

格式:tr [-d] 字符串1 字符串2

cat /etc/passwd | tr 'a-z' 'A-Z' 将显示 /etc/passwd文件的内容作为输入,将其中的小写字母转为大写字母,并输出屏幕

tr 'a-z' 'A-Z' < /etc/passwd 将文件作为tr命令的输入,将其中小写字母全换成大写字母并输出屏幕

tr -d 'a-c' < test.txt 将文件作为tr命令的输入,将其中的a,b,c字符删除

只是输出改变,一般不改变源文件


查找类

find

作用:查找文件或者目录

格式:find 路径 [选项] 表达式

-amin n 在过去n分钟内被读取过的文件

-atime n 在过去n天内被读取过的文件

-cmin n 在过去n分钟内被修改过的文件

-ctime n 在过去n天内被修改过的文件

-type c 文件类型是c的文件

-perm p 文件权限为p的文件

-name n 文件名为n的文件

find . -name “*.conf” :查找(当前目录及其子目录).中所有以 .conf 结尾的文件

find / -perm 765 -name “*.txt” :在根目录/下查找权限为 765 的所有以 .txt 结尾的文件

find /etc -type f -exec ls -l ‘{}’ \; : 在 /etc目录中查找所有普通文件(-type f),并显示它们的详细信息(对所有找到的文件执行(-exec) ls -l ‘{}’命令,{}是一个占位符,表示find命令找到的每一个文件的路径, \;是告诉-exec选项命令结束的标志。)

grep

(Global Regular Expression Print)

作用:查找文件里符合条件的字符串

格式:

grep [选项] pattern文件…

cat 文件… | grep [选项] pattern

-i 忽略字符大小写的差别

-v 显示不包含匹配文本的所有行

-n 显示匹配行及行号

grep ‘root’ /etc/passwd :在 /etc/passwd文件中查找包含 “root” 的行

cat /etc/passwd | grep ’root’ :使用 cat 命令将文件的内容作为输入传给grep,使用 grep过滤包含 “root” 的行

cat /etc/passwd | grep -v ‘root’ :使用 cat 命令将文件的内容作为输入传给grep,使用 grep过滤不包含(-v) “root” 的行

cat /etc/passwd | grep -i ‘net’:使用 cat 命令将文件的内容作为输入传给grep,使用 grep过滤包含net 的行,且不区分net的大小写


正则表达式

^锚定行的开始 如:^grep匹配所有以grep开头的行
$锚定行的结束 如: grep$匹配所有以grep结尾的行
.. 匹配一个非换行符的字符 如: gr.p匹配gr后接一个任意字符,然后是p
*匹配零个或多个先前字符 如: *grep匹配所有一个或多个空格后紧跟grep的行。 .*一起用代表任意字符
[]匹配一个指定范围内的字符,如’[Gg]rep’匹配Grep和grep
[^]匹配一个不在指定范围内的字符,如: [^A-FH-Z]rep匹配不包含A-F和H-Z的一个字母开头,紧跟rep的行
\(…\)标记匹配字符,如’\(love\)’ ,love被标记为1
\<锚定单词的开始,如:'\<grep’匹配包含以grep开头的单词的行
\>锚定单词的结束,如’grep\>'匹配包含以grep结尾的单词的行
x\{m\}重复字符x,m次,如: '0\{5\}'匹配包含5个o的行
x\{m,\}重复字符x,至少m次,如: 'o\{5,\}'匹配至少有5个o的行
x\{m,n\}重复字符x,至少m次,不多于n次,如: 'o\{5,10\}'匹配5–10个o的行
\w匹配文字和数字字符,也就是[A-Za-z0-9],如: 'G\w*p’匹配以G后跟零个或多个文字或数字字符,然后是p
\W\w的反置形式,匹配一个或多个非单词字符,如点号句号等
\b单词锁定符,如: '\bgrep\b’只匹配grep

工具类命令

cal

(calender)

作用:打印日期

选项:

-3 显示最近三个月的日历

-s 将星期天作为月的第一天

-m 将星期一作为月的第一天

-y 显示当年日历

cal 2 2022 打印2022年2月日历

date

作用:显示或设定系统的日期与时间

格式:date [选项] 时间格式

%H 小时(00…23)

%M 分钟(00…59)

%S 秒(00…60)

%Y 完整月份(0000…9999)

%m 月份(01…12)

%d 日(01…31)

[root@localhost ~]# date +'%Y-%m-%d %H:%M:%S' 
2024-06-02 15:40:30

一定要有前面的+

wc

word count:默认统计文件内的行、字、字节数

格式:wc [选项] 文件路径

-c 按字节统计(characters)

-l 按行数统计 (lines)

-m 按字符统计(multibyte)

-w 按单词统计(words)

[root@localhost ~]# wc /etc/passwd20  31 923 /etc/passwd

cat /etc/passwd | wc -l

sort

作用:对内容排序

格式:sort [选项] 文件路径

-f 排序时,将小写字母视为大写字母

-n 按照数值大小排序

-u 去重排序

-o file 将排序后的结果存入指定的文件

-r 以相反的顺序来排序

sort /etc/passwd:默认是按字典顺序排序

sort -r /etc/passwd:字典反序排序

sort -o out.txt -n /etc/passwd:按照数值大小排序,并将排序后结果保存到out.txt

which / whereis

作用:查找文件,适用于快速确定某个命令的位置以及检查命令是否存在。

格式: which / whereis 命令

su

作用:变更为其他使用者的身份。除 root外,需要键入该使用者的密码

格式: su [选项] [用户名]

su:默认变root

su tak:变tak普通用户

su -c ls tak:以tak用户运行ls命令

su - tak -c ls:变更账号为tak的使用者运行ls命令,并执行指令(ls)后再变回原来使用者

两者区别:前者只切换用户执行命令,不加载目标用户的环境。后者切换用户执行命令,并加载目标用户的完整环境。

sudo

作用:以系统管理者的身份执行指令

格式: sudo 命令

CentOS7默认没有普通用户具有sudo权限

添加sudo权限

修改 /etc/sudoers

步骤

su #切换到root用户
ls -l /etc/sudoers  #查看文件权限
chmod u+w /etc/sudoers #添加写权限
vi /etc/sudoers  #打开并搜索root行# 用户名 ALL=(ALL) ALL #添加内容,保存退出
chmod u-w /etc/sudoers #删除写权限
exit #切换回当前用户

rpm/yum/apt-get

rpm命令

RedHat系列包(redhat、centos、fedora) 使用rpm命令

rpm -qa | -i | -e

rpm -qa:查询所有已安装的包

yum命令

安装更新卸载使用yum

yum [ install | remove | list | search ] 包名

yum install nano 安装nano编辑器

apt-get命令

Debian、Ubuntu系列包管理使用apt-get

apt-get install | remove | list | search

win-linux格式转换

  • Windows 换行结束符号有两个控制字符,一个是归位字符

(carriage return, ^M),另一个是换行字符( new line, ^J )

  • Linux中只使用一个换行字符\n (功能同^J )

unix2dos|dos2unix filename #格式转换后覆盖更新原文件

unix2dos|dos2unix –n filename newFilename #格式转换后

存为新文件

防火墙操作

关闭防火墙

systemctl status firewalld #查看防火墙状态

systemctl disable firewalld #取消开机自启动

systemctl stop firewalld #关闭防火墙


vi编辑器

普通模式

  • 默认模式,用于导航和执行命令。
  • 启动 vi 后默认进入此模式。
  • 可以在此模式下使用导航键、删除、复制、粘贴等命令。
h(左), j(下), k(上), l(右)键盘上下左右键
$移动到行未
0移动到行首
gg定位第一行行首
G#定位末行行首
nG定位到第n行行首
n+向下移动n行
n-向上移动n行
Ctrl + b上翻一页
Ctrl + f下翻一页
x / nx删除一/n个字符
dd / ndd删除一/n行
u撤销上一步操作
U撤销对当前行的所有操作
yy / nyy复制一/n行
p粘贴到光标所在位置下一个字符位置
r / nr替换光标所在字符(相同字符)自动退出
R进入替换模式替换光标所在字符,直到按下Esc不会自动退出
ZZ与末行模式下 :wq 效果一样
gg + dG定位第一行行首删除所有内容

插入模式

  • 用于插入和编辑文本。

  • 从普通模式按 iIaAoO 等键进入插入模式。

  • Esc 键返回普通模式。

    i在光标左侧插入
    a在光标右侧插入
    o在光标所在行的下一行插入
    s删除光标所在字符后插
    I在光标所在行首插入
    A在光标所在行尾插入
    O在光标所在行的上一行插入
    S删除光标所在行

末行模式

  • 用于执行文件操作和一些高级命令。

  • 从普通模式按 : 进入命令行模式。

  • 输入完命令后按 Enter 执行,自动返回普通模式。

    :q正常退出
    :q!强制退出(如果文件有修改未保存需要强制退出)
    :w写入文件
    :w filename另存为
    :wq写入后退出
    :wq!写入后强制退出
    :x:wq一样
    :set nu 或 :set number显示所有行号
    :nu 或 :number显示光标所在行号
    :set nonu 或 :set nonumber取消行号显示
    /<pattern>从光标所在位置往下搜索
    ?<pattern>从光标所在位置往上搜索
    n/N向下/向上搜索下/上一个匹配项
    : s/x/y把光标所在行第一个匹配的x替换为y
    :n,m s/x/y把第n行到m行中每行中第一个匹配的x替换为y
    :% s/x/y把当前文件中所有行的第一个匹配的x替换为y
    g : 全局 => 把每一行中所有的匹配项都替换: s/x/y/g
    :n,m s/x/y/g
    :% s/x/y/g
    :n,m d删除第n行到m行之间的内容

在这里插入图片描述

vi /path/to/file打开文件默认定位第一行

vi +n filename 打开文件光标置于第n行

vi + filename 打开文件后把光标置于最后一行

vi filename1 filenam2 filename3… 多个文件一起打开,在末行模式使用:e filename切换

vi与shell交互

在末行模式下用“!”符号来访问Linux的Shell

:!cat /etc/passwd | more

:! /bin/bash

vi文件冲突

每次打开文件是会创建一个名为*.swp的临时文件

当多界面编辑、vi异常退出时会导致异常,删除*.swp即可

网络管理

安装网络管理工具yum install -y net-tools

列出各个已定义的网络接口的配置情况ifconfig

禁用、激活网络接口

ifconfig eth0 up

ifconfig eth0 down

注意:修改网络接口配置会导致SSH客户端断开

修改网络接口配置

临时:ifconfig <设备名> <IP> netmask <掩码>

修改网络接口配置会导致SSH客户端断开

重启网络控制程序后或重启系统后失效

修改后不一定可以上网

VMware网络模式

每个虚拟机指定上网模式,IP的分配方式

  • NAT(常用):利用宿主机网卡进行转发
  • 桥接模式:局域网内有独立IP,与宿主机同等地位
  • 仅主机模式:只能与宿主机通讯,适用于网络测试/攻防

ping

作用:网络连通性测试

格式:ping [选项] <目的主机名或IP地址>

-c <完成次数>设置完成要求回应的次数
-s <数据包大小>设置数据包的大小
-t <存活数值>设置存活数值TTL的大小
-v详细显示指令的执行过程

traceroute

作用:显示数据包到主机间的路径

格式:traceroute <选项> <目的主机IP或域名>

-i使用ICMP回应取代UDP资料信息
-m <存活数值>设置检测数据包的最大存活数值TTL的大小
-n直接使用IP地址而非主机名称
-p <通信端口>设置UDP传输协议的通信端口
-v详细显示指令的执行过程

netstat

作用:用于显示网络状态

格式: netstat [选项]

-a或–all显示所有连线中的Socket
-A<网络类型>或–<网络类型>列出该网络类型连线中的相关地址
-c或–continuous持续列出网络状态
-e或–extend显示网络其他相关信息
-l或–listening显示监控中的服务器的Socket
-n或–numeric直接使用IP地址,而不通过域名服务器
-p或–programs显示正在使用Socket的程序识别码和程序名称
-t或–tcp显示TCP传输协议的连线状况
-u或–udp显示UDP传输协议的连线状况
-v或–verbose显示指令执行过程

网络相关配置文件

/etc/sysconfig/network最基本的网络信息,系统启动时读取该文件
/etc/sysconfig/network-scripts/此目录下的文件是系统启动时用来初始化网络的一些信息,例如:第一块以太网卡对应的文件为ifcfg-eth0
/etc/host.conf域名解析的配置文件
/etc/hosts域名或主机名与IP地址的映射文件
/etc/resolv.conf域名服务器配置文件
/etc/protocols定义使用的网络互联协议及协议号
/etc/services设定主机的不同端口的网络服务

/etc/sysconfig/network

该文件用来指定服务器上的网络配置信息, 包含了控制和网络有关的文件和守护程序的行为的参数

常见的几个配置项如下:

  • NETWORKING:值为yes或no,表示主机是否支持网络功能
  • HOSTNAME:主机名(即域名)
  • GATEWAY: 默认网关
  • FORWARD_IPV4: 设置本机是否允许转发IPV4的数据包
  • DOMAINNAME: 此台主机所属的网络域
  • GATEWAYDEV: 连接网关的设备,例如eth0,如果是拨号用户则设为ppp0

/etc/sysconfig/network-scripts/ifcfg-*

ifcfg-*

  • DEVICE=eth0 //设备名称
  • ONBOOT=yes //启动时是否启动该设备
  • BOOTPROTO=none //启动协议,none表示使用用户设置的ip地址,dhcp表示从dhcp获得ip地址,static表示静态
  • IPADDR=192.168.14.11 //IP地址
  • NETMASK=255.255.255.0 //子网掩码
  • GATEWAY=XX.XXX.XXXX //网关
  • DNS1=xx.xxx.xxx.xx //DNS服务器

/etc/host.conf

域名解析配置文件

  • order hosts, bind先查询解析/etc/hosts文件,然后是DNS服务器
  • multi on指定的计算机是否可以有多个IP地址
  • nospoof on不允许对该服务器进行IP地址欺骗

/etc/protocols

定义协议定义文件

协议名称 协议号 别名

在这里插入图片描述

网络服务列表文件 /etc/services

列出了列出了Linux系统支持的服务名称、服务使用的端口号和协议类型、服务的别名、功能注释等

在这里插入图片描述

service

作用:用于对系统服务进行管理

格式:service 服务名 [ start | stop | restart | status ]

service sshd restart

service atd status

chkconfig

作用:用于检查和设置系统的各种服务,设置启动项

格式:chkconfig [选项] 服务名 [状态]

–add添加指定的新服务
–del删除指定服务
–level<运行级别编号>改变服务的运行级别及启动信息
–list显示所有或指定服务,以及他们在每个运行级别是否启动

提供了一个维护/etc/rc[0~6] d 文件夹的命令行工具,它减轻了系统直接管理这些文件夹中的符号连接的负担

chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接,需要重启才能生效

chkconfig --list

chkconfig --add mysql

chkconfig --level 2345 mysql on

systemd

CentOS 7 开始使用systemd替换了SysV

Systemd目的是要取代Unix时代以来一直在使用的init系统,兼容SysV和LSB的启动脚本,而且够在进程启动过程中更有效地引导加载服务

systemd不仅仅只是个初始化系统,它还包括了还包括了管理系统各种的方面的 daemon

现在的大多数Linux发行版本都进行了这个更新

systemctl

主要负责控制systemd系统和服务管理器

是一个系统管理守护进程、工具和库的集合,用于取代System V、service和chkconfig命令

service 对比

systemctl start network.service

systemctl restart sshd

daemon命令systemctl命令说明
service [服务] startsystemctl start [unit type]启动服务
service [服务] stopsystemctl stop [unit type]停止服务
service [服务] restartsystemctl restart [unit type]重启服务

chkconfig 对比

systemctl enable nginx.service

systemctl disable sshd

daemon命令systemctl命令说明
chkconfig [服务] onsystemctl enable [unit type]设置服务开机启动
chkconfig [服务] offsystemctl disable [unit type]设备服务禁止开机启动

开机自启动

/etc/rc.d/rc.local

1.赋予脚本可执行权限chmod +x /opt/script/autostart.sh

  1. 在 /etc/rc.d/rc.local 末尾增加想要执行的脚本内容su - user -c '/opt/script/autostart.sh’
  2. 给 /etc/rc.d/rc.local 赋予可执行权限chmod +x /etc/rc.d/rc.local

chkconfig

  1. 将脚本移动到 /etc/rc.d/init.d目录下

    mv /opt/script/autostart.sh /etc/rc.d/init.d

  2. 赋予脚本可执行权限

    chmod +x /etc/rc.d/init.d/autostart.sh

  3. 添加脚本到开机自动启动项目中

cd /etc/rc.d/init.d

chkconfig --add autostart.sh

chkconfig autostart.sh on

systemctl

默认情况下,服务通过yum install时,会自动配置好unit文件

默认在 /usr/lib/systemd/system 目录下

以Jenkins为例

# systemctl enable jenkins.service

# systemctl start jenkins.service

重启虚拟机网络

重启网络 :systemctl restart network

常用符号含义

【不严谨,仅用于帮助理解】

a:通常表示“all”,即所有的。例如:

  • ls -a:显示所有文件,包括隐藏文件。
  • grep -a:将二进制文件作为文本文件搜索。

c:通常与“count”或“change”相关。例如:

  • wc -c:统计字符数。
  • cp -c:检查文件是否真正被复制(部分系统)。

e:通常与“echo”或“execute”相关。

f:通常表示“file”或“force”的相关选项,表示强制、指定。例如:

  • rm -f:强制删除文件。
  • tar -f:指定归档文件。

g:有时表示“global”或“group”的相关选项,表示全局、组。例如:

  • grep -g:使用基本正则表达式(部分系统)。
  • chmod -g:修改组权限。

h:通常表示“human-readable”或“help”。例如:

  • ls -h:以人类可读的格式显示文件大小。

i:通常与“interactive”或“ignore”相关。例如:

  • rm -i:在删除每个文件前进行提示。
  • grep -i:忽略大小写地搜索。

l:通常表示“long”或“list”的相关选项。例如:

  • ls -l:以长格式列出文件的详细信息。
  • ps -l:以长格式显示进程信息。

m:通常与“modification”或“message”相关。例如:

  • chmod -m:设置文件权限(部分系统)。
  • echo -m:显示消息(部分系统)。

n:通常表示“number”或“no”的相关选项。例如:

  • grep -n:显示匹配行的行号。
  • ls -n:显示用户和组的数字ID而不是名称。

o:通常与“output”或“only”相关。例如:

  • ls -o:显示详细信息时省略组信息。
  • tar -o:指定输出文件。

p:通常与“path”或“print”相关。例如:

  • find -print:显示找到的文件。
  • mkdir -p:创建目录,包括必要的父目录。

q:通常表示“quiet”或“quick”的相关选项。例如:

  • grep -q:安静模式,不输出任何信息。
  • tar -q:快速创建归档文件。

r:通常表示“recursive递归”或“reverse逆序”的相关选项。例如:

  • cp -r:递归复制目录。
  • ls -r:逆序排列。

s:通常表示“size”的相关选项。例如:

  • ls -s:显示文件大小。

t:通常与“time”或“type”相关。例如:

  • ls -t:根据修改时间排序。
  • file -t:显示文件类型。

u:通常表示“user”或“update”的相关选项。例如:

  • chmod -u:修改用户权限。
  • rsync -u:仅更新较新的文件。

x:通常与“extract”或“exclude”相关。例如:

  • tar -x:解压归档文件。
  • grep -x:精确匹配整个行。

常用符号含义

【不严谨,仅用于帮助理解】

a:通常表示“all”,即所有的。例如:

  • ls -a:显示所有文件,包括隐藏文件。
  • grep -a:将二进制文件作为文本文件搜索。

c:通常与“count”或“change”相关。例如:

  • wc -c:统计字符数。
  • cp -c:检查文件是否真正被复制(部分系统)。

e:通常与“echo”或“execute”相关。

f:通常表示“file”或“force”的相关选项,表示强制、指定。例如:

  • rm -f:强制删除文件。
  • tar -f:指定归档文件。

g:有时表示“global”或“group”的相关选项,表示全局、组。例如:

  • grep -g:使用基本正则表达式(部分系统)。
  • chmod -g:修改组权限。

h:通常表示“human-readable”或“help”。例如:

  • ls -h:以人类可读的格式显示文件大小。

i:通常与“interactive”或“ignore”相关。例如:

  • rm -i:在删除每个文件前进行提示。
  • grep -i:忽略大小写地搜索。

l:通常表示“long”或“list”的相关选项。例如:

  • ls -l:以长格式列出文件的详细信息。
  • ps -l:以长格式显示进程信息。

m:通常与“modification”或“message”相关。例如:

  • chmod -m:设置文件权限(部分系统)。
  • echo -m:显示消息(部分系统)。

n:通常表示“number”或“no”的相关选项。例如:

  • grep -n:显示匹配行的行号。
  • ls -n:显示用户和组的数字ID而不是名称。

o:通常与“output”或“only”相关。例如:

  • ls -o:显示详细信息时省略组信息。
  • tar -o:指定输出文件。

p:通常与“path”或“print”相关。例如:

  • find -print:显示找到的文件。
  • mkdir -p:创建目录,包括必要的父目录。

q:通常表示“quiet”或“quick”的相关选项。例如:

  • grep -q:安静模式,不输出任何信息。
  • tar -q:快速创建归档文件。

r:通常表示“recursive递归”或“reverse逆序”的相关选项。例如:

  • cp -r:递归复制目录。
  • ls -r:逆序排列。

s:通常表示“size”的相关选项。例如:

  • ls -s:显示文件大小。

t:通常与“time”或“type”相关。例如:

  • ls -t:根据修改时间排序。
  • file -t:显示文件类型。

u:通常表示“user”或“update”的相关选项。例如:

  • chmod -u:修改用户权限。
  • rsync -u:仅更新较新的文件。

x:通常与“extract”或“exclude”相关。例如:

  • tar -x:解压归档文件。
  • grep -x:精确匹配整个行。

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

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

相关文章

【多模态】40、ConvLLaVA | 使用 ConvNeXt 为 LLaVA 实现更高分辨率的输入

论文&#xff1a;ConvLLaVA: Hierarchical Backbones as Visual Encoder for Large Multimodal Models 代码&#xff1a;https://github.com/alibaba/conv-llava 出处&#xff1a;阿里 | 清华 时间&#xff1a;2024.05 一、背景 LMM 在很多任务上都表现出来很好的效果&…

ROS编译错误: fatal error: test_pkg/test_pkg.h: 没有那个文件

在ROS安装完毕后编译ros工作空间&#xff0c;出现了以下错误: 解决方法: 删除工作空间&#xff0c;重建再重新编译

vue3+ el-tree 展开和折叠,默认展开第一项

默认第一项展开: 展开所有项&#xff1a; 折叠所有项&#xff1a; <template><el-treestyle"max-width: 600px":data"treeData"node-key"id":default-expanded-keys"defaultExpandedKey":props"defaultProps"…

超好用的傲软录屏下载和解锁版安装教程 (专业好用的桌面录屏软件)

录屏系列软件安装目录 一、ZD屏幕录像机解锁版下载及安装教程 (一款小巧的轻量级屏幕录像工具) 二、班迪录屏Bandicam v7解锁版安装教程&#xff08;高清录屏软件&#xff09; 三、Mirillis Action v4 解锁版安装教程(专业高清屏幕录像软件) 四、Aiseesoft Screen Recorder…

支持图片识别语音输入的LobeChat保姆级本地部署流程

文章目录 前言1. LobeChat对我们有哪些帮助?2. 本地安装LobeChat3. 如何使用LobeChat工具4. 安装Cpolar内网穿透5. 实现公网访问LobeChat6. 固定LobeChat公网地址 前言 本文主要介绍如何在Windows系统电脑本地部署LobeChat&#xff0c;一款高颜值的开源AI大模型智能应用&…

Java学习十四—Java8特性之Lambda表达式

一、简介 Java 8 引入了 Lambda 表达式&#xff0c;它是一种更简洁、更便于使用的函数式编程特性。Lambda 表达式允许将函数作为方法的参数&#xff08;函数式接口的实例&#xff09;传递给某个方法&#xff0c;或者将代码像数据一样进行传递。 ‍ lambda是一个匿名函数&#…

LLM之RAG实战(四十一)| 使用LLamaIndex和Gemini构建高级搜索引擎

Retriever 是 RAG&#xff08;Retrieval Augmented Generation&#xff09;管道中最重要的部分。在本文中&#xff0c;我们将使用 LlamaIndex 实现一个结合关键字和向量搜索检索器的自定义检索器&#xff0c;并且使用 Gemini大模型来进行多个文档聊天。 通过本文&#xff0c;我…

明确产业定位,用科学规划铸就高品质文化产业园

科学规划是构建高品质文化产业园区的重要保障。通过明确产业定位与发展目标、科学规划空间布局、完善基础设施与配套设施、注重生态环境保护、加强人才引进与培养以及推动产业协同发展等措施的实施&#xff0c;可以推动文化产业园区向高品质、高效益、可持续的方向发展。 一、明…

【TB作品】51单片机 Proteus仿真 超声波读取+LCD1602显示仿真12MHZ

实验报告&#xff1a;51单片机 Proteus仿真 超声波读取LCD1602显示仿真 一、实验背景 本实验旨在使用51单片机&#xff08;AT89C51&#xff09;结合超声波传感器HC-SR04和LCD1602液晶显示屏&#xff0c;通过Proteus仿真平台实现超声波测距功能&#xff0c;并将测得的距离显示…

leetcode hot100

哈希 49.字母异位词分组 HashMap的含义比较晕&#xff0c;可以重做 双指针 11.盛最多水的容器 双指针的起始位置和移动条件没转过来&#xff0c;可以重做 15.三数之和 不太熟练&#xff0c;可以再做一遍 42.接雨水 还可以用dp和单调栈做 双指针法&#xff1a; 首先需要注意…

【DFS(深度优先搜索)详解】看这一篇就够啦

【DFS详解】看这一篇就够啦 &#x1f343;1. 算法思想&#x1f343;2. 三种枚举方式&#x1f343;2.1 指数型枚举&#x1f343;2.2 排列型枚举&#x1f343;2.3 组合型枚举 &#x1f343;3. 剪枝优化&#x1f343;4. 图的搜索&#x1f343;5. 来几道题试试手&#x1f343;5.1 选…

spark任务,使用 repartition 对数据进行了重新分区,但任务输入数据大小仍存在不均衡

目录 目录 确认 Spark 任务重新分区后的数据不均衡 1. 检查分区大小 2. 使用 DataFrame API 检查分区 3. 使用 Spark UI 查看分区情况 4. 使用日志记录分区信息 可能原因 1. 数据分布不均衡 2. 分区策略 3. 数据预处理 解决方案 1. 检查数据分布 2. 使用 coalesce…

代码随想录算法训练营Day62|冗余连接、冗余连接II

冗余连接 108. 冗余连接 (kamacoder.com) 考虑使用并查集&#xff0c;逐次将s、t加入并查集中&#xff0c;当发现并查集中find(u)和find(v)相同时&#xff0c;输出u和v&#xff0c;表示删除的边即可。 #include <iostream> #include <vector> using namespace s…

【分布式系统】注册中心Zookeeper

目录 一.Zookkeeper 概述 1.Zookkeeper 定义 2.Zookkeeper 工作机制 3.Zookkeeper 特点 4.Zookkeeper 数据结构 5.Zookkeeper 应用场景 统一命名服务 统一配置管理 统一集群管理 服务器动态上下线 软负载均衡 6.Zookkeeper 选举机制 第一次启动选举机制 非第一次…

uboot镜像之boot烧写

适用场景:单板上没有boot&#xff0c;和按地址烧写配合&#xff0c;可完成单板所有镜像的烧写。 原理:bootrom读取u-boot.bin至内存并执行此u-boot 然后运行uboot,通过uboot sf命令烧录uboot.bin到flash存储空间去. bootrom读取u-boot.bin至内存并执行此u-boot 通过uboot sf命…

【开发工具】webStrom2024版-插件

Chinese (Simplified) Language Pack / 中文语言包 英文界面变为中文界面。 Material Theme UI 界面美化 Rainbow Brackets 代码量变大时&#xff0c;总会伴随着各种括号&#xff1b;它能将括号赋予不同的颜色&#xff0c;方便我们区分。 Translation 中英互译&#xff0c;…

Codeforces Round 918 (Div. 4)(A~F)

目录 A. Odd One Out B. Not Quite Latin Square C. Can I Square? D. Unnatural Language Processing E. Romantic Glasses F. Greetings A. Odd One Out Problem - A - Codeforces 输出一个不同于其他两个数的数&#xff0c;用异或操作可以轻松解决。 void solve{int…

高考志愿填报,选专业是看兴趣还是看就业?

对于结束高考的学生来说&#xff0c;选择专业的确是一个非常让人头疼的事情。因为很多人都不知道&#xff0c;选专业的时候究竟是应该看一下个人兴趣&#xff0c;还是看未来的就业方向&#xff0c;这也是让不少人都相当纠结的问题。这里分析一下关于专业选择的问题&#xff0c;…

windows下docker安装

目录 前言 1.搭建WSL2环境 1.1打开控制面板 1.2 将WSL 2设置为默认值 2.安装docker 3.使用docker 结论&#xff1a; 前言 本文安装docker&#xff0c;将使用WSL2&#xff0c;而不是vmeare和Hyper-V&#xff0c;也不需要你另外安装Linux系统&#xff08;如Ubuntu&#x…