Linux 常用指令汇总(带基本语法和示例)

文章目录

用户管理

基本说明

  • Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
  • Linux 的用户需要至少要属于一个组。
  • 一般来说,创建用户时如果没有指定属于哪一个组则会创建一个与该用户用户名同名的组

添加用户

基本语法:
 useradd [选项] 用户名
例子

添加一个名为xm的用户

image-20220107142449703

其他说明
  • 当创建用户成功后,会自动的创建和用户同名的家目录
  • 也可以通过useradd -d 指定目录 新的用户名,给新创建的用户指定家目录
  • 例如创建一个名为xq的用户,并指定其家目录为/home/dog

image-20220107142557887

指定或修改密码

基本语法
passwd 用户名
示例

给刚刚创建的xm指定密码

image-20220107142927597

其他说明
  • 在linux中不论什么地方输入密码的时候,界面都是看不到提示,输入完成后敲击回车即可

删除用户

基本语法
userdel 用户名
例子
  • 删除用户xm,但保留其家目录

    image-20220107143131830

  • 删除用户xq以及其家目录

    image-20220107143215063

查询用户信息

基本语法
id 用户名
例子

查询root信息

image-20220107143307639

其他说明

当用户不存在的时候,会返回"无此用户"

切换用户

基本语法
su - 用户名
例子

创建一个用户 xf,,指定密码,然后切换到 xf

image-20220107143425213

其他说明
  • 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
  • 当需要返回到原来用户时,使用 exit 指令

组管理

类似于对于角色的管理,Linux系统可以对有共性的多个用户进行统一的管理

增加组

基本语法
groupadd 组名
例子

image-20220107144003920

删除组

基本语法
groupdel 组名
例子

image-20220107144048606

添加用户时指定组

基本语法
useradd -g 用户组 用户名
例子

增加一个用户 zwj, 直接将他指定到 wudang

image-20220107144149103

修改用户的组

基本语法
usermod -g 用户组 用户名
例子

创建一个 shaolin 组,让将 zwj 用户修改到 shaolin

image-20220107144328223

文件目录类指令

pwd指令

显示当前工作目录的绝对路径

基本语法
pwd
例子

image-20220107152808655

ls指令

显示指定目录所有的文件和目录,如果未指定目录则默认显示当前目录先的所有文件和目录

基本语法
# 显示指定目录的文件名
ls [选项] [目录或者文件]

# 显示指定目录的详细信息
ls -l [目录或者文件]

# 显示指定目录的隐藏文件
ls -al [目录或者文件]
例子
  • 查看当前目录下的文件信息

image-20220107153148866

  • 查看/home目录下的文件信息

image-20220107153217311

  • 查看当前文件夹的详细信息(可以看到ls -lll指令是等效的)

image-20220107153245728

  • 查看当前文件夹下的隐藏文件

image-20220107153330498

cd指令

切换到指定目录

基本语法
cd [参数]
常用参数

绝对路径和相对路径

  • 绝对路径是从根目录('/')开始寻址的目录,例如/root
  • 相对路径是从当前目录寻址的目录,可以使用pwd指令查看当前所在目录
例子
  • 切换到/root目录

image-20220107153651136

  • 回到上一级目录

image-20220107153721831

  • 回到当前用户的家目录

image-20220107153746127

mkdir指令

mkdir指令用来创建目录(make directory的缩写)

基本语法
mkdir [选项] 目录名
例子
  • /home/test目录下创建一个名称为demo1的文件夹

image-20220107154023915

  • /home/test目录下创建demo2/code/目录

    如果直接创建则会提示

image-20220107154148306

​ 此时应当使用mkdir -p demo2/code 表示创建多级目录

image-20220107154302447

rmdir指令

使用该指令可以删除空目录(不常用)

基本语法
rmdir [选项] 目录名
例子
  • 删除/home/test/demo1文件夹

    image-20220107154455736

  • 删除/home/test/demo2文件夹

    如果删除一个非空文件夹则会报错

image-20220107154528369

​ 应该使用rm -rf 目录名称来删除一个非空的文件夹

image-20220107154645792

rm指令

rm指令可以用来删除文件或者目录

基本语法
rm [选项] 要删除的文件或者目录

# 强制删除不提示
rm -f 文件名

# 删除整个文件夹并不提示
rm -rf 目录名
常用选项
  • -r:递归删除整个文件夹
  • -f:强制删除不提示
例子
  • 删除一个文件,如果不加-r选项,则会给出如下提示,输入y后才会删除,如果不想删除可以输入n

image-20220107155003702

  • 递归删除整个文件夹并且不提示

image-20220107155126017

touch指令

touch指令在当前文件夹创建空文件

基本语法
touch 文件名称
例子
  • 创建一个名为mm的文件

image-20220107162006582

  • 创建多个文件

image-20220107162042000

cp指令

拷贝文件到指定目录

基本语法
cp [选项] sourceAddress destAddress

# 递归复制整个文件夹
cp -r source dest
常用选项

-r:递归复制整个文件夹

