linux常用命令

Linux常用命令

Linux目录结构简介

/bin

目录中存放着最常用的命令

/home

存放普通用户的目录,每个用户都有自己的一个目录,此目录名是以用户的账号命名的。并且要删除用户时需用userdel -r方可删除干净

/root

该目录为系统管理员目录

/etc

系统管理的配置文件和子目录

/usr

用户很多应用程序和文件均放此目录,类似于windows的program files 目录

/boot

这里存放的是启动linux时使用的核心文件,为系统启动目录

/media

外部插入的设备均挂载在此目录,如u盘,光驱等。

/mnt

进行临时挂载时可以用此目录

/opt

一般安装用户安装文件均可放在此目录,默认为空

/var

目录中不断增长着文件,会将经常修改的目录放在此目录,包含各种日志文件

linux的网络配置模式

一般模式命令

语法 功能描述
yy 复制光标当前一行
y数字y 复制一段(从第几行到第几行)
p 箭头移动到目的行粘贴
u 撤销上一步
dd 删除光标当前行
d数字d 删除光标(含)后多少行
x 删除一个字母,相当于del,向后删
X 删除一个字母,相当于Backspace,向前删
yw 复制一个词
dw 删除一个词
^ 移动到行头
$ 移动到行尾
gg或者1+G 移动到页头
G 移动到页尾
数字+G(先输入数字,在按G) 移动到目标行

编辑模式命令

按键 功能
i 当前光标前
a 当前光标后
o 当前光标行的下一行
I 光标所在行最前
A 光标所在行最后
O 当前光标行的上一行

命令模式

命令 功能
:w 保存
:q 退出
:! 强制执行如:wq! 强制保存退出 ,q! 强制不保存退出
: %s/旧字符/新字符 批量替换
/ 要查找的词 n 查找下一个,N 往上查找
? 要查找的词 n是查找上一个,N是往下查找
:set nu 显示行号
:set nonu 关闭行号

Centos7后台自启服务配置

systemctl list-unit-files (功能描述:查看所有服务器自启配置)

systemctl disable 服务名 (功能描述:关掉指定服务的自动启动)

systemctl enable 服务名 (功能描述:开启指定服务的自动启动)

systemctl is-enabled 服务名(功能描述:查看服务开机启动状态)

Linux系统中为了提高磁盘的读写效率,对磁盘采取了 “预读迟写”操作方式。当用户保存文件时,Linux核心并不一定立即将保存数据写入物理磁盘中,而是将数据保存在缓冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是,也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导致数据丢失。使用sync指令可以立即将缓冲区的数据写入磁盘。

关机之前建议使用 sync命令 (功能描述:将数据由内存同步到硬盘中)

df 查看磁盘空间使用情况

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oNDwyjFl-1641553911385)(C:\Users\jcm\AppData\Roaming\Typora\typora-user-images\image-20211207101445826.png)]

top 命令

-d 秒数 指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:
-i 使top不显示任何闲置或者僵死进程。
-p 通过指定监控进程ID来仅仅监控某个进程的状态。
操作 功能
P 以CPU使用率排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top

ps 查询进程命令

ps -aux | grep xxx (功能描述:查看系统中所有进程)

ps -ef| grep xxx (功能描述:可以查看子父进程之间的关系)

选项 功能
-a 选择所有进程
-u 显示所有用户的所有进程
-x 显示没有终端的进程

3)功能说明

(1)ps -aux显示信息说明

​ USER:该进程是由哪个用户产生的

​ PID:进程的ID号

​ %CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源;

​ %MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;

(2)ps -ef显示信息说明

​ UID:用户ID

​ PID:进程ID

​ PPID:父进程ID

netstat 显示网络统计信息和端口占用情况

1)基本语法

​ netstat -anp|grep 进程号 (功能描述:查看该进程网络信息)

​ netstat -nlp|grep 端口号 (功能描述:查看网络端口号占用情况)

选项 功能
-n 拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出有在listen(监听)的服务状态
-p 表示显示哪个进程在调用

crond 系统定时任务

-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务

参数说明

[root@hadoop101 ~]# crontab -e

(1)进入crontab编辑界面。会打开vim编辑你的工作。

* * * * * 执行的任务

表1-47

项目 含义 范围
第一个“*” 一小时当中的第几分钟 0-59
第二个“*” 一天当中的第几小时 0-23
第三个“*” 一个月当中的第几天 1-31
第四个“*” 一年当中的第几月 1-12
第五个“*” 一周当中的星期几 0-7(0和7都代表星期日)

(2)特殊符号

表1-48

特殊符号 含义
* 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。
代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令
- 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令
*/n 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令

(3)特定时间执行命令

表1-49

时间 含义
45 22 * * * 命令 在22点45分执行命令
0 17 * * 1 命令 每周1 的17点0分执行命令
0 5 1,15 * * 命令 每月1号和15号的凌晨5点0分执行命令
40 4 * * 1-5 命令 每周一到周五的凌晨4点40分执行命令
*/10 4 * * * 命令 每天的凌晨4点,每隔10分钟执行一次命令
0 0 1,15 * 1 命令 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。

