2.Linux系统及常用命令

目录

一、Linux文件系统和目录

1.1 Linux文件系统

1.2Linux主要目录

二、Linux远程连接

2.1前置条件

2.2 具体远程操作

三、Linux的常用命令

3.1 Linux命令的格式

3.2 Linux命令的帮助信息查看

3.3 Linux文件操作常用命令

命令中快捷键

以管理员权限执行命令

3.3.1 查看目录内容:ls

3.3.2 切换目录:cd

3.3.3 创建文件:touch

3.3.4 创建目录:mkdir

3.3.5 删除文件或目录:rm

3.3.6 文件或目录的复制:cp

3.3.7 文件或目录的移动/重命名:mv

3.3.8 查看文件:cat、more、grep

3.3.9 重定向:>和>>

3.3.10 管道符:|

3.3.11 其他命令:pwd、clear、which、history

3.3.12 回显:echo

3.4 Linux信息系统常用命令

3.4.1 重启:reboot和关机:shutdown

3.4.2 查看系统进程:ps

3.4.3 实时查看系统的进程信息:top

3.4.4 关闭进程:kill

3.4.5 查看系统监听端口:netstat

3.4.6 查看系统监听端口:lsof

3.4.7 查看日志:head、tail

3.5 Linux用户权限和管理

3.5.1 权限的基本概念

3.5.2 修改用户权限:chmod

3.5.3 新增账户:useradd

3.5.4 查看当前登录账户:who

3.5.5 删除用户:userdel

3.5.6 切换用户:su

3.5.7 设置用户密码:passwd

3.5.8 退出登录的用户:exit


一、Linux文件系统和目录

1.1 Linux文件系统

Linux是树形结构的文件系统,其中/是系统的根目录,其他所有目录都是它的子节点。

1.2Linux主要目录

目录介绍:

/:根目录,唯一

/home :用户目录

/root :系统管理员root目录

/usr:应用程序

/etc:系统配置

/boot:内核文件

/tmp:临时文件

/bin:放命令、工具

二、Linux远程连接

2.1前置条件

1.远程连接Linux服务器之前,必须要知道Linux服务器的IP地址,以及SSH的端口(默认∶22)(一般由服务器管理人员提供)

可通过ifconfig命令查看ip地址,netstat -anoptlgrep sshd查看ssh的端口

2.确定ip地址是否可以ping通(在本地电脑进行ping命令操作)

ping ip地址

2.2 具体远程操作

以xshell软件连接工具为例,进行Linux远程操作

1.进入xshell页面,在文件中点击新建

2.输入名称和主机信息,点击确定。名称可随意输入,主机为服务器ip地址

3.配置用户身份验证信息,即服务器的用户名和密码

4.点击确定,完成连接

三、Linux的常用命令

3.1 Linux命令的格式

格式:command [-options] [parameter]

command:表示的是命令的名称

[] :表示是可选的,可有可无。

[-options]:表示的是命令的选项,可有一个或多个,也可以没有

[parameter]:表示的是命令的参数,可以有一个或多个,也可以没有

3.2 Linux命令的帮助信息查看

1.通过--help查看命令的帮助信息:查看的帮助信息相对比较简洁

格式: command(命令的名称) --help 例: ls --help

2.通过man命令查看帮助信息:man命令查看的帮助信息会更加的详细。

格式: man command(命令的名称)

常用的快捷键操作:

  • 空格键:显示手册的下一页

  • Enter键:滚动显示手册的下一行

  • B键:显示上一页

  • F键:显示下一页

  • /word:可以搜索对应的关键字(word)

  • Q键:退出man命令显示模式

例:man ls

3.3 Linux文件操作常用命令

命令中快捷键

  • ctrl+a:句首

  • ctrl+e:句尾

  • ctrl+c:中断

以管理员权限执行命令

在命令前加sodu,如:

sudo copy 1.txt 2.txt

3.3.1 查看目录内容:ls

ls

命令格式:ls [-lah(选项)] [文件或目录]

ls参数说明:

  • -l:以列表方式详细显示内容信息

  • -a:显示所有文件,包含隐藏文件及目录

  • -h:配合-l显示出文件的大小

ls#列举当前目录的文件内容
ls -l
ls -a
ls -lh # h一定要和l—起使用
ls -lha #以列表方式,更加人性化,显示所有文件
ls -lha /usr/bin #查看/usr/bin文件夹里面的内容

通配符:可以匹配符合条件的文件或者目录。

*∶表示匹配O到多个任意字符

?︰表示匹配单个任意字符

