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

网站建设 网址导航/百度搜索引擎入口登录

网站建设 网址导航,百度搜索引擎入口登录,做网站卖产品怎么开展,做爰全过程的视频的网站在计算机的世界里,Linux操作系统以其强大的功能和灵活性受到了广大程序员和IT爱好者的喜爱。然而,对于初学者来说,Linux的操作命令可能会显得有些复杂和难以理解。 今天,我们就来一起探索一些Linux常用操作命令,让你的…

在计算机的世界里,Linux操作系统以其强大的功能和灵活性受到了广大程序员和IT爱好者的喜爱。然而,对于初学者来说,Linux的操作命令可能会显得有些复杂和难以理解。

今天,我们就来一起探索一些Linux常用操作命令,让你的计算机操作更加流畅。

一、目录操作

首先带大家了解一下Linux 系统目录:

├── bin -> usr/bin # 用于存放二进制命令
├── boot # 内核及引导系统程序所在的目录
├── dev # 所有设备文件的目录(如磁盘、光驱等)
├── etc # 配置文件默认路径、服务启动命令存放目录
├── home # 用户家目录,root用户为/root
├── lib -> usr/lib # 32位库文件存放目录
├── lib64 -> usr/lib64 # 64位库文件存放目录
├── media # 媒体文件存放目录
├── mnt # 临时挂载设备目录
├── opt # 自定义软件安装存放目录
├── proc # 进程及内核信息存放目录
├── root # Root用户家目录
├── run # 系统运行时产生临时文件,存放目录
├── sbin -> usr/sbin # 系统管理命令存放目录
├── srv # 服务启动之后需要访问的数据目录
├── sys # 系统使用目录
├── tmp # 临时文件目录
├── usr # 系统命令和帮助文件目录
└── var # 存放内容易变的文件的目录

下面我们来看目录操作命令有哪些

pwd    查看当前工作目录
clear    清除屏幕
cd ~   当前用户目录
cd /   根目录
cd -   上一次访问的目录
cd ..   上一级目录

查看目录内信息

ll    查看当前目录下内容(LL的小写)\

创建目录

mkdir aaa 在当前目录下创建aaa目录,相对路径;
mkdir ./bbb 在当前目录下创建bbb目录,相对路径;
mkdir /ccc 在根目录下创建ccc目录,绝对路径;

递归创建目录(会创建里面没有的目录文件夹)

mkdir -p temp/nginx

搜索命令

find / -name ‘b’ 查询根目录下(包括子目录),名以b的目录和文件;
find / -name ‘b*’ 查询根目录下(包括子目录),名以b开头的目录和文件;
find . -name ‘b’ 查询当前目录下(包括子目录),名以b的目录和文件;

重命名

mv 原先目录 文件的名称   mv tomcat001 tomcat

剪切命令(有目录剪切到制定目录下,没有的话剪切为指定目录)

mv /aaa /bbb      将根目录下的aaa目录,移动到bbb目录下(假如没有bbb目录,则重命名为bbb);
mv bbbb usr/bbb  将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为bbb;
mv bbb usr/aaa   将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为aaa;

复制目录

cp -r /aaa /bbb:将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下的名称为aaa
cp -r /aaa /bbb/aaa:将/目录下的aa目录复制到/bbb目录下,且修改名为aaa;

强制式删除指定目录

rm -rf /bbb:强制删除/目录下的bbb目录。如果bbb目录中还有子目录,也会被强制删除,不会提示;

删除目录

rm -r /bbb:普通删除。会询问你是否删除每一个文件
rmdir test01:目录的删除

查看树状目录结构

tree test01/

批量操作

需要采用{}进行参数的传入了。

mkdir {dirA,dirB}  # 批量创建测试目录
touch dirA/{A1,A2,A3}     # dirA创建三个文件dirA/A1,dirA/A2,dirA/A3

二、文件操作

删除

rm -r a.java 删除当前目录下的a.java文件(每次会询问是否删除y:同意)

强制删除

