侧边栏壁纸
博主头像
CoderKui

坐中静,舍中得,事上练

  • 累计撰写 51 篇文章
  • 累计创建 69 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

Linux命令快速上手

CoderKui
2022-01-12 / 0 评论 / 0 点赞 / 350 阅读 / 4,401 字 / 正在检测是否收录...

LinuxLearing

为什么需要学习Linux终端命令

  • linux初期没有图形界面,系统管理需要通过命令
  • 实际工作中,常用SSH通过命令控制服务器

技巧:

无需死记,多用即可

常用Linux命令快速上手

序号 命令 对应英文 作用
01 ls list 查看当前文件夹下的内容
02 pwd print work directory 查看当前所在文件夹
03 cd [目录名] change directory 切换文件夹
04 touch [文件名] touch 如果文件不存在,新建文件
05 mkdir [目录名] make directory 创建目录
06 rm [文件名] remove 删除指定的文件名
07 clear clear 清屏

终端命令格式

command [-options] [parameter]

  • command: 命令名
  • -options: 选项,可以对命令进行控制,也可以省略
  • parameter: 传递给命令的参数,可以是0个、1个或多个

查询命令帮助信息

  • –help

    ls --help
    
  • man

    man ls
    

终端使用技巧

  • tab可以自动补全命令/文件名
  • 上/下键选择历史命令
  • ctrl + c 退出执行当前命令

一、文件和目录

1.Linux文件目录结构

Linux没有传统windows中盘符的概念,只有一个根目录/,所有文件都在它下面

常用目录:

  • /: 根目录,所有文件都从这里开始,根目录下一般只存放目录
  • /bin、/usr/bin: 存放可执行二进制文件的目录,比如常用命令ls、mv、cat的二进制文件
  • /dev: 存放系统下的设备文件,访问这个目录下的文件就相当于访问某个设备
  • /etc:: 存放系统配置文件的目录
  • /boot: 存放linux启动时用到的一些文件,例如内核/boot/vmlinuz,引导管理/boot/grub
  • /home: 系统默认的用户家目录,新增用户账号时会在家目录下新建一个用户目录
  • /root: 系统管理员的家目录
  • /lib、/usr/lib、/usr/local/lib: 存放系统使用的函数库
  • /lost+fount: 系统异常发生错误时,存放遗失的片段
  • /opt: 主机额外安装软件的存放目录
  • /proc: 此目录的数据都在内存中,不占用磁盘空间,是比较重要的文件(系统核心、外部设备、网络状态等)

2.ls命令说明

ls:查看当前文件夹下的内容

Linux文件目录特点:

  • 以.开头的文件为隐藏文件,需要-a参数才能显示
  • .代表当前目录
  • …代表上一级目录

ls常用参数:

参数 含义
-a 显示指定目录下的所有文件和目录,包括隐藏文件
-l 以列表方式显示文件的详细信息
-h 配合-l以人性化的方式显示文件大小

ls搭配通配符使用:

通配符 含义
* 代表任意个数个字符
代表任意一个字符,至少1个
[] 表示可以匹配字符组中的任一一个
[abc] 匹配a、b、c中的任意一个
[a-f] 匹配从a到f范围内的任意一个字符

注:通配符可搭配使用

3.cd命令说明

cd:切换文件目录

命令 含义
cd 切换到当前用户的主目录(/home/用户目录)
cd ~ 切换到当前用户的主目录(/home/用户目录)
cd . 保持在当前目录不变
cd … 切换到上级目录
cd - 可以在最近两次工作目录之间来回切换

注:Linux中目录和文件均区分大小写

相对路径和绝对路径:

  • 相对路径在输入时,最前面不是 / 或 ~ ,表示当前目录所在的目录位置
  • 绝对路径在输入时,最前面时 / 或 ~,表示从根目录/家目录开始的具体目录位置

4.创建和删除操作

4.1 touch

  • 创建文件或修改文件时间
    • 如果文件不存在,可以创建一个空白文件
    • 如果文件已经存在,可以修改文件的末次修改日期

4.2 mkdir

  • 创建一个新的目录
  • 常用选项 -p ,可以递归创建目录

4.3 rm

  • 删除文件或目录

注:使用rm需小心,删除后不可恢复

  • 参数 -f强制删除,忽略不存在的文件,无需提示
  • 参数 -r递归删除目录下的内容,删除文件夹时必须加此参数

5.拷贝和移动文件

序号 命令 对应英文 作用
01 tree [目录名] tree 以树状图列出文件目录结构
02 cp 源文件 目标文件 copy 复制文件或目录
03 mv 源文件 目标文件 move 移动文件或目录 / 重命名文件或目录

cp命令常用选项:

  • **-i:**覆盖文件前给出提示是否进行覆盖
  • **-r:**若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名

mv命令常用选项:

  • **-i:**覆盖文件前给出提示是否进行覆盖

6.查看文件内容

序号 命令 对应英文 作用
01 cat 文件名 concatenate 查看文件内容、创建文件、文件合并、追加文件内容等功能
02 more 文件名 more 分屏显示文件内容
03 grep 搜索文本文件名 grep 搜索文本文件内容