[abcd]:表示匹配括号内(a、b、c、d中的)任意的一个字符

[a-d] : a-d表示的是从a到d的范围,也就是a、b、c、d.从中匹配任意一个字符。

3.3.2 切换目录:cd

cd

命令格式: cd [目录名称]

cd命令说明:

  • cd或者cd ~:切换到当前用户的主目录(/home/用户目录)

  • cd . 切换到当前目录

  • cd .. 切换到上一级目录

  • cd - 切换到上一次所在的目录

  • 注意:文件及目录名称区分大小写

绝对路径:以根路径或家路径开头,表示从根目录/家目录 开始的具体目录位置

相对路径:不以根路径或者家目录开头,表示相对当前目录所在的目录位置

现在在/usr/ bin下

  • cd /home 先找/,进入/后,找home

  • cd home 在当前路径下,找home

3.3.3 创建文件:touch

touch

命令格式: touch 文件名 (多个文件名之间用空格隔开)

  • 如果创建的文件名不存在,则新建一个文件

  • 如果创建的文件名已存在,则更新文件的修改时间

3.3.4 创建目录:mkdir

mkdir

命令格式: mkdir [-ifr(选项)] 目录名称 (多个目录之间用空格隔开)

  • 通过-p的选项,实现多个层级的目录创录

    • 例: mkdir -p dir1/dir2/dir3

  • 如果创建的目录名称已存在,则创建失败

  • mkdir mike:在当前路径下,新建mike文件夹

  • mkdir /mike:在根路径下,新建mike文件夹

3.3.5 删除文件或目录:rm

rm

命令格式: rm [-ifr(选项)] 目录名或文件名 选项参数说明:

  • -i:表示交互式执行,删除前会询问是否删除。

  • -f :表示强制删除,忽略不存在的文件,无需提示。

  • -r :表示删除文件夹及文件夹下所有的内容。

注意:使用rm删除文件时无法恢复,建议使用rm时跟上-i参数

3.3.6 文件或目录的复制:cp

cp

命令格式: cp [-ifr(选项)] 源文件 目标文件 选项说明:

  • -f :强制覆盖已存在的文件而不提示

  • -i ︰覆盖已存在的文件时,会提示用户是否确认。

  • -r︰复制目录及目录下所有的内容时,必须带上-r参数

  • -v:显示复制的进度(一般不用)

3.3.7 文件或目录的移动/重命名:mv

mv

命令格式: mv [-ifr(选项)] 源文件 目标文件 选项说明:

  • -f:强制覆盖已存在的目标文件而不提示

  • -i:覆盖文件时提示用户是否确认

  • -v:显示移动é进度(一般不用)

3.3.8 查看文件:cat、more、grep

cat、more、grep

  1. cat文件名:适用于查看较少内容的文件,可以用来查看文件、创建文件、合并文件、追加文件等功能

    命令格式: cat [-ifr(选项)] 文件名 命令说明: 1、cat可以用来查看文件、创建文件、合并文件及追加文件

    2、cat查看文件时会一次显示所有内容,适用于内容较少的文件

    常用选项说明:

    • -b:对非空行输出行编号

    • -n :对所有行输出行编号

  2. more文件名:适用于查看内容较多的文件,用于分屏显示文件内容

    命令格式: more 文件名 命令说明: 1、 more命令用于分屏显示文件内容,每次显示一页内容

    2、适用于查看文件内容较多的文件

    more操作键说明:

    • 空格键:显示文件的下一页内容

    • Enter键:滚动显示文件下一行内容

    • b:显示文件的上一页内容(回滚上一页)

    • f :显示文件的下一页内容

    • q:退出

  3. grep文件名:适用于查看内容较多的文件

    命令格式: grep '关键字’ 文件名

    常用选项:

    • -v :显示不包含匹配文本的所有行(取反)

    • -n :显示匹配的行及行号

    • -i:忽略大小写

    grep正则表达式

    • '^a':表示搜索的文件内容行是以a开头的行。例如:grep -n '^a' 1.txt

    • 'ke$:表示搜索的文件内容行是以ke结尾的行。例如:grep -n 'ke$' 1.txt

    • [Ss]igna[Ll]J:匹配[]中的任意一个字符,搜寻匹配单词为SignaL、Signal、signaL、signal的行;

    grep -n '[Ss ]igna[Ll]'test.txt

3.3.9 重定向:>和>>

>>>

将命令输出的结果写入到(重定向)到另外的文件当中。

>:将命令输出的结果覆盖到对应的文件当中,会覆盖文件中原有内容