rpm常用命令

rpm -e 删除文件

rpm -e --nodeps 删除文件以及文件的依赖

rpm -qa 查询所安装的所以rpm软件包

rpm -ivh 安装rpm文件

选项 功能
-i -i=install,安装
-v -v=verbose,显示详细信息
-h -h=hash,进度条
–nodeps –nodeps,不检测依赖进度

yum常用命令

参数 功能
install 安装rpm软件包
update 更新rpm软件包
check-update 检查是否有可用的更新rpm软件包
remove 删除指定的rpm软件包
list 显示软件包信息
clean 清理yum过期的缓存
deplist 显示yum软件包的所有依赖关系
选项 功能
-y 对所有提问都回答“yes”

chown -R :: 改变所拥有用户以及拥有组

find 查找文件或者目录

选项 功能
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名> 查找属于指定用户名所有文件
-size<文件大小> 按照指定的文件大小查找文件。

(1)按文件名:根据名称查找/目录下的filename.txt文件。

[root@hadoop101 ~]# find xiyou/ -name “*.txt”

(2)按拥有者:查找/opt目录下,用户名称为-user的文件

[root@hadoop101 ~]# find opt/ -user atguigu

​ (3)按文件大小:在/home目录下查找大于200m的文件(+n 大于 -n小于 n等于)

[root@hadoop101 ~]find /home -size +204800

9.1 cut

cut的工作就是“剪”,具体的说就是在文件中负责剪切数据用的。cut 命令从文件的每一行剪切字节、字符和字段并将这些字节、字符和字段输出。

*1)基本用法*

cut [选项参数] filename

说明:默认分隔符是制表符

*2)选项参数说明*

选项参数 功能
-f 列号,提取第几列
-d 分隔符,按照指定分隔符分割列
-c 指定具体的字符

*3)案例实操*

(1)数据准备

[atguigu@hadoop101 datas]$ touch cut.txt

[atguigu@hadoop101 datas]$ vim cut.txt

dong shen

guan zhen

wo wo

lai lai

le le

(2)切割cut.txt第一列

[atguigu@hadoop101 datas]$ cut -d " " -f 1 cut.txt

dong

guan

wo

lai

le

(3)切割cut.txt第二、三列

[atguigu@hadoop101 datas]$ cut -d " " -f 2,3 cut.txt

shen

zhen

wo

lai

le

(4)在cut.txt文件中切割出guan

[atguigu@hadoop101 datas]$ cat cut.txt | grep “guan” | cut -d " " -f 1

guan

(5)选取系统PATH变量值,第2个“:”开始后的所有路径:

[atguigu@hadoop101 datas]$ echo $PATH

/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/atguigu/bin

[atguigu@hadoop102 datas]$ echo $PATH | cut -d: -f 2-

/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/atguigu/bin

(6)切割ifconfig 后打印的IP地址

[atguigu@hadoop101 datas]$ ifconfig eth0 | grep “inet addr” | cut -d: -f 2 | cut -d" " -f1

192.168.1.102

9.2 awk

一个强大的文本分析工具,把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行分析处理。

1)基本用法

awk [选项参数] ‘pattern1{action1} pattern2{action2}…’ filename

pattern:表示AWK在数据中查找的内容,就是匹配模式

action:在找到匹配内容时所执行的一系列命令

2)选项参数说明

选项参数 功能
-F 指定输入文件折分隔符
-v 赋值一个用户定义变量

3)案例实操

(1)数据准备

[atguigu@hadoop102 datas]$ sudo cp /etc/passwd ./

(2)搜索passwd文件以root关键字开头的所有行,并输出该行的第7列。

[atguigu@hadoop102 datas]$ awk -F: ‘/^root/{print $7}’ passwd

/bin/bash

(3)搜索passwd文件以root关键字开头的所有行,并输出该行的第1列和第7列,中间以“,”号分割。

[atguigu@hadoop102 datas]$ awk -F: ‘/^root/{print $1","$7}’ passwd

root,/bin/bash

注意:只有匹配了pattern的行才会执行action

(4)只显示/etc/passwd的第一列和第七列,以逗号分割,且在所有行前面添加列名user,shell在最后一行添加"dahaige,/bin/zuishuai"。

[atguigu@hadoop102 datas]$ awk -F : ‘BEGIN{print “user, shell”} {print $1","$7} END{print “dahaige,/bin/zuishuai”}’ passwd

user, shell

root,/bin/bash

bin,/sbin/nologin

。。。

atguigu,/bin/bash

dahaige,/bin/zuishuai

注意:BEGIN 在所有数据读取行之前执行;END 在所有数据执行之后执行。

sort

sort命令是在Linux里非常有用,它将文件进行排序,并将排序结果标准输出。

*1)基本语法*

sort(选项)(参数)

选项 说明
-n 依照数值的大小排序
-r 以相反的顺序来排序
-t 设置排序时所用的分隔字符
-k 指定需要排序的列
上一篇:Linux基础学习(三)


下一篇:linux命令cut