例子
  • 移动单个文件到文件夹中

image-20220107162324738

  • 复制整个文件夹到另一个文件夹中

image-20220107162519328

mv指令

  • 移动文件或者目录
  • 重命名文件或者目录
基本语法
# 重命名文件
mv oldFileName newFileName

# 移动文件
mv source dest
例子
  • a.txt重命名为aaa.txt

    image-20220107162722739

  • 移动b.txtdir22

image-20220107162806202

cat指令

查看文件内容,以只读的方式打开

基本语法
cat [选项] 要查看的文件

# cat指令只能浏览文件,而不能修改文件,为了浏览方便一般会使用如下命令分页浏览
cat -n 文件名称 | more
常用选项

-n:显示行号

例子
  • aaa.txt中写入一些内容并预览

dimage-20220107163055866

  • 使用cat -n 文件名称 | more预览文件并添加行号

image-20220107163526331

more指令

more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容

基本语法
more 要查看的文件名
快捷键
操作功能说明
空格键向下翻一页
Enter向下一行
q离开more预览模式
Ctrl+F向下滚动一屏
Ctrl+B返回上一屏
=输出当前行的行号
:f输出文件名和当前行的行号
例子

image-20220107163634721

less指令

less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。

less指令在显示文件内容时,并不是一次将整个文件加载后才显示,而是根据显示再去加载内容,对于显示大型文件具有比较高的效率

基本语法
less 要查看的文件名称
快捷键
操作功能说明
空白键向下翻动一页
[pagedown]向下翻动一页
[pageup]向上翻动一页
/字串向下搜索[字串]功能;n:向下继续查找,N:向上继续查找
?字串向上搜索[字串]功能;n:向上继续查找,N:向上继续查找
a退出less
例子

tail指令

tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容

基本语法
# 默认查看文件后10行
tail 文件

# 查看尾部指定行数
tail -n 5 文件

# 实时追踪文档的更新
tail -f 文件名称
例子
  • 查看文件的后20行

image-20220107173250220

>指令和>>指令

这两个指令都是重定向指令

>:输出重定向,会将原来的文件的内容覆盖

>>:追加重定向,不会覆盖原来文件的内容,而是追加到文件的尾部

基本语法
ls -l > a.txt
echo test text > b.txt
ls -al /home/ > c.txt

说明:如果使用命令重定向到文件,当该文件不存在时会创建该文件并且写入

例子
  • ls -l > a.txt

image-20220107171500948

  • echo test text > b.txt

image-20220107171518121

  • ls -al /home/ > c.txt

image-20220107171533787

echo指令

输出内容到控制台

基本语法
echo [选项] [输出内容]
例子
  • 输出系统当前的环境变量

image-20220107171845858

  • 输出一个字符串

image-20220107171902720

  • 重定向到文件

image-20220107171938705

ln指令

建立链接,类似于windows中的快捷方式,主要粗放了链接其他文件的路径

基本语法
# 硬链接
ln [源文件或目录] [链接名]
# 软连接
ln -s [源文件或目录] [连接名]
例子
  • /home/test下建立到/etc/httpd/conf的软连接

image-20220107173634446

history指令

查看已经执行过的历史指令,也可以执行历史指令

基本语法
history

# 查看指定格式的历史指令
history 10
例子
  • 查看所有历史指令

image-20220107173853221

  • 查看最近10个指令

image-20220107173915809

帮助类指令

在刚开始学习Linux的时候,我们难免会对某个指令不熟悉,此时可以查看Linux的用户手册,也可以使用Linux中自带的帮助命令查看对该指令的解释

man指令获得帮助信息

基本语法
man [命令或配置文件] 
例子

查看ls命令的帮助信息

image-20220107152010913

help指令

基本语法
help [命令]
例子

查看cd命令的帮助信息

image-20220107152100384

如何学习一个不熟悉的指令

可以百度直接查找该命令,例如ifconfig 的使用

或者是查看菜鸟教程的Linux命令手册

我更推荐第二种方法,可以过滤很多参差不齐的教程信息

日期类指令

date指令

显示当前日期

基本语法
# 显示当前时间
date
# 显示当前年份
date +%Y
# 显示当前月份
date +%m
# 显示当前是哪一天
date +%d
# 显示年月日时分秒
date "+%Y-%m-%d %H:%M:%s"
例子

运行上面的程序

image-20220107180539557

date指令设置日期

基本语法
date -s 字符串时间
例子

image-20220107180715411

cal指令

查看日历指令

基本语法
cal [选项]
例子

显示本月日历

image-20220107180833907

显示2022年的日历

image-20220107180849213

查找类指令

find指令

find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端

基本语法
find [搜索范围] [选项]
选项说明
选项功能
-name <查询方式>按照指定的文件名查找模式查找文件
-user <用户名>查找属于指定用户名的所有文件
-size <文件大小>按照指定的文件大小查找文件(+n 大于;-n 小于; n 等于)
例子

查找/home路径下名称为a.txt的文件

image-20220107181306890

查找/home路径下,属于test的文件