>>︰将命令输出的结果追加到对应的文件当中,不会覆盖文件中原有的内容.

cat 1.txt > 2.txt       将1.txt的内容覆盖掉2.txt的内容
cat 1.txt >>2.txt       追加1.txt文件到2.txt后面
cat 1.txt 2.txt > 3.txt     将1.txt和2.txt的内容合并到3.txt文件当中
ls -l > 2.txt       将ls -l查看到的内容覆盖掉2.txt

3.3.10 管道符:|

|:Linux允许将一个命令的输出结果可以通过管道做为另一个命令的输入

常用的管道命令:

  • more :分屏显示执行结果

  • grep:通过grep过滤执行结果的内容

例1:ls -l /usr/bin I more 例2:ls /usr/bin I grep '^au' ls /usr/bin显示的内容,放入管道管道的另一边,只取出au开头的内容

3.3.11 其他命令:pwd、clear、which、history

pwd:查看当前目录的路径

clear:清屏

which 工具名称:查找工具安装的位置

history:查看之前运行过的命令

3.3.12 回显:echo

也可通过回显编辑、删除文件

echo ' ' > /var/log/messages    通过重定向命令删除/var/log/messages文件中的内容。

3.4 Linux信息系统常用命令

3.4.1 重启:reboot和关机:shutdown

重启命令: reboot

关机命令: shutdown

  • 对应的选项:shutdown -r now表示重启时,会给其他用户发送提示信息

  • shutdown -h now表示立刻关机

  • shutdown -h 20:25表示定时关机,晚上8:25定时关机

  • shutdown -h +10表示从当时再往后十分钟进行关机

3.4.2 查看系统进程:ps

ps

命令格式: ps -aux | grep '关键字"

选项说明:

  • -a选项:显示所有用户的进程

  • -u选项:显示进程的详细状态

  • -x选项:显示没有控制终端进程

—般会结合grep及管道符去查找特定的进程信息

另一种写法: ps -ef l grep 'sedispatch’(苹果电脑用此方法)

3.4.3 实时查看系统的进程信息:top

top

命令格式: top

快捷键(在进程展示时使用):

M(按shift+m) 可以按内存的使用率降序排列显示进程的信息。

P(按shift+p) 可以按cpu的使用率降序排列显示进程的信息

3.4.4 关闭进程:kill

kill

命令格式: kill -9进程ID

进程id一般会通过ps命令去查看到。

-9表示的是强制的关闭对应的进程。

注意∶需要注意当前执行操作的用户,普通用户不能关闭其他用户的进程,只能关闭自己打开的进程

3.4.5 查看系统监听端口:netstat

netstat

命令格式:netstat [-anptu] l grep '关键字' (一般不用root用户操作)

选项说明:

  • -a 选项:查看所有已打开的端口

  • -n选项:以数字方式显示已打开的端口,不显示别名

    (http:80 https:443 mysql:3306 ssh:22 )

  • -p选项:显示对应的进程的PID

  • -t选项:显示出tcp协议的端口

  • -u选项:显示出udp协议的端口

例子:

查看当前系统中已打开的TCP协议端口:netstat -anpt

查看当前系统中是否已打开3306的端口:netstat -anptu | grep '3306'

查看当前系统中是否已打开http的服务:netstat -aptu | grep 'http'

mac: netstat -anp tcp

3.4.6 查看系统监听端口:lsof

lsof

命令格式: lsof -i (root用户操作)

  • -i:表示查看所有已打开的进程的端口

    • lsof -i:端口号 表示查看特定的端口是否已打开。

例子:查看系统所有已打开的进程端口: lsof -i

查看系统中3306的端口是否已打开: lsof -i:3306

查看系统中http的服务端口是否已打开: lsof -i:8o

使用场景:

  • 当我们去启动某个应用程序时,该应用程序的端口有可能被其他程序所占用。

  • 那么此时就可以通过netstat 或者lsof查看对应的端口被谁占用了。

  • 然后关闭对应的进程,重新启动要启动的应用程序即可。

3.4.7 查看日志:head、tail

日志定义:就一个一个普通的文本文件,文件里写的是软件运行过程的信息 如果软件出问题,在日志文件找错误原因

head

命令格式: head 文件名

命令说明:

  • 默认显示日志文件前10行内容.

  • head -20文件名:显示日志文件的前20行内容

tail

命令格式: tail文件

命令说明:

默认显示日志文件最后10行内容

  • tail -15文件名:显示日志文件最后15行内容

  • tail -f 文件名:实时显示日志的文件信息(最常用)

