Linux命令详细总结(万字总结值得一看)

本文涉及的产品
云防火墙,500元 1000GB
简介: 🍅程序员小王的博客:程序员小王的博客🍅 欢迎点赞 👍 收藏 ⭐留言 📝🍅 如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕🍅java自学的学习路线:

Linux命令详细总结目录


一、什么是Linux?

1、linux简介

Linux是基于Unix的


Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机



2、Linux的历史

诞生于1991 年10 月5 日。是由芬兰赫尔辛基大学学生(林纳斯 托瓦兹)Linus Torvalds和后来加入的众多爱好者共同开发完成(linux 0.0.1.x86系统)最后



后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后(1994年)Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统.(1994年version1.0 正式版本,功能完善,稳定的版本)



林纳斯 托瓦兹 2周时间写出 git 分布式版本控制工具(接收世界各地发来的代码,对linux系统修改)


3、Linux系统的应用场景:

(1)核心应用场景

核心: 用在服务器操作系统方面 (服务器系统Web应用服务器、数据库服务器、接口服务器)


嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等,DNS、FTP等等;


高性能运算、计算密集型应用Linux有强大的运算能力。


桌面应用系统


移动手持系统


(2)为什么不用windows?

捆绑收费,因为数据库用sqlServer费用高


4、Linux的版本

Linux的版本分为两种: 内核版本 和发行版本 ;


(1)内核版本

内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ;


(2)发行版本

发行版本是一些组织和公司根据自己发行版的不同而自定的 ;


5、Linux的特点

特点:免费,多用户,多任务,支持多线程和多CPU的操作系统,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性,出色的速度性能。


6、Linux的发行版

redHat(红帽),centos,suse,ubuntu,红旗Linux


7、常见的操作系统

Unix(价格昂贵),Dos(简易,windows,不开源),MacOs(苹果计算机的操作系统),linux(廉价,完全开发的系统)


二、Linux之Cent OS 7

1、centos 引言

CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的[Red Hat](https://baike.baidu.com/item/Red Hat) Enterprise Linux使用。两者的不同,在于CentOS完全开源 。


2、centos 和 readheat区别

目前的Linux操作系统主要应用于生产环境,主流企业的Linux系统仍旧是RedHat或者CentOS,他们出自于同样的源代码,但centos完全免费。其独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!


三、Linux中目录结构


/ 根目录
bin 二进制可执行命令文件
sbin (超级管理员有权操作)二进制可执行命令
etc 存放系统配置文件的目录
usr 共享资源目录   (共享资源:1.放在usr下 资源共享 2.设置权限)
root root用户的家目录(pwd:就会直接进入/root 进入系统根下的root目录)
home  普通用户,进入系统中,是在/home/用户名下(根下的home下的用户名)
tmp: 临时文件的存放目录


root管理员的home目录root,其他用户的home目录home目录中

四、Linux中常用指令

(1)基本命令格式

命令名 -选项 参数

javac -d aa.java
ls -l /usr


注意:linux命令严格区分大小写


(2)ls 查看文件目录结构

ls 查看当前目录结构



ls /usr 查看指定目录 


  • 选项
ls -l 长格式显示当前目录(显示显示当前目录)



ls -a   (a=all 以.开头的都是隐藏文件,可以展示所有隐藏文件)



ls -a -l (长文件和全部文件组合使用)




ls -R 递归(查看子目录及其子目录下的子目录,ctrl+c结束当前程序)



ll 长文件显示当前长目录



(3)操作文件命令[重点]

1、pwd 显示当前目录

ctrl+c:结束当前执行命令
pwd:显示当前目录



clear :清屏



2、cd 切换当前所在目录

cd / 切换到根目录
cd .. 切换到上级目录
cd . 当前目录
回家(回到root的根目录) cd/,cd~
切换到用户主目录cd - 
使用tab键来补全文件路径



3、touch 创建空文件

touch 文件名 当前目录下新建空文件
touch /usr/文件名 在共享资源目录下创建新文件




4、mkdir 创建文件夹(目录)

mkir 目录名 当前目录中新建目录
mkdir /usr/目录名  在指定目录下新建目录



mkdir -p aa/bb/cc/dd  按照目录结构创建目录 -p值父级目录不存在时先去创建父级目录


5、rm 删除文件或目录

rm 文件  删除文件(删除提示:y删除 n不删除)
rm -f  强制删除(f:force)
rm -r 递归删除(删除当前文件及其里面的子文件、子目录)
rm -rf  强制递归删除,就不会出现很多提示了
rm -rf /* 慎用 直接删除所有文件 相当于删掉整个操作系统




rm -r 递归删除(删除当前文件及其里面的子文件、子目录)


rm -rf  强制递归删除,就不会出现很多提示了



rm *.txt 通配的形式,删除以txt结尾的文件



rm bb.txt cc.txt


6、cp 复制文件

cp 文件名 目录名 将文件拷贝到指定目录中
cp -r 目录名 目录名 将目录及其内部所有文件夹和目录拷贝到目录中



7、mv 移动文件和文件夹

mv 已有文件名 不存在的文件名 修改文件名
mv 已有文件名 存在的目录 移动文件
mv 已有的目录 不存在的目录  修改目录名
mv 已有的目录 存在的目录   移动目录


8、rmdir 只能删除为空的目录(文件夹)

9、cat 查看文件内容

cat 文件名 查看文件 只能展示一个版面(最后一页内容)



10、more 分页查看文件内容

more  文件名 分页查看文件内容 enter 进行回车,一次多展示一行



11、less的 分页查看文件内容

less 文件名 分页查看文件内容,可以上下展示行 pageUp|pageDown可以分页 
:q 退出当前less


12.head 展示文件开头10行

head 文件名


13.tail展示文件末尾10行

tail 文件名


  • -n 设置展示多少行
head -n 11 aa.txt


-f 循环读取文件【实时监控】


-f的作用 监控服务器日志的运行状态



14.echo 操作终端输出命令

echo 文本 在终端输出命令
echo 文件夹>>文本 将文本输入到文件夹




将文本输入到文件夹



(4)网络相关的命令

1、ip addr 查看当前计算机的ip地址【centOS7特有】

ip addr 查看当前计算机的ip地址
ip a 简化写法 查看当前计算机的ip地址
ifconfig centOS7之前查看ip地址的



2、ping 测试网络连通性

ping ip|网络
ping 192.168.0.1 数据包展示 丢失 0%
ping www.baidu.com



(5)较难的命令

1、Tar命令(windows winrar)

tar 归(压缩)命令
  -c 建立一个压缩文件的参数指令
  -x 解压
  -z 是否使用gzip压缩
  -v 压缩日志
  -f 压缩后的名字,在f后面直接写压缩名,以.tar结尾
  tar -cf whj.tar aa.txt bb.txt cc.txt 压缩命令
  tar -xf whj.tar 解压缩
  tar -cvf whj.tar aa.txt bb.txt cc.txt 归档命令显示文件
  tar -xvf whj.tar 解压缩并且显示解压的名字
  【常用】
  tar -cvzf whj.tar aa.txt bb.txt cc.txt 归档命令显示文件
  tar -xvzf whj.tar 解压缩并且显示解压的名字

 




2、systemctl服务命令(相当于控制Controller)

systemctl 操作 服务名
操作:
启动: start
重启: restart
停止:stop查看状态 status
服务名:
mysqlId mysql数据库服务名
firewalld  linux系统的防火墙服务名
network    linux的网络服务名


防火墙服务命令

查看防火墙的状态 systemctl status firewalld



3、ps 进程相关命令

ps 查看前台进程
ps -aux 查看当前系统中所有进程,及其使用的用户
ps -ef 后台进程


(6)vi命令

vi/vim 用于文件内容编辑
vi 文件名
vi /usr/文件名


vi/vim 文件名进入文件后---》命令模式---》插入模式--->退出
                         i,a,o                 ESC
                    ----》末行模式-----》退出模式
                          :             w:保存 q:退出 !:强制退出
                                             :q! 强制退出不保存




1、命令模式下的命令

     i            在光标前插入
     I            在光标当前行开始插入
     a            在光标后插入
     A            在光标当前行末尾插入
     o            在光标当前行的下一行插入新行
     O            在光标当前行的上一行插入新行
     gg        到文本的第一行
     G        到文本的最后一行


2、末行模式下命令

  ----------------重点---------------------------
     :set nu      显示行号
     :set nonu    取消行号
     gg        到文本的第一行
     G        到文本的最后一行
     :n(数字)    到文本的第n行



8、回退到上一步和前进

  ------------------重点-------------------------
     u        undo,取消上一步操作
     Ctrl + r    redo,返回到undo之前

(7)软件相关命令(rpm)

1、用户和组相关命令

whoami  查看当前用户 只显示用户名
who 查看当前登录终端   用户名+登录终端+登录时间



who -q       统计用户登录个数
who --count  统计用户登录个数



exit :退出当前系统



添加删除用户

添加用户: useradd 用户名
设置密码:passwd 用户名 (需要输入两次)
删除用户:userdel 用户名



创建用户,并指定组名

 如果不指定组 系统会以用户名创建组
         在创建用户时可以指定他所属的组 -g
添加用户并且设置组 useradd 用户名 -g 指定组名 
.添加、删除组账号:groupadd、groupdel


用户和root的区别

root用户[root@localhost~]#
普通用户 普通用户[用户名@localhost~]#



2、切换用户

su  root   切换用户,管理员切换其他用户需要密码,其他用户互相切换需要密码




(8)权限相关的命令 chmod

Linux文件有三种典型的权限,即r读权限、w写权限和x执行权限。在长格式输出中在文件类型的后面有9列权限位,实际上这是针对不同用户而设定的。r=4,w=2,x=1

-         rw-                r--              r--
文件-    属主(创建者的)权限   属组的权限           其他的权限
目录是d               文件创建者同组用户的权限     其他人员的权限
r:可以读
w:可以写
x:可以执行



修改文件操作权限
cchmod 权限设置 文件名
权限设置:
    增加权限 +
    撤销权限 -
    设定权限 =
chmod 给谁加+添加的权限 aa.txt
给谁加
属主(作者):u user
属组(和作者一个组的人):g group
其他成员(其他用户): o other
添加权限:
chmod u+x,g+wx,o+wx  aa.txt 
(给作者自己加可以执行权限,
给同组的用户添加写执行权限,
给其他用户添加写执行权限)
撤销权限
chmod u-rwx,o-rw,o-rx aa.txt


设定权限
chmod u=rwx,o=rw,o=rx aa.txt




数字法表示权限
读 r4 写w2 执行x1
属主 属组 其他
7    7    7
chmod 123 aa.txt 
(作者可以执行
同组的人可以写
其他人可以读
)
chmod 664 bb.txt

相关文章
|
6天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
24 3
|
6天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
18 2
|
27天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
177 5
|
26天前
|
Linux
Linux系统之expr命令的基本使用
【10月更文挑战第18天】Linux系统之expr命令的基本使用
75 4
|
13天前
|
缓存 监控 Linux
|
17天前
|
Linux Shell 数据安全/隐私保护
|
17天前
|
域名解析 网络协议 安全
|
23天前
|
运维 监控 网络协议
|
25天前
|
监控 Linux Shell
|
6天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
24 3