Linux命令笔记

Linux命令大全(超详细版)

1.简单系统命令

# 查看ip地址
	ip a
	ip addr
# ping网络(测试网络连通)
	ip 目标机器的ip
# 查看系统时间
	date
# 注销
	logout
# 关机
	shutdown now
# 重启
	reboot
# 清屏
	clear

2.Linux文件系统

  • 核心

1.Linux一切皆文件

2.只有一个顶级目录,不像windows分C盘、D盘、E盘

  • 目录结构

在这里插入图片描述

  • 文件含义
Linux含义windows
/bin所有用户可用的基本命令存放的位置windows没有固定的命令存放目录
/sbin需要管理员权限才能使用的命令
/bootlinux系统启动的时候需要加载和使用的文件
/dev外设连接linux后,对应的文件存放的位置类似Windows中的U盘,光盘的符号文件。
/etc存放系统或者安装的程序的配置文件,注册服务等类似windows中的注册表,
/home家目录,linux中每新建一个用户,会自动在home中为该用户分配一个文件夹类似windows中的"我的文档",每个用户有自己的目录。
/rootroot账户的家目录,仅供root账户使用类似windows中的Administrator账户的"我的文档"
/liblinux的命令和系统启动,需要使用一些公共的依赖,放在lib中,类似我们开发的代码执行需要引入的jdk的jar
/usr很多系统软件的默认安装路径类似windows中的C盘下的Program Files目录。
/var系统和程序运行产生的日志文件和缓存文件放在这里

3. 文件管理命令

注意事项:命令区分大小写