工作中的使用场景:

当测试发现问题时,需要去查看后台的日志信息,具体操作步骤:

  • 通过tail -f日志文件名(实时打开对应的日志文件并查看)

  • 操作系统复现对应的问题(此时会将操作中出现错误的日志信息打印到tail -f 的查看窗口中)

3.5 Linux用户权限和管理

3.5.1 权限的基本概念

Linux系统中文件和目录的权限

权限英文缩写数字代码
readr4
writew3
执行executex1
无权限-0

图片从左往右,依次为:文件类型文件权限、连接数、所属用户、所属组、文件大小、文件最新修改日期、文件名

对应文件权限

3.5.2 修改用户权限:chmod

chomd

字母法(不常用)

命令格式:chmod [用户选项][设置选项][权限] [文件名]

用户选项:

  • u︰表示的是所属的用户

  • g:表示的是所属的用户组

  • o∶表示的是其他用户

  • a :表示的是所有的用户

设置选项:

  • +表示增加权限

  • -:表示撤消权限

  • =:表示设置权限

例子:

  • chmod u+w 1.txt 表示对当前目录下的1.txt文件的当前用户增加写的权限

  • chmod g-x 1.txt 表示对当前目录下的1.txt文件撤消用户组的执行权限

  • chmod o=rwx 1.txt 表示对当前目录下的1.txt文件的其他用户权限设置为可读可写可执行

  • chmod u+x,g-w,o+r 1.txt 表示对当前目录下的1.txt文件的当前用户增加执行的权限,撤销用户组写的权限,其他用户增加读的权限

数字法(常用)

命令格式:chmod [用户权限数字相加值][用户组权限数字相加值][其他用户权限数字相加值] [文件名]

r:4

w:2

e:1

例:

chmod 756 1.txt 表示对当前目录下的1.txt文件,用户给予(4+2+1)读写执行的权限,用户组给予(4+1)读执行的权限,其他用户给予(4+2)读写的权限

3.5.3 新增账户:useradd

useradd

命令格式: useradd -[选项] 用户名

命令说明:

useradd admin123:创建一个普通账户admin123

useradd -g root admin2:创建用户admin2,并指定用户的组为root

3.5.4 查看当前登录账户:who

who

命令格式: who

3.5.5 删除用户:userdel

userdel

命令格式:userdel -[选项] 用户名

  • -r:删除用户及目录

3.5.6 切换用户:su

su

命令格式: su - 或 su 用户名

su -:切换到root用户

su用户名:切换到指定用户下

注意:由普通用户切换到其他用户时,需要输入密码

3.5.7 设置用户密码:passwd

passwd

命令格式:passwd 用户名

passwd :用于设置当前用户的密码

passwd 用户名: 用于设置指定用户的密码(执行命令的用户必须为root,若不为root用户,则在命令前加sudo)

3.5.8 退出登录的用户:exit

exit

命令格式:exit

如果是图形界面,退出当前终端。

如果是使用ssh远程登录,退出登陆账户。

如果是切换后的登陆用户,退出则返回上一个登陆账号。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

java协同过滤算法 springboot+vue游戏推荐系统

随着人们生活质量的不断提高以及个人电脑和网络的普及,人们的业余生活质量要求也在不断提高,选择一款好玩,精美,画面和音质,品质优良的休闲游戏已经成为一种流行的休闲方式。可以说在人们的日常生活中,除了…

IDEA中的Postman?完全免费!

Postman是大家最常用的API调试工具,那么有没有一种方法可以不用手动写入接口到Postman,即可进行接口调试操作?今天给大家推荐一款IDEA插件:Apipost Helper,写完代码就可以调试接口并一键生成接口文档!而且还…

微机原理_4

一、单项选择题(本大题共 15 小题,每小题 3 分,共 45 分。在每小题给出的四个备选项中,选出一个正确的答案,请将选定的答案填涂在答题纸的相应位置上。) 1在产品研制的过程中,通常采用( )类型的存储芯片来存放待调试的…

GEE:众数滤波

作者:CSDN @ _养乐多_ 在本文中,我们将介绍如何使用Google Earth Engine(GEE)平台对遥感影像进行众数滤波处理。并以众数滤波平滑NDVI图像为示例,演示众数滤波整个过程。 结果如下图所示, 文章目录 一、众数滤波二、完整代码三、代码链接一、众数滤波 众数滤波是一种图…

运维高级-day01

shell回顾 1、快速生成版权控制信息,具体的内容自己替换 [root scripts]# cat ~/.vimrc autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()" func SetTitle() if expand("%:e") sh call setline(1,"#!/bin/bash")…