6.1 cat

  • cat命令可以用来查看文件内容、创建文件、文件合并、追加文件内容等功能
  • cat会一次显示所有的内容,适合查看内容较少的文件

常用选项:

  • -b:对非空输出行编号
  • -n:对输出的所有行编号

注:Linux中有个 nl 命令等价于 cat -b

6.2 grep

  • grep命令是Linux系统中一种强大的文本搜索工具
  • grep支持正则表达式
选项 含义
-n 显示匹配行及行号
-v 显示不包含匹配文本的所有行(相当于取反)
-i 忽略大小写

常用两种正则:

  • ^kui: 行首,搜寻以kui开头的行
  • kui$: 行尾,搜寻以kui结束的行

7.其它关键命令

7.1 echo 文字内容

  • echo会在终端中显示参数指定的文字,通常会和重定向联合使用

7.2 重定向 > 和 >>

  • Linux运行将命令执行结果重定向到一个文件
  • 将本应显示在终端上的内容 输出/追加 到指定文件中

其中:

  • > 表示输出,会覆盖文件原有的内容
  • >> 表示追加,会将内容追加到已有文件的末尾

7.3 管道 |

  • Linux允许将一个命令的输出通过管道作为另一个命令的输入
  • 可以理解为|的左右两端,左端输入东西,右端读取东西

常配合管道使用的命令:

  • more:分屏显示内容
  • grep:在命令执行结果的基础上查询指定的文本

二、远程管理常用命令

1.关机/重启

命令 对应英文 作用
shutdown 选项 时间 shutdown 关机/重启
  • 参数 -r 表示重启
  • 不指定选项和参数,默认1分钟后关闭电脑
  • 远程维护服务器时,最好不要关闭系统,而应选择重启系统

常用命令示例:

  • 重启系统:shutdown -r now
  • 立刻关机:shutdown now
  • 指定在今天21:30关机:shutdown 21:30
  • 系统在过10分钟后关机:shutdown +10

2.查看或配置网卡信息

序号 命令 对应英文 作用
01 ifconfig configure a network interface 查看/配置计算机网卡配置信息
02 ping 目标ip地址 ping 检测到目标ip地址的连接是否正常

常用命令示例:

  • 查看网卡配置信息:ifconfig
  • 查看网卡对应的ip地址:ifconfig | grep inet
  • 检测到目标主机是否连接正常:ping 目标ip地址
  • 检测本地网卡是否工作正常:ping 127.0.0.1

ping一般用于检测当前计算机与目标计算机之间的网络连接是否畅通

原理:网络上的机器都有唯一确定的ip地址,我们给目标ip地址发送一个数据包,对方就要返回一个数据包,根据返回数据包以及时间,可以确定目标主机的存在。

3.远程登录和复制文件

序号 命令 对应英文 作用
01 ssh 用户名@ip secure shell 远程连接目标主机
02 scp 用户名@ip:文件名或路径 用户名@ip:文件名或路径 secure copy 远程复制文件

Linux中SSH非常常用,通过SSH可以远程连接到目标服务器

SSH的特点:

  • 安全的传输协议
    • 数据传输加密,防止信息泄漏
    • 防止DNS欺骗和IP欺骗
  • 快速的传输协议
    • 数据经过压缩,传输速度快

关于域名、IP地址和端口的概念:

  • 域名: 一串用点分割的名字组成,例如www.baidu.com,是ip的别名,方便用户记忆
  • IP地址: ipv4使用32位(4字节)表示地址,通常用点分制表示,例如192.0.2.235
  • 端口: ip地址可以确定一台网络设备,而端口号确定这台网络设备上的应用程序

常见端口号:

序号 服务 端口号
01 SSH服务 22
02 Web服务 80
03 HTTPS 443
04 FTP服务 21

注:SSH的默认端口号为22,如果使用的是默认端口号,在连接时可以省略

3.1 SSH简单使用

命令格式:ssh [-p port] user@remote

  • port是远程连接的端口,如果不指定,默认为22
  • user是远程连接的用户名
  • remote是远程机器的地址,可以是IP地址或域名

注:

  • 在远程连接目标服务器后,可以通过exit命令退出
  • ssh仅能在Linux或Unix系统中使用
  • windows可以安装PuTTY或XShell客户端
  • 实际工作中,端口一般不是22,需要手动指定port选项

3.2 SCP简单使用

命令格式:scp 用户名@ip:文件路径 用户名@ip:文件路径

  • 选项 -r :递归复制该目录下的所有目录和文件
  • 选项 -P :若远程SSH端口不是22,则需要使用大写字母-P指定端口

注:

  • scp仅能在Linux或Unix系统中使用
  • windows中可以安装FileZilla进行文件传输

三、用户权限相关命令

相关基本概念:

  • 用户:Linux中不论登录本机还是远程服务器,都需要使用一个用户账号
  • Linux用户管理包括用户和组的管理,组是多个用户的集合,对该集合内的用户进行统一管理
  • Linux中不同用户对不同资源有不同的管理/使用权限

