linux基本命令学习笔记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

linux基本命令学习笔记


linux基本命令

More

:f 显示当前行数

Less 适用大型文件阅览

= 显示当前详细信息

Echo

-e 支持\命令编译
\n 换行
\t 制表符

Head 显示头部内容

-n 指定显示行数

Tail

-n 显示行数内容
-f 实时追踪文件内容更新

Ctrl+s 暂停监控
Ctrl+q 开始监控

ln -s软连接

pwd -P 显示实际路径

ln 硬链接

date -s 设置时间

+%y+%m+d 年月日
ntpdate 获取网络时间

chmod -R 指定目录下所有文件赋权

chown 更改目录所有者

find

-name 指定名称或者删除方式
-user 指定用户所有文件
-size 大小 -c -b

Locate 快速定位文件位置
updatadb 更新服务器数据

wc 统计命令

zip 压缩文件(可递归压缩)

-r 压缩目录
-d 指定压缩目录

unzip 解压文件

tar

-c 打包
-v 显示详细信息
-f 指定压缩后文件名
-z 打包同时压缩
-x 解压
-C 解压到指定目录

tree
查看目录树

du 查看磁盘占用大小

-h 以容易阅读的格式显示出来
-a 显示目录以及文件大小
-c显示所有文件和子目录大小,显示总和
-s 只显示总大小
–max-depth= 显示统计到第几层

磁盘命令

df -h 查看磁盘占用大小

lsblk -l 显示当前磁盘挂载情况
-f 查看uuid

/etc/fstab 加入uuid开机自动挂载

硬盘分区操作

fdisk -l 查看分区详细情况
fdisk 分区硬盘
n 开始分区
p 主分区
w 保存退出

分区完成需要格式化分区,才能初始化。
mkfs -t xfs 格式化

格式化完了需要挂载

进程命令

Ps 查看系统进程
a 显示带终端的进程
u 友好显示风格
x 显示当前用户所有进程
-e 显示所有进程
-u 显示指定用户进程

Top 实时监控进程

netstat 显示网络详细信息

netstat -anp | grep 进程号 查看进程网络信息
netstat -nlp | 端口号 查看端口状态
-a
-n拒绝显示别名,只显示数字
-l 只列出监听服务状态
-p 显示哪个进程在调用

crontab 系统定时任务

systemctl restart crond 重启服务

-e编辑任务内容
-l 查询任务
-r 删除所有任务

*/n 每个多久执行一次

格式: * * * * * 任务 (分钟小时月*星期几)

例子: */1 * * * * echo “hello!” >>/home/test 每隔一分钟写入hello

软件包管理

rpm
-ivh 软件包全名 安装软件
-qa 查询当前安装的软件包
-qi 软件名 查询安装软件信息
-e 软件包 卸载软件包
–nodeps 不检查依赖,强行卸载

yum 软件包管理

yum -y
install 安装
remove 卸载
list 显示已安装软件

read读取控制台输入

read (选项)(参数)
-p读取值时的提示符
-t 指定读取值等待的时间

系统函数

basename 取路径里的文件名
语法:basename 文件名 加上后缀则删掉后缀

dirname 获取绝对路径名

Shell 命令

env 查看当前用户环境变量
set 查看全局变量
export 变量名 变成全局变量
readonly 变量名=变量值 只读变量
unset 变量名 撤销变量

$n n代表数字 代表几个参数
$# 获取输入参数个数
$* 获取所有参数(把参数看成一个整体)
$@ 获取所有参数 (区分每个参数)
$? 最后执行的一个命令返回值 0是正常返回

运行符

$((运算式)) $[运行式]

条件判断

[ 判断式 ] 中括号一定要有空格
-eq 等于
-lt 小于
-gt 大于
-r 是否有可读权限
-w 是否有可写权限
-x 是否有可执行权限
-e 文件是否存在
-d 目录是否存在

&& 都满足
|| 满足一个
-z是否为空

流程控制

if判断 语法:
if [条件判断]
then
程序
elif [条件判断]
then
程序
fi

case 判断 语法:

case $变量名 in
“值1”)
如果为值1执行这条程序;;
“值2” )
如果为值2执行这条程序;;
如果都不是执行这条程序
esac

for循环

语法1:
for ((初始值;循环控制条件;变量变化))
do
程序
done

语法2:
for 变量 in {值1 值2 值3}
do
程序
done

while

while (判断语句)
do
程序
done

正则表达式

^ 匹配一行的开头字符
grep ^root
$ 匹配一行的结尾字符
grep root$
. 匹配一个任意字符
grep r…

  • 匹配任意一个出现字符的一行
    grep roo*

^a.*bash$ a开头bash结尾的任意一行

[]
[8,9]匹配8或者9
[0-9]*匹配任意长度的数字符串
[0-9]匹配一个0-9的数字
[a-e,f-z]匹配a-e中的任意字符或者f-e中的任意字符