分布式定时任务系列6:XXL-job触发日志过大引发的CPU告警

传送门 分布式定时任务系列1:XXL-job安装 分布式定时任务系列2:XXL-job使用 分布式定时任务系列3:任务执行引擎设计 分布式定时任务系列4:任务执行引擎设计续 分布式定时任务系列5:XXL-job中blockingQueue的应用 …

js无法请求后端接口,别的都可以?

在每个接口的控制器中加入以下代码即可: header(Access-Control-Allow-Methods:*); header("Access-Control-Allow-Origin:*"); 如果嫌麻烦可以添加在api初始函数里面

独乐乐不如众乐乐(二)-某汽车零部件厂商IC EMC企业规范

前言:该汽车零部件厂商关于IC EMC的规范可能是小编看过的企业标准里要求最明确的一份企业标准了,充分说明了标准方法不是死的,可以灵活应用。 先看看这份规范的抬头: 与其他企业规范一样,该汽车零部件厂商的IC EMC规范…

OSG粒子系统与阴影-自定义粒子系统示例<2>(5)

自定义粒子系统示例(二) 目前自定义粒子的方法有很多,在OSG 中使用的是 Billboard 技术与色彩融合技术。色彩融合是一种高级的渲染技术,如果读者有兴趣,可参看 OSG 粒子系统实现的源代码。这里采用简单的布告牌技术(osg::Billboard)与动画来实…

Canvas艺术之旅:探索锚点抠图的无限可能

说在前面 在日常的图片处理中,我们经常会遇到需要抠图的情况,无论是为了美化照片、制作海报,还是进行图片合成。抠图对于我们来说也是一种很常用的功能了,今天就让我们一起来看下怎么使用canvas来实现一个锚点抠图功能。 效果展示…

Int8量化算子在移动端CPU的性能优化

本文介绍了Depthwise Convolution 的Int8算子在移动端CPU上的性能优化方案。ARM架构的升级和相应指令集的更新不断提高移动端各算子的性能上限,结合数据重排和Sdot指令能给DepthwiseConv量化算子的性能带来较大提升。 背景 MNN对ConvolutionDepthwise Int8量化算子在…

鸿蒙开发报错:agconnect sdk not initialized. please call initialize()【BUG已解决】

文章目录 项目场景:问题描述原因分析:解决方案:总结:项目场景: 鸿蒙开发报错: agconnect sdk not initialized. please call initialize() 问题描述 报错内容为: 10-25 11:41:01.152 6076-16676 E A0c0d0/JSApp: app Log: 数据查询失败: {“code”:1100001,“messag…

【经典小练习】输出文件路径名

文章目录 🌹问题✨思路🍔代码🛸读取文件,并把文件名保存到文件中 对指定目录下的所有 Java 文件进行编译、打包等处理; 查找指定目录下所有包含特定字符串的 Java 文件; 统计指定目录下所有 Java 文件的行数…

@ResponseBody详解

ResponseBody() 作用: responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据。 位置: ResponseBody是作用在方法上的&…

Task.Run为什么会存在内存泄漏的风险?

由于值类型是拷贝方式的赋值,捕获的本地变量和类成员是指向各自的值,对本地变量的捕获不会影响到整个类。但如果把类中的值类型改为引用类型,那这两者最终指向的是同一个对象值,这是否意味着使用本地变量还是无法避免内存泄漏&…

个人测试用例以及测试金句分享

📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 ☁️测试必背金句 界面易用可双安&…

微软 Edge 浏览器目前无法支持 avif 格式

avif 格式在微软 Edge 浏览器中还是没有办法支持。 如果你希望能够查看 avif 格式,那么只能通过浏览器打开,然后浏览器将会把这个文件格式下载到本地。 avif 格式已经在其他的浏览器上得到了广泛的支持,目前不支持的可能就只有 Edge 浏览器。…

【尚跑】2023宝鸡马拉松安全完赛,顺利PB达成

1、赛事背景 千年宝地,一马当先!10月15日7时30分,吉利银河2023宝鸡马拉松在宝鸡市行政中心广场鸣枪开跑。 不可忽视的是,这次赛事的卓越之处不仅在于规模和参与人数,还在于其精心的策划和细致入微的组织。为了确保每位…

第一百八十回 介绍两种阴影效果

文章目录 1. 概念介绍2. 实现方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"自定义SlideImageSwitch组件"相关的内容,本章回中将介绍两种阴影效果.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们在…
最新文章