Back End

Linux命令

PineappleCat · 10月16日 · 2021年 65次已读

WIN10插件与软件太多不适合生产与测试环境。

  • 测试环境:在开发环境编写的程序,需要在测试环境下运行通过
  • 沙箱环境:将测试环境通过的程序,在沙箱环境下再次测试
  • 生产环境:将沙箱环境通过的程序,部署到生产环境,面向用户

1.Linux与Wins的区别

  • Linux严格区分大小写
  • Linux文件没有后缀名
    • 有一些约定的后缀名
      • 启动文件 sh
      • 配置文件 conf、yml、properties
      • 日志文件 log、out
      • 压缩文件 tar.gz、tgz、tar
  • Linux一切内容都是文件
  • Wins的大多数内容无法运行在Linux

2.Linux的目录结构

从/根目录下 ,有其他子目录

3.目录命令

命令 [-选项] [参数]

  • 清空屏幕 clear
  • 查看ip地址 ip address
  • 强制停止 Ctrl C

3.1 切换目录

cd : 切换目录

  • 回到当前登录的用户目录 cd ~
  • 返回之前所在目录 cd -
  • 返回上一级目录 cd ..
  • 当前目录 .
  • 打印当前目录 pwd

3.2 目录列表

ls : 查看当前目录下的列表信息

  • ls -al
  • -a :查看全部文件,包含隐藏文件-l :查看文件的长信息,权限等

3.3 目录的创建

mkdir:创建目录

  • mkdir -p xxx/xxx/xx
  • -p:创建多级目录

3.4 移动/重命名目录

  • mv oldName newName存在第二个参数文件表示移动
  • mv file directory不存在第二个参数的文件,表示重命名

3.5 复制目录

cp:复制目录

  • cp -r source dest
  • -r : 递归复制目录

3.6 删除目录

rm:删除目录

  • rm -rf xx
  • -r :递归删除目录-f :不会询问删不删除

4.文件命令

4.1 创建文件

touch:创建文件

4.2 查看文件

  • 正常查看 cat xx
    • cat -n 文件名 | more :显示行号+分页显示
  • 倒着查看 tac xx
  • 查看文件最后几行 tail -n number xx
  • 实时监控文件的更新 tail -f xx
  • 查看文件前几行 head -n number xx
  • 查看大文件,全屏按页显示,空格翻页more xx
  • 查看大文件,依据显示加载文件,↑和↓查看 less xx

4.3 编辑文件

  • vi进入查看
  • i进行编辑
  • esc退出编辑
  • wq,ZZ保存冰退出
  • q!不保存退出

4.4 其他

移动、重复名,复制,删除同目录操作。

4.5 >和>>

  • >输出重定向:将原来的文件内容覆盖
  • >>追加,追加到文件的尾部
    • ls -al >> a.txt 将ls -al显示的内容追加到a.txt

4.6 echo

  • 输出内容到控制台
    • echo $PATH(环境变量)

4.7 ln 软链接

  • 在/home目录下创建一个软链接link,链接到/root目录
  • cd /home
  • ln -s /root link
  • 删除软链接
  • rm -f link

4.8 history

  • 查看历史命令 history
  • history 10: 显示最近使用过的10个指令
  • 执行历史的某一个指令:!number

5.压缩和解压包

5.1 gzip\gunzip

  • 压缩
    • gzip a.txt
    • 不会保留原文件
  • 解压
    • gunzip a.txt.zip

5.2 zip\unzip

  • 压缩
    • zip a.txt
    • zip -r a.zip /home
    • 不会保留原文件
  • 解压
    • unzip -d /dest a.zip

5.3 tar

命令:tar -zxcvf 压缩包名称……

  • -z:代表压缩包以gz为结尾的。
  • -x:代表解压
  • -c:代表打包
  • -v:代表打印解压/打包详细信息
  • -f:代表指向压缩包文件(必须放在最后,后面必须跟压缩包文件)

打包:tar -zcvf 压缩包名称 文件1 文件2 目录1 目录2 ……

解压:tar -zxvf 压缩包名称 [-C 存在的目录]

6.进程命令

查看进程:ps -ef | grep more

查看进程:ps -aux | grep more

查询具体的进程:ps -ef | grep mysql

杀死进程:kill -9 进程的pid -9:强迫进程立即停止

查看进程树:

  • 显示进程的PID:pstree -p
  • 显示进程的用户id:pstree -u

查看端口号占用情况:

访问Web地址:curl 地址(域名,ip:port)

7.权限命令

前面的rwx..在管理文件的读写执行权限

  • 前面的读写执行分组三组rwx,r-读,w-写,x-执行
  • 第一个rwx:代表拥有者的读写执行权限
  • 第二个rwx:代表同组用户的读写执行权限
  • 第三个rwx:代表其他用户的读写执行权限

后面的root root在管理文件的拥有者所属组的情况

7.1 修改rwx

