Linux 命令


Linux 系统发展史

  • Linux 系统前身——Unix
  • Linux 系统的特点:开放性(开源)、多用户、多任务、良好的用户界面、优异的性能与稳定性(Windows属于单用户多任务
  • Linux分支主要有:ubuntudebiancentosredhatsuse

Linux 系统的文件

  • Linux一切皆文件

Linux重要文件目录

重要目录结构介绍

  • bin目录全称:binary,含义是二进制。该目录中存储的都是一些二进制文件,文件都是可以被运行的。
  • dev目录,主要存放的是外接设备,例如U盘、其他的光盘等。在其中的外接设备是不能直接被使用的,需要挂载。
  • mnt目录,当挂载外接设备后,就需要在mnt目录下访问资源。
  • etc目录,主要存储一些配置文件。
  • home目录,表示“家”,表示除了root用户以外其他用户的家目录,类似于Windows下的User/用户目录
  • proc目录,全称:process,表示进程,该目录中存储的是Linux运行时候的进程。
  • root目录,表示root用户自己的家目录。
  • sbin目录,全称:super binary,该目录也是存储一些可以被执行的二进制文件,但是必须得有super权限的用户才能执行,例如root用户
  • tmp目录,表示临时的,当系统运行时候产生的临时文件会在这个目录存着。
  • usr目录,存放的是用户自己安装的软件,类似于windows下的program files。
  • var目录,存放程序/系统的日志文件的目录。

Linux目录1
Linux目录2
Linux目录3

Linux 基本指令

基础指令模型

  • #指令 + 【选项】+ 【操作对象】(一个指令可以包含多个选项,多个操作对象)

相对路径与绝对路径

  • 相对路径:相对首先有一个参照物,一般指当前所在路径
    • ./表示当前目录下,../表示上一级目录下
  • 绝对路径:绝对路径不需要参照物,直接从根“/”开始寻找对应路径

ls指令

含义:ls(list)列出当前工作目录下的所有文件/文件夹名称
⚠️注意:蓝色表示文件夹,黑色表示文件,绿色表示其拥有所有权限

  • 语法1: ls + 路径
  • 选项:-l表示以详细列表的形式展示,-a表示显示所有的文件或文件夹(包括隐藏文件/文件夹),-h表示显示文档大小的时候以可读性较高的形式显示。
[root@localhost /]# ls /
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
  • 语法2: ls + 选项+ 路径
[root@localhost /]# ls -l /root
总用量 8
-rw-------. 1 root root 1890 6月  30 17:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 1918 6月  30 09:41 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 6月  30 09:46 perl5
[root@localhost /]# ls -la /root
总用量 48
dr-xr-x---.  6 root root  256 7月  26 15:10 .
dr-xr-xr-x. 17 root root  224 6月  30 17:38 ..
-rw-------.  1 root root 1890 6月  30 17:39 anaconda-ks.cfg
-rw-------.  1 root root 5536 7月  26 15:13 .bash_history
-rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
-rw-r--r--.  1 root root  295 7月   6 09:53 .bash_profile
-rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
drwx------.  4 root root   31 6月  30 09:46 .cache
drwxr-xr-x.  4 root root   37 7月   5 23:09 .config
-rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
drwx------.  3 root root   25 6月  30 17:40 .dbus
-rw-r--r--.  1 root root 1918 6月  30 09:41 initial-setup-ks.cfg
-rw-------.  1 root root  253 7月   6 10:49 .mysql_history
drwxr-xr-x.  2 root root    6 6月  30 09:46 perl5
-rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
-rw-------.  1 root root 5037 7月  26 15:10 .viminfo
[root@localhost /]# ls -lh /root
总用量 8.0K
-rw-------. 1 root root 1.9K 6月  30 17:39 anaconda-ks.cfg
-rw-r--r--. 1 root root 1.9K 6月  30 09:41 initial-setup-ks.cfg
drwxr-xr-x. 2 root root    6 6月  30 09:46 perl5

ls选项说明

pwd 指令

含义:#pwd(print working directory),打印当前工作目录

[root@localhost /]# pwd
/

pwd选项介绍

cd 指令

含义:#cd (change directory),改变目录,切换目录

[root@localhost /]# cd /root
[root@localhost ~]# 

mkdir 指令

含义:#mkdir(make directory),创建目录
语法:#mkdir 路径(路径可以是文件夹名称也可以是包含文件夹名称的完整路径)

[root@localhost ~]# mkdir 1234
[root@localhost ~]# ls
1234  anaconda-ks.cfg  initial-setup-ks.cfg  perl5

选项案例:#mkdir -p 路径,表示一次性创建多层不存在的目录,不添加-p则报错。
mkdir选项介绍

rmdir 指令

含义:删除空的目录
语法:#rmdir [-p] 目录名称
rmdir选项介绍

touch 指令

含义:#touch,创建文件
语法:#touch 路径(路径可以是文件名称也可以是包含文件名称的完整路径)
touch选项介绍

cp 指令

含义:cp (copy)复制,复制文件/文件夹到指定的位置
语法:#cp 被复制的文档路径 + 文档被复制到的路径
⚠️注意:Linux在复制过程中是可以重新对新位置的文件进行重命名,但是如果不是必须的需要,则建议保持前后名称一致。
cp选项介绍

mv 指令

含义:mv (move),移动、剪切文件/文件夹。
语法:#mv 需要移动的文档路径 + 需要保存的位置路径
mv选项介绍

rm指令

含义:rm (remove)移除、删除。
语法:#rm 选项 需要移除的文档路径
rm选项介绍
rm选项介绍

vim 指令

含义:vim (vim是一款文本编辑器)
语法:#vim 文件路径

输出重定向

一般指令的输出都是显示在总端中,有些时候需要将一些指令执行结果保存在文件中,以便后续的分析和统计,这时候就需要使用到输出重定向技术。
>:覆盖输出,会覆盖掉原来的文件内容
>>追加输出,不会覆盖原始文件内容,会在原始内容末尾继续添加
语法:#正常执行指令 + >/>> 文件路径

cat 指令

  • 1⃣️
    含义:cat直接打开文件(读取文件并显示在总端界面)
    语法:#cat 文件路径

  • 2⃣️
    含义:cat对文件进行合并
    语法:#cat 待合并的文件路径1 + 待合并的文件路径2 + … + 输出重定向指令
    cat选项介绍

Linux 进阶指令

df -h 指令

含义:查看磁盘空间

[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G   10G  7.1G   59% /
devtmpfs                 897M     0  897M    0% /dev
tmpfs                    912M     0  912M    0% /dev/shm
tmpfs                    912M  9.1M  903M    1% /run
tmpfs                    912M     0  912M    0% /sys/fs/cgroup
/dev/sda1               1014M  180M  835M   18% /boot
tmpfs                    183M     0  183M    0% /run/user/0
tmpfs                    183M   44K  183M    1% /run/user/1000

free -m 指令

含义:查看内存使用情况

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1823        1075         102           7         645         522
Swap:          2047          32        2015

head 指令

含义:查看一个文件的前n行,如果不指定n,则默认显示前10行。
语法:#head -n 文件路径(n表示数字)
head选项介绍

tail 指令

含义:查看一个文件的末尾n行,如果n未指定,则默认显示后10行。
语法:#tail -n 文件路径
#tail -f 文件路径 (查看一个文件的动态变化)
⚠️注意:变化的内容不能是用户手动增加的,该指令一般查看系统的日志比较多。
tail选项介绍

less 指令

含义:查看文件,以较少的内容输出,通过辅助按键查看更多
语法:#less 需要查看的文件路径
less辅助按键

wc 指令

含义:统计文件内容信息(包括行数、单词数、字节数)
语法:#wc -lwc 需要统计的文件路径
-l:表示lines,行数
-w:表示words,单词数
-c:表示bytes,字节数

date 指令(重点)

含义:表示操作时间日期(读取,设置)
语法1⃣️:#date
输出效果:2020年 07月 27日 星期一 11:13:05 CST
语法2⃣️:#date +%F(等价于#date “+%Y-%m-%d”)
输出效果:2020-07-27
语法3⃣️:#date “+%F %T”(引号表示让“年月日与时分秒”成为一个不可分隔的整体,等价于#date “+%Y-%m-%d %H:%M:%S”)
输出效果:2020-07-27 11:18:41

cal 指令

含义:用来操作日历
语法1⃣️:#cal (等价于#cal -1,直接输出当前月份的日历)
语法2⃣️:#cal -3(表示输出上个月+本月+下个月的日历)
语法3⃣️:#cal -y 年份 (表示输出某个年份的日历)

clear/ctrl +L 指令

含义:清除总端中已经存在的指令和结果(信息)
语法:#clear (或者快捷键ctrl+L)
⚠️注意:该指令并不是真的清除了之前的信息,而是把之前的信息隐藏到了最上面,通过滚动条可以查看之前的信息。

管道(重要)

管道符:|
含义:管道一般可以用于“过滤”,“特殊”,“扩展处理”。
语法:管道不能单独使用,必须配合前面所讲的一些指令来一起使用,其作用主要是辅助作用。

过滤:ls|grep 指令

含义1⃣️:以管道作为分界线,前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入。
含义2⃣️:grep指令主要用于过滤。

特殊: cat|less 指令

含义:通过管道的操作方法来实现less的等价效果
语法:之前通过less查看一个文件,可以#less 路径;现在通过管道:#cat 路径 | less

扩展处理: ls|wc 指令

统计某个目录下的文档的总个数?

[root@localhost ~]# ls /root | wc -l
4
[root@localhost ~]# ls
1234  anaconda-ks.cfg  initial-setup-ks.cfg  perl5
[root@localhost ~]# 

Linux 高级指令

hostname 指令

id 指令

whoami 指令

ps -ef 指令

top 指令

-M

-P

1

du -sh 指令

find 指令

-name

-type

service * start/stop/restart 指令

kill 指令

ifconfig 指令

reboot 指令


文章作者: rep-rebirth
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 rep-rebirth !
评论
评论
  目录