一.Linux基本结构
1.Linux中的文件目录
A.文件夹就是目录
B.linux的目录结构:
Bin:全称是binary,含义是二进制,该目录存储的是二进制文件,文件都是可以被执行的
dev:全称是device 该目录存放的是外接设备,如硬盘,其它外接设备是不能直接使用的,需要挂载(类似于windows的分配盘符)
etc:该目录存放的是配置文件
Home:除了root用户以外用户的家目录
Proc:process,表示进程,linux运行时的进程
root:该目录是root用户自己的家目录
Sbin: super bin,该目录存储一些可以被执行的二进制文件,但必须有super权限才可以执行
tmp:temporary当系统运行时产生的临时文件会在这个目录中存着
usr: 用户自己安装的软件
var:存放程序或者系统的日志
mnt:
2.终端组成部分以[root @ localHost 桌面]#为例:
root:登录终端的用户
@:在
localHost:当前登录的主机名
桌面:当前工作目录
#:#代表根目录,$代表其他用户
3.相对路径和绝对路径
A.相对路径是以‘.’开头的,绝对路径是以‘/’开头
B. /:代表根路径 ./代表当前路径 …/代表上级路径
C. ./可以不写
二.常用命令
1.ls
ls对应的英文单词是list,列出当前「目录」的所有文件
-l:以详细列表的形式展示
-a:显示所有的信息,包括隐藏文件
-h:显示文件大小
2 pwd:print working directory,输出当前工作目录
3.cd:
A.change directory ,改变工作目录
B.cd ~:进入root
4 mkdir:
make directory 创建工作目录
A.在系统中蓝色代表文件夹,黑色代表文件
B.创建多级「不存在」的目录时要使用 -p
C. 支持创建多个文件目录
D.mkdir 是创建目录,touch是创建文件
5.touch:创建文件
6.cp命令
A.cp是copy的缩写,类似于复制命令
B.复制文件: cp 文件当前路径 文件目标路径
复制目录(文件夹):cp -r 目录当前路径 目录目标路径,记得加上 -r
7.mv命令
A. mv是move的缩写,作用一:剪切 作用二:重命名
B. mv 当前文件/目录路径 目标文件/目录,重命名和剪切一样
8.rm命令
A. rm是remove的缩写,删除目录或文件
B. -f 代表强制删除
-r 代表递归删除
C.删除目录:使用rm -r进行递归删除,但正如我们平常删除文件夹一样,直接就删除了不会每次都进行询问,所以删除目录是 rm -rf 来强制删除
D.删除目录下有相同特征的文件? 使用正则表达式* rm -f l*.txt的含义是删除以l开头的所有TXT文件,
其他正则表达式也可以用
E.可以同时选择多个操作对象进行删除
9.输出重定向:
A.>:覆盖 >>追加
B.格式: 命令 >/>> 文件路径
10.cat命令
A.cat是concatenate的缩写,
B.作用一:直接打开一个文件,类似于vim
作用二:合并文件 cat 文件1的路径 文件2的路径 …>合并后的文件路径
三.系统命令
1.df命令:disk file, df -h查看磁盘使用状况
2.free命令: free -h 查看内存使用状况
A.centos6和centos7是不一样的
B.used=total-free-buff/cache
C.swap是虚存
D.buff:输出占用的内存
cache:输入占用的内存
记忆:cache是快速读取,所以是输入时占用的内存
3.head命令
A. head -n:显示前N行内容
tail命令
A.用法类似于head命令,tail -n 操作对象 用来显示操作对象的最后几行
B. tail -f 操作对象,用来显示操作对象新添加的内容,不过必须要使用重定向来输入
less 命令:
A.以尽可能少的内容进行显示
B.按住上下键来查看更多,输入q来退出
wc命令
A.统计文件中行数、单词个数(依照空格数来判断)、字节个数
B. wc -l:统计文件中行数
wc -w:统计文件中单词个数
wc -a:统计文件中字节个数
date命令:
A.输出时间:date “+%Y-%m-%d %H:%M:%S”
注意:一定要用分号
%F:表示完整的年月日
%T:表示完整的时分秒
%Y:表示四位年份
%m:表示两位月份(带前导0)
%d:表示日期(带前导0)
%H:表示小时(带前导0)
%M:表示分钟(带前导0)
%S:表示秒数(带前导0)
注意:M是分钟,m是月份
B.
语法1:date 输出的形式:2018年 3月 24日 星期六 15:54:28
语法2:#date +%F (等价于#date “+%Y-%m-%d” ) 输出形式:2018-03-24
语法3:#date “+%F %T” 引号表示让“年月日与时分秒”成为一个不可分割的整体
等价操作#date “+%Y-%m-%d %H:%M:%S”
输出的形式:2018-03-24 16:01:00
C.
获取之前或者之后的某个时间(备份)
#date -d “-1 day” “+%Y-%m-%d %H:%M:%S”
符号的可选值:+(之后) 或者 - (之前)
单位的可选值:day(天)、month(月份)、year(年)
cal命令
A.calendar,用来操作日历的
B.
语法1:#cal 等价于 #cal -1 直接输出当前月份的日历
语法2:#cal -3 表示输出上一个月+本月+下个月的日历
语法3:#cal -y 年份 表示输出某一个年份的日历
grep命令:
A.“过滤”、“扩展处理”
B.过滤:
ls / | grep y:输出当前文件夹中以’y’的文件和目录
针对上面这个命令说明:
①以管道作为分界线,前面的命令有个输出,后面需要先输入,然后再过滤,最后再输出,通俗的讲就是管道前面的输出就是后面指令的输入;
C.扩展处理
输出目录下文档总个数: ls / | wc -l
hostname 命令:
作用:操作服务器的主机名(读取、设置)
语法1:#hostname 含义:表示输出完整的主机名
语法2:#hostname -f 含义:表示输出当前主机名中的FQDN(全限定域名)
id命令:
A.查看一个用户的基本信息
语法1:#id 默认显示当前执行该命令的用户的基本信息
语法2:#id 用户名 显示指定用户的基本信息
uid是用户信息,gid是用户组信息
B.可以通过配置文件(ETC)来进行验证
验证用户信息:通过文件/etc/passwd:cat /etc/passwd | grep root :查看root用户的信息
验证用户组信息:通过文件/etc/group
ps命令:
A. ps -ef显示进程的信息
B.
UID:进程名称
PID:进程id
PPID:父进程id
C:cpu占用比例
STIME:启动时间
TTY:发起该进程的设备识别号,如果显示“?”表示并不是终端设备发起的
Time:进程运行时间
CMD:进程名称或对应路径
C.查找特定的进程
ps -ef | grep “进程名称”
top命令:
A.动态显示进程的所占用的资源
B.按q退出
C.
PID:进程ID
USER:用户名
PR:优先级
VIRT:虚存
RES:常驻内存
SHR:共享内存
进程所占内存=常驻内存-共享内存
S:进程状态(S是睡眠态,R是运行态)
%CPU:该进程占CPU的百分比
%MEN: 该进程占内存的百分比
TIME+:进程运行的时间
COMMAND:进程名称或路径
D.
M:将结果按照内存(MEM)降序排列;
P:结果按照CPU使用率(CPU)降序排列;
du -sh命令:
A.disk usage summary ,-h是以合适的大小进行显示,作用是查看目录的大小
find命令:
A.
语法:#find 路径范围 选项 选项的值
选项:
-name:按照文档名称进行搜索(支持模糊搜索)
-type:按照文档的类型进行搜索
文档类型:“-”表示文件(在使用find的时候需要用f来替换),“d”表示文件夹
B.
a.查找root目录下所有的以.TXT结尾的文件
find /root -name “*.txt”
b.查找root目录下所有文件
find /root -type f
c.查找root目录下所有文件夹
find /root -type d
service命令:
A.用于控制一些服务的启动等
B. 语法格式:service 服务名 start/stop/restart
C.可以使用管道命令查看服务是否启动: ps -ef | grep httpd
kill命令:
A.杀死某些进程:kill pid
B.可以配合grep命令查找出pid再进行筛选
C.可以使用killall 服务的关键字来批量删除
ifconfig:查看网卡相关信息
mtu:最大传输单元
inet :ipv4的地址
netmask:子网掩码
brocast:广播地址
ether:mac地址
RX(receive)是接受时候的状况,TX(transmit)是发送时的状况
packets :正确包数 bytes:字节数 errors错误数 dropped 丢包数 overruns 因速度过快而发生的丢包
frame:因frame而发生的丢包
不会了就上网查下
uptime:输出计算机持续在线时间
unname: 输出计算机计算机系统
netstat:
A.查看网络连接状态
B.选项说明:
-t:表示只列出tcp协议的连接;
-n:表示将地址从字母组合转化成ip地址,将协议转化成端口号来显示;
-l:表示过滤出“state(状态)”列中其值为LISTEN(监听)的连接;
-p:表示显示发起连接的进程pid和进程名称;