linux实操篇 实用指令
指定运行级别
系统的运行级别配置文件
/etc/inittab
切换到指定运行级别的指令
$init [012356]
输入init 5切换到图形化界面
$init 5
如何找回root密码
进入到单用户模式,然后修改root密码。因为进入单用户模式,root不需要密码就可以登录
开机>在引导是输入 回车键 >看到一个界面输入 e>看到一个新的界面,选中第二个(编辑内核)在输入 e>在这行最后输入 1 ,在输入 回车键>
再次输入一个 b,这时就会进入单用户模式。输入 passwd 设置新root密码就行了
帮助指令
当我们对某个指令不熟悉时,我们可以使用linux提供的帮助指令来了解这个指令的使用方法。
man
$man command
help
$help command
文件目录类
$ pwd 显示的时当前目录的绝对路径
$ls [选项] [目录或者文件]
-l 以列表形式输出
-al 可以显示隐藏文件
$cd cd~ cd 都是回到家目录
cd ..会到上一级目录
绝对路径 /home 从根开始定位
相对路径 ../从当前工作目录开始定位到需要的目录去 ..回到上一级目录
使用绝对路径切换到root目录 cd /root
使用相对路径切换到/root目录 cd ../../root
表示回到当前目录的上一级目录 cd ..
回到家目录 cd ~ cd
$mkdir指令 创建目录
默认情况下只能创建一个目录 mkdir /home/animal/tiger 会报错
但是加上一个选项 -p mkdie -p /home/animal/tiger 就可以了
$rmdir 选项 要删除的目录 不可删除非空目录
$touch 创建空文件
touch 文件名字
也可以创建多个文件
touch txt1 txt2
$cp 指令
拷贝文件到指定的目录
cp 选项 source dest
将/home/aaa.txt 拷贝到 /home/bbb 目录下
touch /home/aaa.txt
mkdir bbb
cp /home/aaa.txt bbb
拷贝整个目录到一个目录 加上参数 -r
cp -r source dest
强制覆盖不提示 \cp -r source dest
目标目录下有相同文件 会有提示 加了\就不会提示了
$rm指令 rm指令移除文件或目录
rm 选项 要删除的文件或目录
-r 递归删除整个文件夹
-f 强制删除不提示
-rf 强制删除目录
$mv 移动文件与目录重命名
mv oldNameFile newNameFile 这个事重命名
mv /temp/movefile /targerFolder 移动文件
将 /home/aaa.txt 文件重命名为 pig.txt
mv /home/aa.txt pig.txt
将/home/pig.txt 文件移动到/root 目录下
mv /home/pig.txt /root
$cat 指令 只能查看文件内容
$cat 选项 查看的文件
查看 /etc/profile文件 显示行号
$cat -n /etc/profile | more (-n 是显示行号 ,| more分页显示 按空格分页)
$more 指令
$more 要查看的文件
全屏按页显示文本文件的内容,下面是他的快捷键
less 指令
$less 要查看的文件
分屏查兰文件内容 与more类似 对于大文件有较高的效益
重定向和追加
注:前面的命令不唯一
">"输出重定向和 ">>"追加
$ls -l>文件(列表的内容写入文件a.txt中(覆盖写))
$ls -al>>文件 (列表的内容追加到文件aa.txt的末尾)
$cat 文件1>>文件2 (将文件1的内容覆盖到文件2)
$echo "内容">>文件
echo指令
echo 输出内容到控制台
echo 选项 输出内容
$echo $PATH 输出环境变量
$echo "hello" 输出hello文本
head指令
用于显示文件的开头部分内容 默认情况下head指令显示文件的前十行内容
$head 文件 (查看问及那头10行内容)
$head -n 5 文件(查看文件头5行的内容 5只是一个示例 可以为任意行数)
tail指令
tail用于输出文件中的尾部的内容 默认情况下tail指令显示文件的后10行内容
$tail 文件 (查看文件后10行内容)
$tail -n 5 文件 (查看文件后5行内容,5为任意行数)
$tail -f 文件 (实时追踪文档的所有更新)
ln 指令
软链接也叫符号链接 类似于windows中的快捷方式 只要存放链接其他文件的路径
$ln -s [源文件或目录] [软链接名] (给源文件创建一个软链接)
$ln -s /root linKToRoot 就是给root目录创建一个链接 名字叫linkToRoot
删除 快捷方式的指令
rm -rf linkToRoot 就可以了
如果使用pwd指令查看目录时,仍然看到的是软连接所在目录
history 指令
查看已经执行过历史命令 也可以执行历史指令
$history 就行了
显示最近的十个指令
$history 10
执行历史编号为5的指令
$!5 就可以了
date指令
$date 显示当前时间
$date+%Y 显示当前年份
$date+%m 显示当前月份
$date+%d 显示当前月份
$date"+%Y-%m-%d %H:%M:%S"显示年月日时分秒 (前面的+不能丢)
如何设置日期
date -s "字符串时间"
date -s "2018-10-10 11:22:22"这样就设定的了新的时间
cal指令
查看日历指令
$cal 选项 (不加选项,显示本月日历)
显示2020年一整年的日历
$al 2020
搜索查找类指令
$find 指令 将从目录向下递归的遍历其各个子目录,将满足的文件或目录显示在终端
$find [搜索范围] [选项]
查找home目录下的 a.txt 文件
find /home -name a.txt
查找/opt 目录下面 用户名为 root的文件
find /opt -user root
查找整个linux 系统下大于20M的文件 (+n 大于 -n小于 n 等于)
find / -size +20M(注意有斜杠 / 还有 M是大写的)
查找 .txt文件
find / -name *.txt
$locate 指令
快速定位文件路径。利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate不会便利整个文件系统,查询速度较快,为了保证准确度,必须定期更新locate时刻。
$locate 搜索文件
第一次运行 要使用updatedb指令 创建locate数据库
grep 指令和管道符号 |
grep过滤查找 ,管道符 "|",表示将前一个命令的处理结果输出传递给后面的命令处理
grep [选项] 查找内容 源文件
grep -n 显示行号
grep -i 忽略大小写
在a.txt文件中,查找"yes"所在行,并且显示行号
$cat a.txt |grep -n yes
不区分大写的显示
$cat a.txt |grep -ni yes
压缩和解压缩
gzip/gunzip
gzip (压缩文件 只能将文件压缩为*.gz文件 )
gunzip (解压缩文件)
用gzip命令压缩文件后 就没有了以前的文件 只剩下.gz文件
zip/unzip
zip 用于压缩文件
unzip 用于解压文件 在项目文件打包发布中很有用
$zip [选项] xxx.zip 将要压缩的内容 (压缩文件和目录命令)
$unzip [选项] xxx.zip 解压缩文件
将/home/ 目录下的文件打包成mypackage.zip
zip -r mypackage.zip /home/
-r 是递归的进行压缩
将mypackag.zip解压到 /opt/tmp 目录中
unzip -d /opt/tmp/ mypackage.zip
-d 解压到指定目录下
tar指令
打包指令 最后打包的文件是.tar.gz的文件
tar [选项] xxx.tar.gz 打包的内容 将后面打包的内容压缩成 xxx.tar.gz文件
eg:1压缩多个文件 将/home/a.txt和/home/b.txt 压缩成 a.tar.gz
其中的 -zcvf 是一个打包组合拳
eg:2 将home下面所有的文件 打包到myhome.tar.gz
tar -zcvf myhome.tar.gz /home/
eg:3解压到当前目录
tar -zxvf a.tar.gz
eg:4 将myhome.tar.gz解压到 /opt/tmp/目录下
tar -axvf myhome.tar.gz -C /opt/tmp
解压的前提是 指定解压到的目录要存在 还有-C 这个是-Chang 指定路径