1、VIM操作命令
- 插入:i、a
- 退出:wq、:q、:q!
- 拷贝当前行:yy,拷贝当前向下的五行,5yy,并粘贴p
- 删除当前行,dd,删除当前向下的五行,5dd
- 在文件中查找某个单词-命令行下:[/查找的关键字,回车查找,输入n就是查找下一个]
- 命令行下设置文件的行号[:set nu],取消文件的行号[:set nonu]
-
2、Linux开机、重启和用户操作
2.1系统操作
2.1.1关机和重启
shutdown
shutdown -h now:立即关机
shutdown -h 1:1分钟后关机
shutdown -r now:立即重启
halt 直接使用的关机
reboot 重启系统
syn 把内存数据同步到磁盘(在关机重启系统之前的操作)2.2用户操作
2.2.1用户登录和注销
2.2.2添加用户
useradd 用户名
useradd -d 指定目录 新的用户名 :给新创建的用户指定根目录2.2.3指定修改密码
2.2.4删除用户
2.2.5切换用户
从高权限的用户切换到低权限的用户不需要输入密码
-
2.2.6查看当前用户、登录用户
2.3用户组操作
groupadd 组名:新增用户组
useradd -g 用户组 用户名:添加用户时新增组
usermod -g 用户组 用户名:修改用户的用户组2.4用户和组的配置文件
/etc/passwd文件
用户的配置文件,记录用户的各种信息
每行的信息:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell
/etc/shadow文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
/etc/group文件
组的配置文件,记录Linux包含组的信息
每行的含义:组名:口令:组标识号:组内用户列表3、实用指令
3.1指定运行级别
3.1.1运行级别说明
0:关机
1:单用户[找回丢失的密码]
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用的运行级别是3和5,要修改默认的运行级别可改文件
/etc/inittab的id:5:initdefault:这一行的数字3.1.2切换到指定运行级别的指令
3.1.3面试题-找回root密码
分析:进入单用户模式,然后修改密码,因为进入单用户模式,root不用密码就可以登录
步骤: 在开机引导是输入 回车键
- 看到界面输入 e
- 看到新的界面,选中第二行(编辑内核)再输入 e
- 在这行最后输入 1
- 再输入 回车 表示编辑完毕
- 再次输入 b 进入单用户模式
- 使用 passwd 命令修改root用户的密码
3.2帮助指令
- man获取帮助信息
基本语法:man [命令或配置文件](功能描述:获得帮助信息)
- help指令
3.3文件目录指令
- pwd:显示当前工作目录的绝对路径
- ls -ahl:显示当前工作目录下的文件或目录及其文件目录的所有者
- cd:切换文件目录
- mkdir:新建目录
- rmdir:删除目录
- touch file.txt:创建空文件,创建多个文件用空格隔开
- cp -r source dest:递归复制这个源文件到目标目录
- \cp -r source dest:递归复制这个源文件到目标目录,会强制覆盖
- rm -rf file.txt:强制删除且不提示
- mv oldFileName newFileName:重命名
- mv sourcePath destPath:移动文件目录
- cat -n file.txt | more:查看文件内容,只有浏览权限,-n带行号
- more:打开的文件分页交给管道命令,用空格加载下一页
- 空格键/enter:向下翻页
- q:退出浏览
- Ctrl+F:向下翻页
- Ctrl+B:向上翻页
- =:输出当前的行号
- :f:输出当前的文件名和行号
- less:分屏显示文件,支持读取大文件,根据需要加载,非一次性加载
- 空格键/pagedown:向下翻页
- pageup:向上翻页
- /字串:向下搜寻字串,n:向下查找,N:向上查找
- ?字串:向上搜寻字串,n:向下查找,N:向上查找
- q:退出less程序
- more:打开的文件分页交给管道命令,用空格加载下一页
输出重定向(覆盖形式)和>>追加
- ls -l > file:列表中的内容写入文件,覆盖写
- ls -al >> file:列表的内容追加到文件的末尾
- cat file1 > file2:将file1的内容覆盖到file2
- echo “string” >> file
- echo:输出内容到控制台
- head -n 5 file:显示文件的开头部分,默认显示前十行
- tail -n 5 file:显示文件的最后的内容,默认显示后十行,-f表示实时追踪该文档
- ln -s [原文件或目录] [软链接名]:软链接也叫符号链接,存放其他链接其他文件的路径
-
3.4时间日期类
date:显示当前日期
- date+%Y:显示当前年份
- date+%m:显示当前月份
- date+%d:显示当前是那一天
- date “+%Y-%m-%d %H:%M:%S” :显示年月日时分秒
- date -s 字符串时间:设置系统日期时间
-
3.5搜索查找类
find:将从指定目录向下递归的遍历各个子目录进行查找
- 基本语法:find [搜索范围] [选项]
- find [搜索范围] -name <查询方式>:按照指定文件名查找模式查找文件
- find [搜索范围] -user <用户名>:查找属于指定用户名所有文件
- find [搜索范围] -size <文件大小+20M(大于20M)>:按照指定的文件大小查找指定的文件
- locate filename:快速定位文件的路径
- 注意:第一次运行前必须使用updatedb指令创建locate数据库
- grep:过滤查找,管道符,”|”,表示将前一个命令的处理结果输出后传递给后面的命令处理
- 基本语法:grep [选项] 查找内容 源文件
- -n :显示匹配行及行号
- -i :忽略字母大小写
- 示例:cat hello.txt | grep -n yes
-
3.6压缩和解压类指令
gzip类压缩指令
- gzip filename:压缩文件,只能将文件压缩为*.gz文件,源文件不保存
- gunzip filename.gz :解压缩命令
- zip类压缩指令
- zip [选项] filename.zip [压缩的目录]:压缩文件和目录的命令
- -r :递归压缩,压缩目录
- unzip [选项] filename.zip:解压缩文件
- -d <目录>:指定解压后文件的存放目录
- zip [选项] filename.zip [压缩的目录]:压缩文件和目录的命令
tar打包指令,打包后的文件是.tar.gz
groupadd groupname :添加组
- useradd username:添加用户
username -g groupname username新建用户并添加到组
4.1.1修改文件的所有者
-
4.1.2修改文件所在的组
-
4.1.3改变用户所在组
usermod -g groupname username
usermod -d 目录名 用户名 改变用户登录的初始目录
4.2权限的管理
4.2.1权限的基本介绍
第一个符号表示文件的类型
- -:普通文件
- d:目录
- l:软链接
- c:字符设备,键盘,鼠标类
- b:块文件,硬盘
- 2-4个字符表示用户对该目录或文件所拥有的权限
- r:读
- w:写
- x:可执行,进入该目录
- 5-7个字符表示用户组对该文件或目录所拥有的权限
- 8-10个字符表示其他组用户对该文件或目录所拥有的权限
第十一个数字
+、-、=变更权限
- u:所有者、g:所有组、o:其他人、a:所有人(u、g、o的总和)
- chmod u=rwx,g=rx,o=x 文件目录名
- chmod o+w 文件目录名
- chmod a-x 文件目录名
- 通过数字变更
- r=4、w=2、x=1 rwx=4+2+1=7
- chmod 751 文件目录名
修改文件的所有者
- chown owner file:改变文件的所有者
- chown owner:groupname file 改变用户的所有者和所有组
- -R:目录的递归生效
5、任务调度器crond
5.1简述
概述:任务调度,是指系统在某个时间执行的特定的命令或程序
任务调度分类:
- 系统工作:系统工作需要周而复始的执行
- MySQL数据库的定时备份
基本语法:crontab [选项]
常用选项:
- -e:编辑crontab定时任务
- -l:查询crontab任务
- -r:删除当前用户的所有的crontab任务
5.2快速入门
设置任务调度文件:/etc/crontab
设置个人任务调度,执行crontab -e命令
接着输入任务到调度文件:/1* ls -l /etc/ > /tmp/to.txt
每小时的每分钟执行ls -l /etc/ > /tmp/to.txt命令
5.3参数细节说明
含义 | 范围 | |
---|---|---|
第一个”*” | 一个小时当中的第几分钟 | 0-59 |
第二个”*” | 一天当中的第几个小时 | 0-23 |
第三个”*” | 一个月当中的第几天 | 1-31 |
第四个”*” | 一年当中的第几个月 | 1-12 |
第五个”*” | 一周当中的星期几 | 0-7(0和7都代表星期日) |
5.4特殊符号说明
特殊符号 | 含义 |
---|---|
* | 代表任何时间 |
, | 代表不连续的时间 |
- | 代表范围 |
*/n | 代表每隔多久执行一次 |
5.5crond相关指令
conrtab -r
:终止任务调度crontab -l
:列出当前有哪些任务调度service crond restart
[重启任务调度]6、Linux磁盘分区,挂载
6.1分区的方式
6.1.1mbr分区
最多支持四个主分区
- 系统只能安装在主分区
- 扩展分区要占一个主分区
-
6.1.2gtp分区
支持无限多个主分区(但操作系统可限制,比如Window下最多128个分区)
- 最大支持18EB的大容量(EB=1024PB,PB=1024TB)
-
6.2硬盘
6.2.1 IDE硬盘
驱动器标识符:hdx~
标识符:sdx~
- 其余和IDE表示相同
6.2.3查看所有设备挂载情况
命令:lsblk -f6.2.4增加硬盘
- Linux主机添加硬盘
- 分区命令:fdisk /dev/sdb
- 格式化分区:mkfs -t ext4 /dev/sdb1
- 挂载 :先创建挂载目录 /home/disk1,再将分区和挂载目录管理:mount /dev/sdb1 /home/disk1
- 取消挂载:umount 设备名称 或 挂载目录、umount /dev/sdb1 或 umount /disk1
- 设置自动挂载(永久挂载),编辑挂载的配置文件在系统启动时自动挂载 vim /etc/fstab
-
6.3磁盘情况查询
6.3.1查询指定目录的磁盘占用情况
基本语法:du -h /目录,默认当前目录
统计/home文件下文件的个数
- ls -l /home | grep “^-“ | wc -l
- 统计/home文件下目录的个数
- ls -l /home | grep “^d” | wc -l
- 统计/home文件下文件的个数,包括子文件夹
- ls -lR /home | grep “^-“ | wc -l
- 统计文件夹下目录的个数,包括子文件夹
- ls -lR /home | grep “^d” | wc -l
- 以树状显示目录结构
- 直接修改配置文件指定IP:vi /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT=yes //启用boot配置yes
BOOTPROTO=static //以静态方式获取ip
IPADDR=192.168.184.02 //指定ip
GATEWAY=192.168.184.2 //网关
DNS1=192.168.184.2 //dns和网关保持一致
- 修改服务后一定要重启服务:service network restart
-
7.2修改主机名
查看当前主机名:hostname
- 修改Linux主机的映射文件:vim /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=fcscanf //主机名不能有下划线
- 修改/etc/hosts增加主机和ip的映射
192.168.148.10 fcscanf
-
8、进程管理
8.1显示系统执行的进程
基本语法:ps
- -a:显示当前终端的所有进程的信息
- -u:以用户的格式显示进程的信息
-
8.2终止进程
基本语法
kill [选项] 进程号(通过进程号杀死进程)
- -9:表示强制进程立即停止
killall 进程名 (通过进程名称杀死进程,支持通配符,在系统负载过大时有用)
8.3查看进程树
基本语法:pstree [选项]
-p:显示进程的PID
-
8.4服务管理
8.4.1service管理命令
service 服务名 [start | stop | restart | reload | status]
systemctl
启动防火墙:service iptables restart
查看防火墙状态:service iptables status -d秒数:指定top命令每隔几秒更新,默认3秒在top命令的交互模式当中可以执行的命令
- -i:使top不显示任何闲置或者僵死的进程
- -p:通过指定监控进程ID来仅仅监控某个进程的状态
交互操作说明
rpm -qa | grep applicationname
rpm -qa | more
rpm -qa | grep X [rpm -qa | grep firefox]
查询软件包是否安装
rpm -q
查询软件包信息
rpm -qi 软件包名称
查询软件包中的文件
rpm -ql 软件包名称
查询文件所属的软件包
rpm -qf 文件全路径
9.1.2rpm包名的基本格式
firefox-45.0.1-1.el6.centos.x86_64.rpm
名称-版本号-适用的操作系统(noarch表示通用)
9.1.3rpm卸载
基本语法:rpm -e RPM包的名称