# 1. 查看文件列表
	ls [-参数1参数2] [目标文件夹]
  • # 查看当前目录下的文件列表
    	ls
    # 查看指定目录下的文件
    	ls /
    # 查看详细信息,元数据信息(用户、组、大小、创建时间、权限信息、文件类型)
    	ls -l
    # 查看隐藏文件
    	ls -a 
    # 参数并用
    	ls -la
    
    • # 2. 切换目录
      	cd 目标文件夹
      
      • # 绝对路径切换
        	cd 绝对路径
        # 相对路径切换
        	cd 相对路径
        # 例子:切换到/etc/sysconfig/networks-scripts 目录下
        
        • # 3. 查看当前命令所在的目录
          
            [root@centos7 network-scripts]# pwd
            /etc/sysconfig/network-scripts
            # 特殊目录符号
            	~ 当前用户的home目录
            	. 当前目录
            	.. 上一级目录
            
            • # 4. 新建文件夹及文件
              
                # 在当前位置新建文件夹
                	mkdir 文件夹名
                # 在指定目录位置,创建文件夹,并创建父文件夹
                	mkdir -p /a/b/文件夹名
                # 在当前目录下新建文件
                	touch 文件名
                
                • # 5. 删除文件
                  
                    # 删除文件
                    	rm 文件
                    # 删除文件夹
                    	rm -r 文件夹
                    # 强制删除不询问
                    	rm -rf 文件
                    
                      # 6. 拷贝文件
                      
                        # 拷贝文件
                        	cp 原文件  新文件
                        # 拷贝文件夹
                        	cp -r 源文件夹 新文件夹
                        
                          # 7. 移动文件或修改文件名
                          
                            # 移动源文件到目标文件夹中
                            	mv 文件  文件夹
                            # 修改文件A的名字为文件B
                            	mv 文件A 文件B
                            
                              # 8. 获取文件的md5指纹(数字签名)
                              
                                md5sum 文件名
                                # 简介
                                1. 数字签名,又称数字指纹
                                2. 可以验证文件是否被修改
                                3. 一个文件通过计算得到的一串字符串,文件内容的唯一标记(文件内容不变,指纹不会变)
                                

                                  4. 文本内容查看命令

                                  # cat命令
                                  
                                    # 查看文件中的全部信息(适合查看小文档)
                                    	cat 文件名
                                    
                                      # less命令
                                      
                                        # 以分页的方式浏览文件信息(适合查看大文档),进入浏览模式
                                        	less 文件名
                                        # 浏览模式快捷键#上一行#下一行
                                            G #最后一页
                                            g #第一页
                                            空格 #下一页
                                            /关键词 #搜索关键词
                                        # 退出浏览模式,回到Linux命令行模式
                                            q #退出
                                        
                                          # tail 命令
                                          
                                            # 实时滚动显示文件的最后10行信息(默认10行)
                                            tail -f 文件名
                                            # 显示文件的最后20行信息
                                            tail -n 20 文件名
                                            tail -n -20 文件名
                                            # 显示文件信息从第20行至文件末尾
                                            tail -n +20 文件名
                                            

                                              5. 文件查找

                                              1. 文件名查找

                                                # 语法
                                                	find 搜索路径 -name "文件名关键词"
                                                # 例子
                                                	find / -name "passwd"
                                                	find / -name "ifcfg-*"
                                                
                                                • 文件内容查找

                                                  # 语法
                                                  	grep -参数 要查找的目录范围
                                                  	# 参数
                                                  	-n 显示查找结果所在行号
                                                  	-R 递归查找目录下的所有文件
                                                  # 例子
                                                  	grep aries /etc
                                                  	grep aries /etc/passwd
                                                  

                                      6. 文件链接

                                      1. Linux文件管理
                                      • 模型图

                                      在这里插入图片描述

                                      • 说明

                                        # 文件名
                                        	该文件的名字
                                        # inode
                                        	该文件的元数据
                                        # datablock
                                        	该文件真正保存的数据
                                        

                                          注意:

                                          1、inode中保存的是文件的元数据

                                          2、ls命令查看的都是linux的元数据信息

                                          3、数据块中才是文件的真正数据

                                        1. 硬链接

                                        在这里插入图片描述

                                        • 命令

                                          ln 源文件 硬链接文件
                                          
                                          1. 软连接

                                          在这里插入图片描述

                                          • 命令

                                            ln -s 目标文件或文件夹 软连接名字
                                            

                                            7. 系统管理

                                            # 静态查看系统进程
                                            	ps -aux
                                            
                                              # 实时查看系统进程
                                              	top
                                              	# 快捷键
                                              		↑ 下翻
                                              		↓ 上翻
                                              		q 退出
                                              
                                                # 关闭进程
                                                	kill 进程id 
                                                # 强制关闭进程(谨慎使用)
                                                	kill -9 进程id
                                                

                                                  8. 输出

                                                  # 覆盖输出
                                                  
                                                    # 将命令1的执行结果,输出到后面的文件中。
                                                    `覆盖写入`
                                                    	命令1 > 文件
                                                    # 例子
                                                    	date > date.log
                                                    
                                                      # 追加输出
                                                      
                                                        # 将命令1的执行结果,输出到后面的文件中。
                                                        `追加写入`
                                                        	命令1 >> 文件
                                                        # 例子
                                                        	date >> date.log
                                                        

                                                          9. 管道

                                                          # 管道
                                                          
                                                            # 语法,将命令1的输出结果,作为命令2的输入
                                                            命令1 | 命令2
                                                            

                                                              在这里插入图片描述

                                                              # 例子
                                                              查找aries用户:cat /etc/passwd | grep -n “baizhi”
                                                              查找aries组:cat /etc/group | grep -n “baizhi”
                                                              查找sshd进程:ps -aux | grep sshd
                                                              

                                                                9. 文件编辑

                                                                配置MobaXterm的默认文本编辑器

                                                                免去vim命令的麻烦

                                                                系统权限

                                                                用户组

                                                                在这里插入图片描述

                                                                • 相关命令

                                                                  1. 创建组
                                                                    `groupadd 组名`
                                                                  2. 删除组
                                                                    `groupdel 组名`
                                                                  3. 查找系统中的组
                                                                    `cat /etc/group | grep -n “组名”`
                                                                    说明:系统每个组信息都会被存放在/etc/group的文件中
                                                                  

                                                                  用户

                                                                  • 相关命令

                                                                    1. 创建用户
                                                                      `useradd -g 组名 用户名`
                                                                    2. 设置密码
                                                                      `passwd 用户名`
                                                                    3. 查找系统账户
                                                                      说明:系统每个用户信息保存在`/etc/passwd`文件中
                                                                    4. 切换用户
                                                                      `su 用户名`
                                                                    5. 删除用户
                                                                      `userdel -r 用户名`
                                                                    

                                                                    权限

                                                                    • 问题

                                                                      linux系统未来可能有程序员、用户、数据库管理员、项目经理等各种角色各种级别人使用,甚至还有身份不明的人链接到linux,控制不好权限容易导致系统崩溃、数据丢失等问题。

                                                                    • 权限含义

                                                                      权限字母含义对文件代表命令对文件夹代表命令
                                                                      查看文件内容和复制文件more cat less cp head tail查看文件夹下的文件ls
                                                                      W(w)编辑文件vi在文件夹内创建和删除文件rm touch
                                                                      X(x)执行执行该文件(执行必须具备r权限)-切换到文件夹cd
                                                                    • 权限访问控制列表(ACL access controll list)

                                                                    在这里插入图片描述

                                                                    • 命令

                                                                      # 查看权限
                                                                      
                                                                        ls -la 文件
                                                                        ll 文件
                                                                        
                                                                          # 设置文件所有者
                                                                          
                                                                            语法:chown [-R] user名:group名 文件名
                                                                            参数:-R 如果是文件夹,需要使用这个参数,可以将文件夹及其内部所有文件的所有者和组全部修改
                                                                            注意:命令权限需要root
                                                                            ## 修改文件所有者
                                                                            	chown 用户名 文件名
                                                                            ## 修改文件所属组
                                                                            	chown :组名 文件名
                                                                            ## 修改文件所有者和所属组
                                                                            	chown 用户名:组名 文件名
                                                                            ## 修改文件夹的所有者和所属组
                                                                            	chown [-R] 用户名:组名 文件夹
                                                                            
                                                                              # 权限设置1
                                                                              
                                                                                语法:chmod u±rwx,g±rwx,o±rwx 文件名
                                                                                运算符:
                                                                                	- 删除权限
                                                                                	+ 添加权限
                                                                                	= 赋值权限
                                                                                ## 给文件的所有者添加执行权限
                                                                                chmod u+x 文件名
                                                                                ## 给文件的其他人删除所有权限
                                                                                chmod o-rwx 文件名
                                                                                ## 给文件的所属组设置读写权限
                                                                                chmod g=wx 文件名
                                                                                
                                                                                  # 权限设置2
                                                                                  

                                                                                  在这里插入图片描述

                                                                                  # 文件的每个归属方的权限的值使用rwx之和计算出来的。
                                                                                  # 语法
                                                                                  	`chmod [-R] nnn 文件` 
                                                                                  	-R 递归设置文件夹内所有文件
                                                                                  # 设置文件的权限为(所有者可读可写可执行,所属组可读可写,其他人可读)
                                                                                  	chmod 764 文件名
                                                                                  

                                                                                    系统软件管理

                                                                                    压缩解压缩

                                                                                    压缩语法:tar -zcvf 压缩后文件名 被压缩文件

                                                                                    解压缩语法 tar -zxvf 压缩文件名 -C 解压后文件所在目录

                                                                                    参数1:

                                                                                    参数描述
                                                                                    -z操作tar.gz文件需要使用
                                                                                    -x解压缩
                                                                                    -c压缩
                                                                                    -v显示压缩或者解压缩的执行过程信息
                                                                                    -f要处理的文件file,必须放在最后

                                                                                    参数2:-C 指定解压后的文件存放的位置

                                                                                    rpm软件

                                                                                    简介:类似于windows中的.exe程序

                                                                                    1. 安装rpm软件
                                                                                      语法:`rpm -ivh xxx.rpm`
                                                                                    2. 查看系统中是否已安装的过该rpm软件
                                                                                      语法:`rpm -qa 软件名`
                                                                                    3. 卸载rpm软件
                                                                                      语法:`rpm -e 软件名`
                                                                                    4. 例子:安装tree工具
                                                                                      作用:查看某个目录下的文件信息
                                                                                      # 以树状结构查看2层文件信息
                                                                                      tree -L 2 要查看的路径
                                                                                    

                                                                                      yum

                                                                                      yum基于rpm实现的,提供了除了rpm的安装软件、卸载软件等功能以外还有,自动查找、下载软件并自动处理软件的彼此之间的依赖关系,下载并安装依赖包。

                                                                                      ## 列出所有可以安装的软件包
                                                                                      	yum list
                                                                                      ## 安装软件
                                                                                      	yum install -y 软件名
                                                                                      ## 卸载软件
                                                                                      	yum remove 软件名
                                                                                      ## 查找软件包
                                                                                      	yum search all 软件名
                                                                                      

                                                                                        Linux服务

                                                                                        # 例如:sshd network firewalld 等
                                                                                        
                                                                                          # 服务器管理命令
                                                                                          	systemctl status 服务名
                                                                                          # 启动服务
                                                                                          	systemctl start 服务名
                                                                                          # 重启服务
                                                                                          	systemctl restart 服务名
                                                                                          # 停止服务
                                                                                          	systemctl stop 服务名
                                                                                          # 禁止服务随linux启动。
                                                                                          	systemctl disable 服务名
                                                                                          # 设置服务随linux启动。
                                                                                          	systemctl enable 服务名
                                                                                          

                                                                                            ip设置

                                                                                            服务名:network

                                                                                            [root@centos7 dirnew]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
                                                                                            ----------------网卡对应的文件内容---------------------
                                                                                                TYPE="Ethernet"
                                                                                                PROXY_METHOD="none"
                                                                                                BROWSER_ONLY="no"
                                                                                                BOOTPROTO="none"
                                                                                                DEFROUTE="yes"
                                                                                                IPV4_FAILURE_FATAL="no"
                                                                                                IPV6INIT="yes"
                                                                                                IPV6_AUTOCONF="yes"
                                                                                                IPV6_DEFROUTE="yes"
                                                                                                IPV6_FAILURE_FATAL="no"
                                                                                                IPV6_ADDR_GEN_MODE="stable-privacy"
                                                                                                NAME="ens33"
                                                                                                UUID="0bd5d8a5-fe1b-42de-82bd-bfa7d2984b95"
                                                                                                DEVICE="ens33"
                                                                                                ONBOOT="yes"
                                                                                                IPADDR="192.168.199.8" # 修改这里的ip地址即可
                                                                                                PREFIX="24"
                                                                                                GATEWAY="192.168.199.2"
                                                                                                DNS1="192.168.199.2"
                                                                                                DNS2="8.8.8.8"
                                                                                                IPV6_PRIVACY="no"
                                                                                            [root@centos7 dirnew]# systemctl restart network #重启网卡服务
                                                                                            

                                                                                              防火墙

                                                                                              服务名:firewalld

                                                                                              # 开启防火墙
                                                                                              systemctl start 服务名
                                                                                              # 关闭防火墙(服务器重启后还会自动开启防火墙)
                                                                                              systemctl stop firewalld
                                                                                              # 禁止防火墙开机启动
                                                                                              systemctl disable firewalld
                                                                                              

                                                                                                主机名

                                                                                                # 查看主机名
                                                                                                hostname
                                                                                                # 设置主机名
                                                                                                hostnamectl set-hostname 主机名
                                                                                                

                                                                                                  ip映射

                                                                                                  • 域名解析

                                                                                                  • 本地hosts编辑

                                                                                                    [root@centos7 ~]# vim /etc/hosts
                                                                                                    --------------下面是文件------------------
                                                                                                    	192.168.199.8 centos7
                                                                                                    

                                                                                                    SSH

                                                                                                    # 远程登录linux
                                                                                                    ssh 远程linux的ip或者映射域名
                                                                                                    

                                                                                                      免密登录

                                                                                                      # 简介
                                                                                                      ssh登录远程linux,免去输入密码的麻烦
                                                                                                      
                                                                                                        # 生成公钥和私钥
                                                                                                        [root@centos7 ~]# ssh-keygen
                                                                                                        ------------执行结果-----------
                                                                                                            [root@centos7 ~]# tree .ssh
                                                                                                            .ssh
                                                                                                            ├── id_rsa # 私钥
                                                                                                            ├── id_rsa.pub # 公钥
                                                                                                            └── known_hosts
                                                                                                        # 发送公钥
                                                                                                        	`保存公钥的文件为/root/.ssh/authorized_keys`
                                                                                                        [root@centos7 .ssh]# cat id_rsa.pub > authorized_keys
                                                                                                        # 发送公钥
                                                                                                        [root@centos7 .ssh]# ssh-copy-id 目标主机的ip
                                                                                                        

                                                                                                          远程拷贝

                                                                                                          scp 本地的文件 root@远程linuxip:/远程linux的文件路径
                                                                                                          scp -r 本地的目录 root@远程linuxip:/远程linux的文件路径
                                                                                                          

                                                                                                            必要软件安装

                                                                                                            1. vim(vi编辑器增强版)

                                                                                                              vim 文件
                                                                                                              
                                                                                                              • wget(下载器)

                                                                                                                wget url
                                                                                                                
                                                                                                                • tree(目录树状显示)

                                                                                                                  # 以tree结构,递归显示当前文件下所有文件
                                                                                                                  	tree
                                                                                                                  # 显示目标文件夹下的文件
                                                                                                                  	tree 目标目录
                                                                                                                  
                                                                                                                  • psmisc(高级进程管理工具)

                                                                                                                    # 以tree形式显示系统目前进程
                                                                                                                    	pstree
                                                                                                                    # 杀死进程
                                                                                                                    	killall 进程名
                                                                                                                    # 显示该文件被哪个进程使用
                                                                                                                    	fuser /目标文件
                                                                                                                    
                                                                                                                  评论
                                                                                                                  添加红包

                                                                                                                  请填写红包祝福语或标题

                                                                                                                  红包个数最小为10个

                                                                                                                  红包金额最低5元

                                                                                                                  当前余额3.43前往充值 >
                                                                                                                  需支付:10.00
                                                                                                                  成就一亿技术人!
                                                                                                                  领取后你会自动成为博主和红包主的粉丝 规则
                                                                                                                  hope_wisdom
                                                                                                                  发出的红包
                                                                                                                  实付
                                                                                                                  使用余额支付
                                                                                                                  点击重新获取
                                                                                                                  扫码支付
                                                                                                                  钱包余额 0

                                                                                                                  抵扣说明:

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

                                                                                                                  余额充值