‘$’ 包含KaTeX parse error: Expected group after '^' at position 5: 的文本 ^̲ 空行

文本处理器

cut 文本剪切器
-f 列号,提取第几列
-d 分隔符
-c 按照字符分割
例子:cut -d “:” -f 1 截取:为分隔 的第一列

例子:ifconfig | grep bro | cut -d " " -f 10 获取ip地址

awk 文本分析器

语法: awk [选项参数] ‘/正则表达式{命令} /正则表达式{命令}’ filename
-F 指定输入分隔符
-v 赋值一个用户定义的变量

cat /etc/passwd | awk -F “:” ‘^root {print $7}’ 找到/etc/passwd里面的root开头的第七列

内置变量

FILENAME 文件名
NR (行号)
NF列数

grep 文本筛选

-i 忽略大小写
-m 匹配第几行

vim 文本编辑器

yy 复制一行 8y 复制8行 y$ 从当前复制到一行的最后 yw 复制一个词语
dd 删除一行 3dd 删除3行 dw删除一个词
p 粘贴 5p 粘贴5行
u 回撤
X 删除一个字
r 替换一个字
^ 一行开头
$ 一行结尾
g 文本开头
G 文本结尾
数字+G 跳转第几行
o 换行输入

:set nu 行号
:%s/文字/替换的文字/g 替换所有匹配的文字

chkconfig --list 显示服务开关状态
systemctl list-unit-files 显示服务是否自启动

nmap -sT查看服务状态

jobs 查看后台运行的程序

vmstat 监控系统资源

vmstart 2 3 语法 2代表2秒 3代表 监控3次

demsg 开机内核检查信息

cat /proc/cpuinfo 查看cup信息

file /bin/ls 查看系统位数

lsb_release -a 查看系统发行版本

lsof 查看进程调用的文件

-u 列出某个用户的进程打开的文件
-p 某个PID进程打开的文件

日志管理

ps aux | grep rsyylogs 查看进程
chkconfig --list | grep rsyslog 查看是否自启动
在这里插入图片描述

lastb 查看错误登录日志
lastlog 查看用户最后一次登录

在这里插入图片描述

last 查看登录信息
who 查看正在登录的用户

日志轮替

dateext 参数 用日期作为日志文件名

logrotate 日志轮替配置文件
在这里插入图片描述
在这里插入图片描述

apache日志轮替
在这里插入图片描述

运行级别

init 3

runlever 查看运行级别

/etc/inittab 配置开机运行级别
在这里插入图片描述

备份
dump
在这里插入图片描述
在这里插入图片描述

恢复备份

在这里插入图片描述

三剑客

grep

-E 支持正则
-A -A5显示匹配内容的前五行
-v 排除
-n 行号
-i 忽略大写小写
-w 精确匹配

ps aux | grep -c ‘[c]rand’

sed

sed的常用选项
-n 只显示匹配处理的行(否则会输出所有)
-e 执行多个编辑命令时(一般用;代替)
-i 直接在文件中进行修改,而不是输出到屏幕
-r 支持扩展正则表达式
-f 从脚本文件中读取内容并执行(文件中的编辑命令每行一个,不用;隔开)
sed的常用编辑命令
p 打印匹配行 print
d 删除指定行 delete
a 在匹配行后面追加append
i 在匹配行前面插入insert
c 整行替换
r 将文件的内容读入 read
w 将文本写入文件 write
s 字符串替换(匹配正则表达式)substitute
= 输出行号

sed格式
sed -r ‘s#old#olds#g’ filename

sed 删除p
‘1p’ ‘2p’ 精确删除多少行
‘1,5p’ 1-5 行
‘/liao/p’ 删除//里的liao ,可以填写正则
‘/10:00/,/11:00/p’ 10点到11点的内容
‘3,$p’ 3行到最后一行

sed 删除 d

‘1d’ ‘2d’ 精确删除多少行
‘1,5d’ 1-5 行
‘/liao/d’ 删除//里的liao ,可以填写正则
‘/10:00/,/11:00/d’ 删除10点到11点的内容
‘3,$d’ 删除3行到最后一行

增加 cai

c 替代
a 行后添加
I 行前添加

语法
sed ‘3c 内容’ 文件名 替换第3行

替换 s
格式
sed ‘s###g’ 文件名

反向引用
在这里插入图片描述

awk

取行
NR==1 取出第一行
NR>=1&&NR<=5 取出第一到第五行

取列
-F 指定分隔符
$数字 第几列
$0 整行
$NF 最后一列
OFS 每一列之间输出什么

模式匹配
比较符号:<>=!
正则
范围表达式

~包含
!~不包含
在这里插入图片描述
在这里插入图片描述

awk数组
在这里插入图片描述
在这里插入图片描述

统计
在这里插入图片描述

if

if

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值