采用数字形式(个人推荐):chmod [-R] 777 文件名

采用字母&符号形式(大佬这么用):chmod a u g o + - = r w x 文件名

  • a = all 全部,u = user 拥有者,g = group 所属组,o = other 其他用户
  • + = 额外添加权限,- = 扣除某些权限,= = 替换权限

7.2 修改拥有者和所属组

修改拥有者:chown [-R] 拥有者:所属组 文件/目录

修改所属组:chgrp [-R] 所属组 文件/目录

8.Vi 和 Vim编辑器

  • vi 文本编辑器
  • Vim 程序编辑器

8.1 三种模式

  • 正常模式
    • 只能查看不能修改
  • 插入模式
    • i进入
  • 命令行模式
    • ESC退出插入模式,再输入:+具体命令。

8.2 快捷键

正常模式下:

  • 拷贝当前行yy,拷贝当前行下的5行5yy,粘贴p
  • 删除当前行dd,删除当前行下的5行5yy
  • 到文件的最顶 gg、最末G
  • 插入完后撤销插入的动作 u

命令行模式下:

  • :/关键字,回车查找,n查找下一个,N查找上一个
  • 文件行号 :set nu :set nonu

9.开机、重启和用户登录注销

9.1 关机和重启

  • 关机
    • shutdown -h now
    • halt
    • shutdown -h 1 一分钟后关机
  • 重启
    • shutdown -r now
    • reboot
  • sync 内存的数据同步到磁盘,先执行再关机,防止数据丢失。

9.2 用户登录和注销

  • 注销用户
    • logout
  • 切换用户
    • su -用户名

10.用户管理

Linux是一个多用户多任务的系统,用户需要先申请账户,每个账户有所属的组。

10.1 添加用户

  • useradd 用户名 (自动创建和用户名一致的家目录)
  • useradd -d 指定家目录 用户名

10.2 指定或修改用户密码

  • passwd 用户名

10.3 删除用户

  • userdel 用户名 (删除用户但保存家目录)
  • userdel -r 用户名 (全部删除)

10.4 查询用户

  • id 用户名
  • 显示的数据为:用户id 组id 组名

10.5 切换用户

  • su – 用户名
  • 返回原来的用户:exit

11.用户组管理

11.1 添加用户组

  • groupadd 组名

11.2 删除用户组

  • groupdel 组名

11.3 添加用户时加上组名

  • useradd -g 用户组 用户名

11.4 修改用户的用户组

  • usermod -g 用户组 用户名

11.5 /etc/passwd文件

  • 记录全部用户的各种信息

11.6 /etc/group文件

  • 记录全部组的各种信息

12.找回root密码

进入到单用户模式使用passwd root修改root密码

切换运行级别的指令

  • init [0 1 2…]

13.帮助指令

13.1 man 获得帮助信息

  • man 命令(ls)

13.2 help 获得功能描述

  • help 命令(cd)

14.时间命令

14.1 date 显示当前日期

  • date 设置系统时间
    • date -s “2020-11-11 00:00:00”

14.2 cal 显示当前日历

  • cal 2020 显示某一年的日历

15.搜索查找

15.1 find

  • 从指定目录递归遍历各个子目录,将满足的文件或目录显示在终端
  • find [搜索范围] [-name 文件名[*.txt]] [-user 用户名] [-size [+n n -n]]

15.2 locate

快速定位文件路径,无需遍历整个文件系统,查询速度较快

  • updatedb
  • locate hello.txt

15.3 grep和管道指令 |

  • grep:过滤查找
  • |:将前一个命令的处理结果传递给后面的命令处理
  • 在文件中查找具体的单词
    • cat a.txt | grep -ni yes
    • -ni 显示行号和忽略大小写

16.crontab任务调度

  • 编辑定时任务
    • crontab -e
    • 输入任务 定时规则cron 定时的任务
  • 列出当前所有的定时任务
    • crontab -l
  • 删除当前用户所有的任务调度
    • crontab -r
  • 重启任务调度
    • service crond restart

17 Linux磁盘管理

  • 查询系统磁盘整体使用情况
    • df -lh
  • 查询指定目录的磁盘占用情况
    • du -h 目录

18.开机流程

19.rpm包管理

查看已经安装的软件(redhat):

卸载已经安装的软件(redhat):

20.yum包管理

  • 查询yum服务器是否有需要安装的软件
    • yum list | grep xx
  • 安装指定的yum包
    • yum install xx

21.Shell基本编程

操作Linux。

21.1 脚本要求

  • 以#!/bin/bash开头
  • 有可执行的权限
  • 文件类型 xx.sh

21.2 执行方式

  • 赋予可执行的权限 chmod 777 xx.sh
  • 执行脚本
    • 相对路径 ./xx.sh
    • 绝对路径 /root/xx.sh

Click here to view the copyright notice of this site(点击此处查看本站版权声明)
0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!