一、Linux基础命令

关闭Linux服务 halt

重启 reboot

查看当前用户 whoami

切换到用户 test1 sutest1

修改当前用户密码为123 : passwd 123

切换目录: cd /*

查看文件夹: ls

创建文件夹: mkdir

查看当前路径: pwd

创建文件: touch

查看文件内容: cat

追加内容 >>

拷贝内容 cp -r -r代表也对文件夹子目录操作

移动文件 mv

删除文件 rm

查找文件 find

管道符 | 作用是前边的输出代表后边的输入

xargs

二、Linux高级命令

1、grep

统计操作

grep 参数 ‘ ’ 文件名

-c 计数

-e 连续多个命令

-i 忽略大小写

-v反转,即显示不符合条件的

ps aux 显示所有进程、可以与高级命令配合使用

2、sed

编辑操作

-n 静默模式,只会显示更改的行

sed ‘ n1,n2 d ’ 代表删除第一到第二行($代表最后一行)

换行需要输入 \ 后再按回车即可

d 删除

a 新增(后可以接字符串)

c 取代(后可以接字符串)

i 插入(后可以接字符串)

p 查看

3、awk

作用于文本分析

last -n5 | awk ‘{print %1}’ 代表只显示第1列

last -n5 | awk ‘{print %1“x”%2}’ 代表显示第一列到第二列并且以x为分隔符

-F也是指定分隔符

BEGIN{ print } 前置操作

END { print } 后置操作

4、seq

用于计数

seq 1 5 展示一到五

seq 1 2 10 展示一到十,步长为2

-w 可以实现自动补0

%2g 规定最小位数

5、cut (简化版awk)

cut -f 1 显示第1列

-complement 取反

-d 指定分隔符

cut -f 1 123.txt 456.txt 将两个文件的第一列合并展示

6、sort

排序

-b 忽略空格

-c 检查是否已经排序

-f 忽略大小写

-d 只处理数字字母空格

-n按照数值大小排序

-r 取反

-t 设置分隔符

-k 指定列

-u 去重

7、去重

uniq

-i 忽略大小写

-c 统计重复次数

-d 只展示重复的内容

8、wc

做文本统计

-l 查看行数(按照换行符统计)

-m 字符统计

-w 只统计英文单词

三、linux软件安装与使用

1、软件的组成

二进制文件:也就是可以运行的程序文件

库文件:就是通常我们见到的 lib 目录下的文件

配置文件:软件运行过程中用的一些值作为可改动的参数记录在文件中

帮助文档:通常是我们在 Linux 下用 man 命令查看的命令的文档

2、软件的安装

1、源码安装

  • 下载对应的源码包,一般是tar.gz结尾的文件。
  • 解压缩 命令为 tar -zxvf
  • 进入解压完的目录后 ./configure (如果有makefile就不需这步)
  • make (编译代码)
  • make install (安装)
  • make clean (删除临时文件)

2、bin二进制安装

  • 下载好文件后解压缩
  • 配置环境变量

3、rpm安装(基本被yum取代)

  • 注意的是rpm不会自动处理包依赖

4、yum安装(重点)

yum -y install 软件名

列出所有可更新的软件清单的命令:yum check-update

更新所有软件命令:yum update

仅安装指定的软件命令:yum install package_name

仅更新指定软件的命令:yum update package_name

列出所有可安装的软件清单命令:yum list

删除软件包命令:yum remove package_name

清除缓存命令:

yum clean packages 清除缓存目录下的软件包

yum clean headers 清除缓存目录下的 headers

yum clean oldheaders 清除缓存目录下旧的 headers

yum clean,yum clean all(=yum clean packages;yum clean oldheaders)

清除缓存目录下的软件包及旧的 headers

四、SSH无密码登录

1、密码登录

  • 客户端发出授权请求,服务端要求输入密码验证
  • 服务器将公钥发送给客户端
  • 客户端用公钥加密自己的密码,返回给服务端
  • 服务端用私钥解密,如果正确就建立连接

潜在问题 :可能存在中间人假扮服务器骗取密码

2、密钥登录

  • 客户端生成公钥和私钥,将公钥发送给服务端
  • 服务端将公钥加入授权列表
  • 客户端发送请求时先检查授权列表里有没有,并用公钥加密随机字符串发送给客户端
  • 客户端用私钥解密并返回给服务器
  • 进行比对判断是否正确

五、用户、分组概念

Linux是多用户多任务操作系统、按照用户角色划分

用户和组的对应关系可以是一对一 一对多 多对一

1、常用命令

useradd 123 // 新建123用户

passwd 456 // 给用户设置密码为 456

id 123 // 显示用户信息

groupadd 111 // 创建用户111

usermod -g 111 123 // 给用户123添加用户组111

userdel 删除用户

userdel 彻底删除用户