image-20220107181423780

查找整个系统中大于20M的文件

image-20220107181548948

locate指令

locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的locate 数据库实现快速定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新 locate 时刻

基本语法
locate 搜索文件
特别说明

由于locate指令基于数据库进行查询,所以第一次运行前必须使用updatedb指令创建locate数据库

例子

使用locate指令定位run.sh文件所在的位置(需要先使用updatedb指令更新locate数据库)

image-20220107181743450

grep指令和管道符号|

grep 过滤查找 ,管道符|,表示将前一个命令的处理结果输出传递给后面的命令处理。

基本语法
grep [选项] 查找内容 源文件
常用选项
选项功能
-n显示匹配行及行号
-i忽略字母大小写
例子

在hello.txt文件中查找yes所在行

image-20220107182145981

在hello.txt文件中查找yes所在行并忽略大小写

image-20220107182232915

压缩和解压类指令

gzipgunzip指令

gzip用于压缩文件, gunzip 用于解压文件

基本语法
# 压缩文件,只能将压缩为*.gz文件
gzip 文件

# 解压命令
gunzip 文件.gz
例子

压缩文件

image-20220107183607205

解压文件

image-20220107183642331

zipunzip指令

zip用于压缩文件,unzip用于解压文件,在项目打包发布中很有用

基本语法
# 压缩指令
zip [选项] XXX.zip

# 解压缩指令
unzip [选项] XXX.zip
常用选项
选项功能
zip -r递归压缩
unzip -d <目录>指定解压目录
例子

将/home/test下的所有文件压缩成package.zip

image-20220107184352876

将package解压到/opt/tmp目录下

image-20220107185029883

tar命令

tar是打包指令,打包完后的文件是.tar.gz文件

基本语法
tar [选项] XXX.tar.gz 目录或文件

# 压缩命令,可以压缩多个文件或文件夹
tar -zcvf a.tar.gz a.txt b.txt c.txt

# 解压命令
tar -zxcf a.tar.gz

# 解压指定路径(注意指定的解压路径一定要存在,不然会报错)
tar -zxvf a.tar.gz -C /opt/tmp
选项说明

压缩/home/test目录

image-20220107185434220

将刚刚创建的压缩包解压到/opt/tmp目录

image-20220107185602851

权限控制类指令

Linux组基本介绍

在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件有所有者、所在组、其它组的概念。

chown指令

修改文件所有者

基本语法
chown 用户名 文件名
例子

使用 root 创建一个文件 apple.txt ,然后将其所有者修改成 tux

image-20220107191102386

chgrp指令

chgrp 组名 文件名
例子

使用 root 用户创建文件 orange.txt ,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到 police 组

image-20220107191256584

chmod指令

通过 chmod 指令,可以修改文件或者目录的权限

基本格式
chmod u=rwx,g=wx,o=x 文件目录名
chmod o+w 文件目录名
chmod a-x 文件目录名
chmod 755 文件目录名
例子

给 abc 文件 的所有者读写执行的权限,给所在组读执行权限,给其它组读执行权限

以下两个命令是等价的

chmod u=rwx,g=rx,o=rx abc
chmod 755 abc

image-20220107191745236

将abc的执行权限去掉

image-20220107191916327

  • 7
    点赞
  • 95
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
以下是 Linux 常用命令及语法的简介: 1. ls:列出当前目录下的文件和文件夹 - 语法:ls [选项] [路径] - 选项: - -l:显示详细信息 - -a:显示所有文件,包括隐藏文件 - -h:以人类可读的方式显示文件大小 2. cd:切换当前目录 - 语法:cd [路径] 3. pwd:显示当前所在目录的路径 - 语法:pwd 4. mkdir:创建新的目录 - 语法:mkdir [选项] 目录名 - 选项: - -p:可以递归创建多级目录 5. rm:删除文件或目录 - 语法:rm [选项] 文件或目录名 - 选项: - -r:递归删除目录及其子目录 - -f:强制删除,不提示 6. cp:复制文件或目录 - 语法:cp [选项] 源文件或目录 目标文件或目录 - 选项: - -r:递归复制目录及其子目录 - -f:强制复制,不提示 7. mv:移动或重命名文件或目录 - 语法:mv [选项] 源文件或目录 目标文件或目录 - 选项: - -f:强制移动或重命名,不提示 8. cat:查看文件内容 - 语法:cat [选项] 文件名 - 选项: - -n:显示行号 9. grep:查找文件中符合条件的行 - 语法:grep [选项] 模式 文件名 - 选项: - -i:忽略大小写 - -n:显示行号 - -r:递归查找子目录 10. tar:打包和解压缩文件 - 语法:tar [选项] 文件名 - 选项: - -c:创建新的归档文件 - -x:解压缩归档文件 - -z:使用 gzip 压缩或解压缩 以上是 Linux 常用命令及语法的简介,还有很多命令和选项并没有列举,如果需要使用其他命令,可以查看相关的文档或者使用 man 命令查看帮助文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hydrion-Qlz

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值