rm -rf a.java 强制删除当前目录下的a.java文件
rm -rf ./a* 强制删除当前目录下以a开头的所有文件;
rm -rf ./* 强制删除当前目录下所有文件(慎用);

创建文件

touch testFile

递归删除.pyc格式的文件

find . -name '*.pyc' -exec rm -rf {} \;

打印当前文件夹下指定大小的文件

find . -name "*" -size 145800c -print

递归删除指定大小的文件(145800)

find . -name "*" -size 145800c -exec rm -rf {} \;

递归删除指定大小的文件,并打印出来

find . -name "*" -size 145800c -print -exec rm -rf {} \;
  • “.” 表示从当前目录开始递归查找
  • “ -name ‘*.exe’ "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件
  • " -type f "查找的类型为文件
  • “-print” 输出查找的文件目录名
  • -size 145800c 指定文件的大小
  • -exec rm -rf {} ; 递归删除(前面查询出来的结果)

split拆分文件

split命令:可以将一个大文件分割成很多个小文件,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等。

  • b:值为每一输出档案的大小,单位为 byte。
  • -C:每一输出档中,单行的最大 byte 数。
  • -d:使用数字作为后缀。
  • -l:值为每一输出档的行数大小。
  • -a:指定后缀长度(默认为2)。
    使用split命令将上面创建的date.file文件分割成大小为10KB的小文件:
[root@localhost split]# split -b 10k date.file
[root@localhost split]# ls
date.file  xaa  xab  xac  xad  xae  xaf  xag  xah  xai  xaj

文件被分割成多个带有字母的后缀文件,如果想用数字后缀可使用-d参数,同时可以使用-a length来指定后缀的长度:

[root@localhost split]# split -b 10k date.file -d -a 3
[root@localhost split]# ls
date.file  x000  x001  x002  x003  x004  x005  x006  x007  x008  x009

为分割后的文件指定文件名的前缀:

[root@localhost split]# split -b 10k date.file -d -a 3 split_file
[root@localhost split]# ls
date.file  split_file000  split_file001  split_file002  split_file003  split_file004  split_file005  split_file006  split_file007  split_file008  split_file009

使用-l选项根据文件的行数来分割文件,例如把文件分割成每个包含10行的小文件:

split -l 10 date.file

三、文件内容操作

修改文件内容

  • vim a.java:进入一般模式
  • i(按键):进入插入模式(编辑模式)
  • ESC(按键):退出
  • :wq:保存退出(shift+:调起输入框)
  • :q!:不保存退出(shift+:调起输入框)(内容有更改)(强制退出,不保留更改内容)
  • :q:不保存退出(shift+:调起输入框)(没有内容更改)

文件内容的查看

cat a.java   查看a.java文件的最后一页内容;
more a.java从   第一页开始查看a.java文件内容,按回车键一行一行进行查看,按空格键一页一页进行查看,q退出;
less a.java   从第一页开始查看a.java文件内容,按回车键一行一行的看,按空格键一页一页的看,支持使用PageDown和PageUp翻页,q退出。

总结下more和less的区别

  • less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示。
  • less不必读整个文件,加载速度会比more更快。
  • less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容。

实时查看文件后几行(实时查看日志)

tail -f a.java   查看a.java文件的后10行内容;

前后几行查看

head a.java:查看a.java文件的前10行内容;
tail -f a.java:查看a.java文件的后10行内容;
head -n 7 a.java:查看a.java文件的前7行内容;
tail -n 7 a.java:查看a.java文件的后7行内容;

文件内部搜索指定的内容

  • grep under 123.txt:在123.txt文件中搜索under字符串,大小写敏感,显示行;
  • grep -n under 123.txt:在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;
  • grep -v under 123.txt:在123.txt文件中搜索under字符串,大小写敏感,显示没搜索到的行;
  • grep -i under 123.txt:在123.txt文件中搜索under字符串,大小写敏感,显示行;
  • grep -ni under 123.txt:在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;

终止当前操作
Ctrl+c和Ctrl+z都是中断命令,但是作用却不一样。

Ctrl+Z就扮演了类似的角色,将任务中断,但是任务并没有结束,在进程中只是维持挂起的状态,用户可以使用fg/bg操作前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行。

Ctrl+C也扮演类似的角色,强制终端程序的执行。

重定向功能

可以使用 > 或 < 将命令的输出的命令重定向到test.txt文件中(没有则创建一个)

echo 'Hello World' > /root/test.txt

1、grep(检索文件内容)

grep [options] pattern file
  • 全称:Global Regular Expression Print。
  • 作用:查找文件里符合条件的字符串。
// 从test开头文件中,查找含有start的行
grep "start" test*
// 查看包含https的行,并展示前1行(-A),后1行(-B)
grep -A 1 -B 1 "https" wget-log

2、awk(数据统计)

awk [options] 'cmd' file
  • 一次读取一行文本,按输入分隔符进行切片,切成多个组成部分。
  • 将切片直接保存在内建的变量中,$1,$2…($0表示行的全部)。
  • 支持对单个切片的判断,支持循环判断,默认分隔符为空格。
  • -F 指定分隔符(默认为空格)
    1)将email.out进行切分,打印出第1/3列内容
awk '{print $1,$3}' email.out

2)将email.out进行切分,当第1列为tcp,第2列为1的列,全部打印

awk '$1=="tcp" && $2==1{print $0}' email.out

3)在上面的基础上将表头进行打印(NR表头)

awk '($1=="tcp" && $2==1)|| NR==1 {print $0}' email.out

4) 以,为分隔符,切分数据,并打印第二列的内容

awk -F "," '{print $2}' test.txt

5)将日志中第1/3列进行打印,并对第1列的数据进行分类统计

awk '{print $1,$3}' email.out | awk '{count[$1]++} END {for(i in count) print i "\t" count[i]}'

6)根据逗号,切分数据,并将第一列存在文件test01.txt中

awk -F "," '{print $1 >> "test01.txt"}

3、sed(替换文件内容)

sed [option] ‘sed commond’ filename
  • 全名Stream Editor,流编辑器
  • 适合用于对文本行内容进行处理
  • sed commond为正则表达式
  • sed commond中为三个/,分别为源内容,替换后的内容

sed替换标记

g # 表示行内全面替换。
p # 表示打印行。
w # 表示把行写入一个文件。
x # 表示互换模板块中的文本和缓冲区中的文本。
y # 表示把一个字符翻译为另外的字符(但是不用于正则表达式)
\1 # 子串匹配标记
& # 已匹配字符串标记

1)替换解析

sed -i 's/^Str/String/' replace.java

2)将末尾的.替换为;(转义.)

sed -i 's/\.$/\;/'

3)全文将Jack替换为me(g是全部替换,不加只替换首个)

sed -i 's/Jack/me/g/ replace.java

4)删除replace.java中的空格(d是删除)

sed -i '/^ *$/d' replace.java

5)删除包含Interger的行(d是删除)

sed -i '/Interger/d' replace.java

6)多命令一起执行

grep 'input' 123.txt | sed 's/\"//g; s/,/\n/g'

7)替换后将数据保存在文中

grep  123.txt | sed -n 's/\"//gw test01.txt'

4、管道操作符|

可将指令连接起来,前一个指令的输出作为后一个指令的输入

find ~ |grep "test"
find ~                //查找当前用户所有文件
grep "test"            //从文件中

使用管道注意的要点

  • 只处理前一个命令正确输出,不处理错误输出。
  • 右边命令必须能够接收标准输入流,否则传递过程中数据会被抛弃
  • sed,awk,grep,cut,head,top,less,more,c,join,sort,split等
    1)从email.log文件中查询包含error的行
grep 'error' email.log

2)获取到error的行,并取[]含有数字的

grep 'error' email.log | grep -o '\[0-9\]'

3)并过滤掉含有当前进程

ps -ef|grep tomcat |grep -v

4)替换后将数据保存在文中

grep  123.txt | sed -n 's/\"//gw test01.txt'

5)将文件123.txt,按,切分,去除",按:切分后,将第一列存到文件test01.txt中

grep 'input' 123.txt | awk -F ',' '{print $2}' | sed 's/\"//g; s/,/\n/g' | awk -F ":" 

5、cut(数据裁剪)

  • 从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段输出。
  • 也可采用管道输入。
    在这里插入图片描述

文件截取

[root@VM-0-9-centos shell]# cut -d ":" -f 1 cut.txt

管道截取

[root@VM-0-9-centos shell]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin# 按:分割。截取第3列[root@VM-0-9-centos shell]# echo $PATH | cut -d ":" -f 3
/usr/sbin# 按:分割。截取第3列之后数据
[root@VM-0-9-centos shell]# echo $PATH | cut -d ":" -f 3-
/usr/sbin:/usr/bin:/root/bin
[root@VM-0-9-centos shell]#

四、系统日志位置

  • cat /etc/redhat-release:查看操作系统版本
  • /var/log/message:系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
  • /var/log/message:系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一
  • /var/log/secure:与安全相关的日志信息
  • /var/log/maillog:与邮件相关的日志信息
  • /var/log/cron:与定时任务相关的日志信息
  • /var/log/spooler:与UUCP和news设备相关的日志信息
  • /var/log/boot.log:守护进程启动和停止相关的日志消息

查看某文件下的用户操作日志
到达操作的目录下,执行下面的程序:

cat .bash_history

在这里给大家分享一下【云端源想】学习平台,无论你是初学者还是有经验的开发者,这里都有你需要的一切。包含课程视频、知识库、微实战、云实验室、一对一咨询等等,现在功能全部是免费的,点击这里,立即开始你的学习之旅!

五、创建与删除软连接

1、创建软连接

ln -s /usr/local/app /data

注意:创建软连接时,data目录后不加 / (加上后是查找其下一级目录);
在这里插入图片描述

2、删除软连接

rm -rf /data

注意:取消软连接最后没有/,rm -rf 软连接。加上/是删除文件夹;
Description

六、压缩和解压缩

tar
在这里插入图片描述

压缩(-c)

tar -cvf start.tar a.java b.java  //将当前目录下a.java、b.java打包
tar -cvf start.tar ./*     //将当前目录下的所欲文件打包压缩成haha.tar文件tar -zcvf start.tar.gz a.java b.java //将当前目录下a.java、b.java打包
tar -zcvf start.tar.gz ./*    //将当前目录下的所欲文件打包压缩成start.tar.gz文件

解压缩(-x)

tar -xvf start.tar      //解压start.tar压缩包,到当前文件夹下;
tar -xvf start.tar -C usr/local   //(C为大写,中间无空格)
//解压start.tar压缩包,到/usr/local目录下;
tar -zxvf start.tar.gz     //解压start.tar.gz压缩包,到当前文件夹下;
tar -zxvf start.tar.gz -C usr/local  //(C为大写,中间无空格)
//解压start.tar.gz压缩包,到/usr/local目录下;

解压缩tar.xz文件

tar xf node-v12.18.1-linux-x64.tar.xz

unzip/zip

压缩(zip)

zip lib.zip tomcat.jar       //将单个文件压缩(lib.zip)
zip -r lib.zip lib/        //将目录进行压缩(lib.zip)
zip -r lib.zip tomcat-embed.jar xml-aps.jar  //将多个文件压缩为zip文件(lib.zip)

解压缩(unzip)

unzip file1.zip          //解压一个zip格式压缩包
unzip -d /usr/app/com.lydms.english.zip   //将`english.zip`包,解压到指定目录下`/usr/app/`

七、Linux下文件的详细信息

R:Read  w:write  x: execute执行
-rw-r--r-- 1 root root  34942 Jan 19  2018 bootstrap.jar
  • 前三位代表当前用户对文件权限:可以读/可以写/不能执行
  • 中间三位代表当前组的其他用户对当前文件的操作权限:可以读/不能写/不能执行
  • 后三位其他用户对当前文件权限:可以读/不能写/不能执行图片
    在这里插入图片描述

更改文件的权限

chmod u+x web.xml (---x------)  为文件拥有者(user)添加执行权限;
chmod g+x web.xml (------x---)  为文件拥有者所在组(group)添加执行权限;
chmod 111 web.xml  (---x--x--x) 为所有用户分类,添加可执行权限;
chmod 222 web.xml (--w--w--w-)  为所有用户分类,添加可写入权限;
chmod 444 web.xml (-r--r--r--)  为所有用户分类,添加可读取权限;

八、Linux终端命令格式

command [-options] [parameter]

说明:

command :命令名,相应功能的英文单词或单词的缩写
[-options] :选项,可用来对命令进行控制,也可以省略
parameter :传给命令的参数,可以是0个、1个或者多个

查阅命令帮助信息

-help: 显示 command 命令的帮助信息;
-man: 查阅 command 命令的使用手册,man 是 manual 的缩写,是 Linux 提供的一个手册,包含了绝大部分的命令、函数的详细使用。

使用 man 时的操作键
在这里插入图片描述

以上就是一些Linux常用操作命令的介绍,希望对你有所帮助。

虽然这些只是Linux命令的冰山一角,但它们足以让你自如地运用Linux操作系统,记住,每一个命令都有其独特的用途和魅力。掌握了这些命令,你就能更加自如地在Linux世界中遨游。愿你在探索的道路上,发现更多的惊喜和乐趣!

相关文章:

Linux新手村必备!这些常用操作命令你掌握了吗?

在计算机的世界里&#xff0c;Linux操作系统以其强大的功能和灵活性受到了广大程序员和IT爱好者的喜爱。然而&#xff0c;对于初学者来说&#xff0c;Linux的操作命令可能会显得有些复杂和难以理解。 今天&#xff0c;我们就来一起探索一些Linux常用操作命令&#xff0c;让你的…...

ReactNative进阶(三十六):iPad横屏适配

文章目录 一、前言二、实现思路三、延伸阅读四、拓展阅读 一、前言 应用RN技术栈实现APP上线后&#xff0c;业务部门领导会上反馈未实现ipad横屏全屏展示&#xff0c;用户体验较差。由此&#xff0c;一场pad横屏全屏展示的APP调优工作由此开展。 二、实现思路 时间紧任务重&…...

jsx中使用插槽

1. jsx语法中使用插槽 以elementplus ElPopconfirm 为例 <el-popconfirm title"Are you sure to delete this?"><template #reference><el-button>Delete</el-button></template></el-popconfirm>使用 slots: {default: (dat…...

CentOS服务器拒绝SSH登录

当CentOS服务器拒绝SSH登录时&#xff0c;有几个可能的原因和解决方法&#xff1a; 检查网络连接&#xff1a;确保服务器与您的计算机之间的网络连接是正常的。您可以尝试使用其他网络连接或ping服务器以检查是否能够访问。 确认SSH服务正在运行&#xff1a;在服务器上确认SSH…...

React16源码: React中的completeUnitOfWork的源码实现

completeUnitOfWork 1 &#xff09;概述 各种不同类型组件的一个更新过程对应的是在执行 performUnitOfWork 里面的 beginWork 阶段它是去向下遍历一棵 fiber 树的一侧的子节点&#xff0c;然后遍历到叶子节点为止&#xff0c;以及 return 自己 child 的这种方式在 performUni…...

uniapp移动端——企业微信H5调用jssdk实现扫一扫,通过weixin-java-cp获取ticket签名,配置config

背景&#xff1a; 使用企业微信开发扫一扫功能 可信域名验证 (1)企业微信的可信域名需要和企业微信的备案主体一致。 域名备案主体可通过站长工具查看域名备案主体。https://icp.chinaz.com/ 企业微信备案主体可以咨询管理员 &#xff08;2&#xff09;通过nginx配置域名归…...

【前端基础--1】

为后面爬虫打基础 使用Visual Studio Code&#xff08;VS Code&#xff09; https://code.visualstudio.com/#alt-downloads 网页基础 创建一个html网页 新建一个文件 文件名后缀.html 书写网页模板 html:5 回车键&#xff08;或者Tab键&#xff09;英文感叹号! 回…...

E2 Mysql的基本操作和用户权限

一、实验目的: 要求掌握Mysql平台的基本操作和基本的权限管理。 二、实验要求: 1、基本硬件配置:英特尔Pentium III 以上,大于4G内存&#xff1b; 2、软件要求:Mysql&#xff1b; 3、时间:4小时&#xff1b; 4、撰写实验报告并按时提交。 三、实验内容: Group 1: 安装Mys…...

TCP 的三次握手和四次挥手

Java 面试题 TCP 三次握手 第一次握手&#xff1a;客户端向服务端发送SYN包。报文中标志位SYN1&#xff0c;序列号seqx&#xff08;x为随机整数&#xff09;。此时客户端进入了 SYN_SEND 同步已发送状态。 第二次握手&#xff1a;服务端回复客户端SYNACK包。报文中标志位SYN1&…...

mybatisplus做SQL拦截添加自定义排序

前言 工作中写的一段代码&#xff0c;备个份&#xff0c;以后兴许能直接用 功能描述&#xff1a;如果前端传入了排序规则&#xff0c;则优先按传入的字段进行排序&#xff0c;SQL原有的排序规则追加到末尾 注&#xff1a;我们项目里的分页查询&#xff0c;是基于XML的SQL执行的…...

代码随想录算法训练营第29天(回溯算法05 | * 491.递增子序列 * 46.全排列 * 47.全排列 II

回溯算法part05 491.递增子序列解题思路与 90.子集II 不同的点回溯三部曲 46.全排列解题思路遇到的难点思考 47.全排列 II解题思路注意点拓展需要加深理解的点&#xff08;需复习 小总结 491.递增子序列 本题和大家刚做过的90.子集II非常像&#xff0c;但又很不一样&#xff0c…...

mac docker desktop被禁用了,如何使用虚拟机lima运行docker

安装lima brew install lima创建配置 echo "\\ndynamic:\n big-sur:\n image: docker://docker:git\n linux:\n image: docker.io/limasoftware/ubuntu:20.04 \\n" > ~/.lima/default.yaml启动名叫default的虚拟机 limactl start default测试 limactl …...

sublime text 开启vim模式

sublime text 开启vim模式 打开配置文件 mac下点击菜单栏 Sublime Text -> Settings... -> Settings 修改配置文件并保存 添加配置 // 开启vim模式 "ignored_packages": [// "Vintage", ], // 以命令模式打开文件 "vintage_start_in_comman…...

JS词法结构

编程语言的词法结构是一套基础性规则&#xff0c;用来描述如何使用这门语言来编写程序。作为语法的基础&#xff0c;它规定了诸如变量名是什么样的、怎么写注释&#xff0c;以及程序语句之间如何分隔等规则。 2.1程序的文本 JS区分大小写 JS忽略程序记号&#xff08;token&am…...

程序媛的mac修炼手册-- 如何用Python节省WPS会员费

上篇分享了如何用微博爬虫&#xff0c;咱举例爬了女明星江疏影的微博数据。今天就用这些数据&#xff0c;给大家安利一下怎么用Python实现WPS中部分Excel付费功能。 MacOS系统自带的工具&#xff0c;绝大多数都非常顶&#xff0c;除Numbers外。当然&#xff0c;page比起word来&…...

ASP.NET Core NE8实现HTTP Upgrade和HTTP CONNECT代理服务器

看到一个文章[Go] 不到 100 行代码实现一个支持 CONNECT 动词的 HTTP 服务器 在NET8中如何实现 创建项目为MiniApi 编辑Program.cs文件。 var builder WebApplication.CreateSlimBuilder(args);var app builder.Build();// 将HTTP请求通过协议升级机制转为远程TCP请求&…...

apipost和curl收不到服务器响应的HTTP/1.1 404 Not Found

windows的apipost发送请求后&#xff0c;服务器响应了HTTP/1.1 404 Not Found&#xff0c;但是apipost一直显示发送中。 linux上的curl也一样。 使用wireshark抓包发现收到了响应&#xff0c;但是wireshark识别不了&#xff08;图中是回应404后关闭了连接&#xff09;&#xff…...

javascript:计算一个坐标数组的最小值点、最大值点、中心点

作者&#xff1a;CSDN _乐多_ 本文将介绍使用 javascript 语言计算一个坐标数组的最小值点、最大值点、中心点的代码。 文章目录 一、代码 一、代码 function calculateCenterPoint(points) {if (points.length 0) {return null;}let sumX 0;let sumY 0;let sumZ 0;for …...

使用远程工具连接Linux系统——使用Root用户登录

1、启动虚拟机&#xff0c;输入以下命令 进入root用户 sudo su或 su root修改ssh配置文件 vim /etc/ssh/sshd_config找到PermitRootLogin 并用#注释掉当前行 # PermitRootLogin prohibit-password添加&#xff1a; PermitRootLogin yes键入esc输入:wq保存退出 2、重启服…...

JuiceSSH结合内网穿透实现移动端设备公网远程访问Linux虚拟机

文章目录 1. Linux安装cpolar2. 创建公网SSH连接地址3. JuiceSSH公网远程连接4. 固定连接SSH公网地址5. SSH固定地址连接测试 处于内网的虚拟机如何被外网访问呢?如何手机就能访问虚拟机呢? cpolarJuiceSSH 实现手机端远程连接Linux虚拟机(内网穿透,手机端连接Linux虚拟机) …...

06-枚举和模式匹配

上一篇&#xff1a;05-使用结构体构建相关数据 在本章中&#xff0c;我们将介绍枚举。枚举允许你通过枚举其可能的变体来定义一种类型。首先&#xff0c;我们将定义并使用一个枚举&#xff0c;以展示枚举如何与数据一起编码意义。接下来&#xff0c;我们将探索一个特别有用的枚…...

【C/C++】C/C++编程——C++ 开发环境搭建

C的开发环境种类繁多&#xff0c;以下是一些常见的C 集成开发环境&#xff1a; AppCode &#xff1a;构建与JetBrains’ IntelliJ IDEA 平台上的用于Objective-C&#xff0c;C,C&#xff0c;Java和Java开发的集成开发环境CLion&#xff1a;来自JetBrains的跨平台的C/C的集成开…...

Go 接口

接口概览 接口大概理解 接口类型是队其他类型行为的概括与抽象 接口类型中&#xff0c;包含函数声明&#xff0c;但没有数据变量接口的作用通过使用接口&#xff0c;可以写出更加灵活和通用的函数&#xff0c;这些函数不用绑定在一个特定的类型实现上Go 接口特征 很多面向对象…...

用 AI 将自拍照 P 进不同艺术作品,谷歌发布「艺术自拍 2」

1 月 24 日消息&#xff0c;谷歌旗下「艺术与文化」应用今日宣布&#xff0c;2018 年推出的「艺术自拍」功能在时隔近六年后&#xff0c;借助生成式 AI 的力量回归。官方表示&#xff0c;「艺术自拍 2」将再次使用户与艺术面对面&#xff0c;重新探访世界各地的艺术、历史和文化…...

SpringSecurity+OAuth2.0 搭建认证中心和资源服务中心

目录 1. OAuth2.0 简介 2. 代码搭建 2.1 认证中心&#xff08;8080端口&#xff09; 2.2 资源服务中心&#xff08;8081端口&#xff09; 3. 测试结果 1. OAuth2.0 简介 OAuth 2.0&#xff08;开放授权 2.0&#xff09;是一个开放标准&#xff0c;用于授权第三方应用程序…...

c# 策略模式

在 C# 中&#xff0c;策略模式是一种行为型设计模式&#xff0c;它定义了一系列算法&#xff0c;并将每个算法封装到具有公共接口的独立类中&#xff0c;使得它们可以互相替换。这样可以使得算法的选择独立于算法的使用者&#xff0c;从而提高了灵活性和可维护性。 以下是策略…...

消息队列RabbitMQ.03.死信交换机的讲解与使用

目录 一、死信队列(延迟队列) 概念讲解 二、确认消息&#xff08;局部方法处理消息&#xff09; 三、代码实战 1.编写生产者代码&#xff0c;配置消息、直连交换机、路由键 1.1代码解析&#xff1a; 2.配置消费者接受类接受直连交换机的路由键 2.1. String msg&#xff…...

人工智能原理实验4(2)——贝叶斯、决策求解汽车评估数据集

&#x1f9e1;&#x1f9e1;实验内容&#x1f9e1;&#x1f9e1; 汽车数据集 车子具有 buying,maint,doors,persons,lug_boot and safety六种属性&#xff0c;而车子的好坏分为uncc,ucc,good and vgood四种。 &#x1f9e1;&#x1f9e1;贝叶斯求解&#x1f9e1;&#x1f9e1;…...

算力网络:未来计算资源的驱动力

文章目录 前言一、算力网络的基本概况(一)算力网络的基本概念(二)算力网络研究进展二、运营商的算力网络架构(一)算力网络基础设施构成(二)算力网络编排管理(三)能力开放三、算力网络的优势(一)弹性计算(二)降低成本(三)去中心化四、算力网络的应用场景(一)人…...

java动态导入excel按照表头生成数据库表

1、创建接口接收文件 //controller层 PostMapping("/importExcel1")public void importExcel1(HttpServletRequest request, MultipartFile file) {try {waterMeterService.importExcel1(request,file);} catch (Exception e) {throw new RuntimeException(e);}}//se…...