常见权限:

序号 权限 英文 缩写 数字代号
01 read r 4
02 write w 2
03 执行 excute x 1

ls -l 命令的详解:

以列表方式显示文件,从左到右依次为:

  • 权限:第一个字符为d表示为目录,后续9个字符每3个为一组,分别表示文件拥有者、文件所在组和其他用户的权限
  • 硬链接数量:通俗的讲,就是有多少种方式,可以访问当前文件/目录
  • 拥有者
  • 文件大小
  • 文件最后修改时间
  • 文件名称

1. chmod简单使用

chmod可以修改 用户/组 对 文件/目录 的权限

命令格式:chmod +/- rwx 文件名|目录名

2.超级用户

  • Linux中root账号用于系统的维护和管理,对系统所有资源具有操作权限
  • 不推荐直接使用root账号登录系统
  • Linux初始化时,自动创建一个用户账号,称为标准用户

3.sudo的使用

  • su是substitute user的缩写,表示切换用户账号
  • sudo表示以其他身份执行命令,预设身份为root
  • 使用sudo时必须输入密码,五分钟内不再重复输入

4.组管理命令

序号 命令 作用
01 groupadd 组名 添加组
02 groupdel 组名 删除组
03 cat /etc/group 确认组信息
04 chgrp 组名 文件/目录名 修改文件/目录的所属组

5.用户管理命令

序号 命令 作用 说明
01 useradd -m -g 组 新建用户名 添加新用户 1. -m自动建立用户家目录 2.-g指定用户所在的组,否则会建立一个和用户名同名的组
02 passwd 用户名 设置用户密码 如果是普通用户,通过passwd可以修改当前账户的密码
03 userdel -r 用户名 删除用户 -r 选项会自动删除用户家目录
04 cat /etc/passwd | grep 用户名 确认用户信息 新建用户后,用户信息会保存在/etc/passwd文件中

6.查看用户信息

序号 命令 作用
01 id [用户名] 查看用户UID和GID信息
02 who 查看当前所有登录的用户列表
03 whoami 查看当前登录用户的账户名
  • /etc/passwd 用于保存用户信息的文件
  • /usr/bin/paddwd 用于修改用户密码的可执行程序

which命令可以查看命令所在的位置,例如which passwd

四、系统信息相关命令

1.时间和日期

序号 命令 作用
01 date 查看系统时间
02 cal 查看日历,-y选项可以查看一年的日历

2.磁盘信息

序号 命令 作用
01 df -h disk free 显示磁盘剩余空间
02 du -h [目录名] disk usage 显示目录下的文件大小
  • -h选项表示以人性化方式显示大小

3.进程信息

进程就是当前正在执行的程序

序号 命令 作用
01 ps aux process status 查看进程的详细状况
02 top 动态显示运行中的进程并排序
03 kill [-9] 进程号 终止指定进程,-9表示强制终止

ps仅显示当前用户通过终端启动的应用程序

ps命令各个选项含义:

  • a:显示终端上的所有进程,包括其他用户的进程
  • u:显示进程的详细状态
  • x:显示没有控制终端的进程

注:

使用kill命令时最好只终止当前用户开启的进程,不要终止root用户开启的进程,否可能导致系统崩溃。

退出top可以直接按q

五、文件压缩和软件安装

1.查找文件

  • find命令非常强大,通常用来在特定目录下搜索符合条件的文件
  • 格式:find [路径] -name “*.java”,查找指定路径下扩展名是.java的文件
  • 若省略路径,表示在当前文件目录下查找
  • find可以搭配通配符使用

2.软链接

序号 命令 作用
01 ln -s 被链接的源文件 链接文件 建立文件的软链接,通俗的说类似于windows下的快捷方式

注:

  • -s选项创建的是一个硬链接文件
    • 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
  • 源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍能够正常使用

软链接和硬链接的区别:

Linux中,文件名文件数据是分开存储的

3.打包压缩

不同操作系统的打包压缩方式是不同的

  • Windows常用rar方式
  • Mac常用zip格式
  • Linux常用tar.gz格式

3.1打包 / 解包

  • tar是Linux中最常用的打包/解包工具,可以将一系列文件打包到一个大文件,也可以将一个打包后到大文件恢复成一系列文件

  • tar命令格式:

    • 打包文件:tar -cvf 打包文件.tar 被打包的文件/路径 …
    • 解包文件:tar -xvf 打包文件.tar
  • tar选项说明

    选项 含义
    c 生成档案文件,创建打包文件
    x 揭开档案文件
    v 列出归档解档的过程,显示进度
    f 指定档案文件名称,f后面一定是.tar文件,所以必须放选项最后

    f必须放最后,其他选项随意

4.安装 / 卸载软件

  • apt是Advanced Packaing Tool,是Linux下一款安装包管理工具
  • 可以在终端中方便的安装/卸载/更新软件包

常用命令示例:

  • 安装软件:sudo apt install 软件包
  • 卸载软件:sudo apt remove 软件包
  • 更新软件:sudo apt upgrade
0

评论区