linux实用指令
1.指定运行级别
linux运行级别总共7级,常用级别为3和5
第一级:0:关机
第二级:1:单用户【找回丢失密码】
第三级:2:多用户状态没有网络服务
第四级:3:多用户状态有网络服务
第五级:4:系统未使用,保留
第六级:5:图形界面
第七级:6:重启
修改系统运行级别配置文件:/etc/inittab
id:5:initdefault:
2.切换到指定运行级别的指令
基本语法:init[运行级别0123456] init 3
面试题:如果root用户密码忘记丢失,如何找回密码?
切换到运行级别1:单用户级别,因为单用户级别登录root不需要密码
过程:1)关机重启linux 2)在未完成引导前按enter键 3)在弹出的对话框中选择kernel 按e键,进入之后输入1,也就是修改内核,设置运行级别为1;然后回车,输入b进行引导
安全性:不能远程,只能在机房机器上才能找回
3.帮助指令
当我们对某个指令不熟悉时可以使用linux提供的帮助指令来了解这个指令的使用方法
1)man [命令或配置文件] 例如:man ls
2)help [命令] 例如:help cd
都是英文,英语不好还是百度好
4.文件目录类指令
pwd:显示当前工作目录绝对路径
ls [选项] [目录或文件]:ls -a:显示当前目录所有文件和目录,包括隐藏
ls -l:以列表的方式显示信息
cd [参数]: cd ~或者cd 回到家目录 cd.. 上一级目录
mkdir [选项] 要创建的目录:-p:创建多级目录 mkdir -p /home/zwj/weblogic/weblogic
rmdir [选项] 要删除的空目录,删除的是空目录,如果目录下有内容无法删除:rmdir /home/zwj/weblogic,如果要删除非空目录用:rm -rf /home/zwj/weblogic
touch 要创建的空文件:用来创建空文件 touch hello1.txt hello2.txt 可以一次性创建多个文件
cp [选项] 需要拷贝的文件 需要拷贝的位置 -r:递归复制整个文件夹
cp -r xm2/ xm1/ :将xm2文件夹整个复制到xm1中
cp -r xm2/* xm1/ :将xm2文件夹中的文件及文件夹整个复制到xm1中
\cp -r xm2/ xm1/ :强制覆盖
rm [选项] [要删除的文件或目录]: -r:递归删除整个文件夹 -f:强制删除不提示
rm -rf xm2/ rm -rf xm2/*
mv:移动文件与目录或重命名
mv 原来的文件名 新的文件名:mv aaa.txt bbb.txt 相当于把aaa移动到当前目录下
mv 原文件目录 目标目录: mv aaa.txt /home/xm1
cat [选项] 要查看的文件:查看文件内容,以只读方式 -n:显示行号 cat -n aaa.txt
more指令:基于vi编辑器的文本过滤器 cat -n aaa.txt | more:用|more进行分页显示:
按空格键下一页 enter下一行 q代表立即离开more,不显示该文件内容
ctrl+F向下滚动一页 ctrl+B返回上一页 =输出当前行号 :f输出文件名和当前行号
less指令:跟more指令类似,也是分屏显示文件内容,但比more指令更强大,支持各种显示终端,less指令在显示文件内容时,并不是一次将整个文件加载后显示,而是根据显示需要来加载内容,对于大型文件具体较高效果
less 要查看的文件
>输出重定向:会将原来的文件的内容覆盖 ls -l>hello.txt:将ls -l显示的内容覆盖写入hello.txt
>>追加:不会覆盖原来文件的内容,而是追加的文件内容尾部ls -l >>hello.txt:将ls -l显示的内容追加的hello.txt尾部
cat aaa.txt>hello.txt:将aaa.txt的内容覆盖到hello.txt
echo "内容">hello.txt :将内容覆盖到hello.txt
more aaa.txt>hello.txt:将more aaa.txt显示的内容覆盖到hello.txt
echo [选项] [内容]:输出内容到控制台
echo $PATH:输出环境变量的值
echo "内容":输出内容到控制台
head:用于显示文件的开头部分,默认显示前10行
head hello.txt:显示hello.txt前10行
head -n 5 hello.txt:显示前5行
tail:用于显示文件的尾部部分,默认显示最后10行
tail hello.txt:显示hello.txt最后10行
tail -n 5 hello.txt 显示hello.txt最后5行
tail -100f hello.txt:显示hello.txt最后100行,并实时追踪更新
ln指令:软链接也叫符号链接,类似于window里面的快捷方式,主要用于存放链接到其他文件的路径
ln -s [原文件或目录] [软链接名即快捷方式名]:ln -s /home/ xm:在当前目录下创建xm的快捷方式到家目录 ,cd xm/:进入软链接所指向的目录,但用pwd查看路径还是软链接所在的目录
history指令:查看已经执行过的历史命令,也可以执行历史命令
history:显示所有的历史指令
history 10:显示最近10个历史指令
!178:执行编号为178的历史指令
5.时间日期类指令
date指令:显示当前日期
date:当前的日期
date "+%Y-%m-%d" date "+%Y年%m月%d日":显示当前日期年月日
date "+"+%Y年%m月%日 %H时%M分%S秒“ 显示当前日期年月日时分秒
date -s 字符串时间:设置日期时间
date -s "2018-10-10 11:22:22":设置时间为 2018-10-10 11:22:22
cal:查看日历指令
cal [选项]
cal:显示本月日历
cal 2018:显示2018年整年的日历
6.搜索查找类指令
find指令:find指令将从指定目录向下递归的遍历其各个子目录,将满足条件的文件或者目录显示在终端
find [搜索范围] [选项]
find /home -name hello.txt:在/home目录范围内根据文件名查找名为hello.txt的文件 find /home -name *.txt
find /home -user zwj:在/home目录范围内查找用户名称为zwj的文件
find /home -size +20M:在/home目录范围内查找大于20M的文件 ls -lh:有显示大小字段
lacate指令:可以快速定位文件路径,locate指令利用事先建立好的系统中所有文件名称及路径的locate4数据库实现快速定位给定的文件,locate指令无需遍历整个文件系统,查询速度较快,为了保证查询结果的准确度,管理员必须定期更新locate时刻
由于locate指令基于数据库进行查询,所有第一次运行前,必须使用updatedb指令创建locate数据库
yum install mlocate:安装updatedb指令
whereis updatedb:查看updatedb指令是否安装
updatedb:创建locate数据库
locate 搜索文件
locate hello.txt:快速定位hello.txt文件所在的目录
grep指令和管道符号“|”:grep用于过滤查找,管道符“|”表示将前一个命令的处理结果输出传递给后面的命令处理
grep [选项] 查找内容 源文件 -n:显示匹配行及行号 -i:忽略大小写字母
grep -n yes hello.txt 或者 cat hello.txt | grep -n yes:在hello.txt中查找yes所在行,并显示行号
cat hello.txt | grep -ni yes:在hello.txt中查找yes所在行,并显示行号,忽略大小写
7.压缩解压缩指令
gzip/gunzip指令:gzip:用于压缩 gunzip:用于解压缩
gzip hello.txt:压缩hello.txt ,生成hello.txt.gz压缩包,hello.txt则不存在了
gunzip hello.txt.gz:解压缩hello.txt.gz压缩包,hello.txt.gz则不存在了
zip/unzip指令:zip:用于压缩 unzip:用于解压缩,在项目打包发布中经常使用
zip [选项] xxx.zip 将要压缩的文件或目录 -r:递归压缩,即压缩目录
zip -r mypackage.zip /home/*
unzip [选项] xxx.zip:解压xxx.zip压缩包 -d 目录:指定解压到哪个目录下去
unzip -d /home mypackage
tar指令:打包指令,最后打包 后的文件是.tar.gz的文件
tar [选项] xxxx.tar.gz 打包854-的内容: -c:产生.tar打包文件 -v:显示详细信息 -f:指定压缩后的文件名
-z:打包同时压缩 -x:解压.tar文件
tar -zcvf mypackage.tar.gz a.txt b.txt:将a.txt b.txt打包并压缩成mypackage
tar -zxvf mypackage.tar.gz:解压到当前目录
tar -zxvf mypackage.tar.gz -C /home:解压到/home目录 /home目录必须存在