大数据 Linux实用指令

课时19 运行级别和找回root密码
1.指定运行级别
运行级别说明
0:关机
1:单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
要修改默认的运行级别可改文件
/etc/ininttab的id:5:initdefault:这一行中的数字
命令:init[012356]
2.打开终端:
vim /etc/inittab
init 3
root 输入密码
init 5
init 0(关机)
3.面试题
找回丢失的root密码
方法:进入到单用户模式,然后修改root密码。因为进入单用户模式,root不需要密码就可以登陆
开机→ 在引导时输入回车键(一直嗯)→ 看到一个新的界面,选中第二行(编辑内核)再输入 e→ 在这行
最后输入 1,再回车→ 再次输入b,就会进入到单用户模式。
使用passwd 修改密码,并reboot重启。       
不可以通过远程修改root密码
7.要修改默认的运行级别可改文件
/etc/ininttab的id:5:initdefault:这一行中的数字
如果改成了0,一开机就会关机,还是进入单用户模式修改
课时20 实用指令 帮助指令
1.man [命令或配置文件](获得帮助信息)
2.help (获得shell内置命令的帮助信息)
课时21 实用指令 pwd ls cd
1.pwd
显示当前工作目录的绝对路径
2.ls [选项] [目录或文件]
-a:显示当前所有的目录的文件和目录,包括隐藏的
-l:以列表的方式显示信息
3.cd [参数]
切换到指定目录
~ 回到自己的家目录
.. 回到上一级目录
cd /usr/lib
cd ../../root/
就可回到原来的
课时22 实用指令 mkdir rmdir
1.mkdir 用于创建目录
mkdir [选项] 要创建的目录
-p 创建多级目录
[ ~]# mkdir /home/animal/tiger
mkdir: 无法创建目录"/home/animal/tiger": 没有那个文件或目录
[ ~]# mkdir -p /home/animal/tiger
[ home]# cd animal/
[ animal]# ll
总用量 4
drwxr-xr-x. 2 root root 4096 2月   2 10:48 tiger
2.rmdir 删除空目录
rm -rf 删除非空目录
[ dog]# rm -rf /home/dog
课时23 实用指令 touch cp
1.touch 创建空文件
touch 文件名称
一次性可以创建多个文件
2.cp 拷贝文件到指定目录
cp [选项] source dest
-r 递归复制整个文件夹
强制覆盖不提示的方法:\cp   :[ home]# cp\ -r test/ zwj/
[ home]# touch aaa.text
[ home]# mkdir bbb
[ home]# cp aaa.text bbb/
[ home]# cd bbb/
[ bbb]# ll
总用量 0
-rw-r--r--. 1 root root 0 2月   2 11:07 aaa.text
[ home]# cp -r test/ zwj/
注:注意当前的目录位置,准确定位源目录和目标目录。
课时24 实用指令 rm mv
1.rm 移除文件或目录
rm [选项]
-r:递归删除整个文件夹
-f:强制删除不提示
2.mv 移动文件与目录或重命名
mv oldnamefile newnamefile 重命名
mv /temp/movefile/targetfolder 移动文件
[ home]# touch aaa.text
[ home]# ls
aaa.text  bbb  hello  tiger  xm  zf  zwj
[ home]# mv aaa.text pig.text
[ home]# ls
bbb  hello  pig.text  tiger  xm  zf  zwj
[ home]# mv pig.text /root/
[ home]# cd /root/
[ ~]# ls
anaconda-ks.cfg  install.log.syslog  公共的  视频  文档  音乐
install.log      pig.text            模板    图片  下载  桌面
课时25 实用指令 cat more less
1.cat 查看文件内容,以只读方式打开
cat [选项] 要查看的文件
-n :显示行号
cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more
cat -n /etc/profile | more (分页显示)
2.more
      是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。
空格键:向下翻一页
Enter:向下翻[一行];
q:立刻离开more,不再显示该文件内容
Ctrl+F:向下滚动一屏
Ctrl+B:返回上一屏
m 输出当前行的行号
:f  输出文件名和当前行的行号
3.less
      用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。
less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示
大型文件具有较高的效率。
空白键:向下翻动一页
pagedown:向下翻动一页
pageup:向上翻动一页
/字串:向下搜寻[字串]的功能:n:向下查找,N:向上查找;
?字串向上搜寻[字串]的功能:n:向上查找,N:向下查找;
q 离开less这个程序
课时26 实用指令 重定向和追加
>和>>
1.>输出重定向和>>追加
(1)ls -l>文件 (列表的内容写入文件a.txt中,覆盖写)
(2)ls -al>>文件(列表的内容追加到文件a.txt的末尾)
(3)cat 文件1>文件2(将文件1的内容覆盖到文件2)
(4)echo“内容”>>文件
[ home]# ls -l > a.txt
[ home]# more a.txt
总用量 20
-rw-r--r--. 1 root root      0 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
[ home]# ls -l >> b.txt
[ home]# more b.txt
总用量 24
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root      0 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
[ home]# ls -l >> b.txt
[ home]# more b.txt
总用量 24
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root      0 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
总用量 28
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root    419 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
--More--(94%)
[ home]# ls -l /home/ > /home/info.txt
[ home]# more info.txt
总用量 28
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root    838 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
-rw-r--r--. 1 root root      0 2月   2 13:01 info.txt
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
[ home]# cal
      二月 2020    
日 一 二 三 四 五 六
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
[ home]# cal >> /home/mycal
[ home]# cal >> /home/mycal
[ home]# cal >> /home/mycal
[ home]# more mycal
      二月 2020    
日 一 二 三 四 五 六
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
      二月 2020    
日 一 二 三 四 五 六
                   1
 2  3  4  5  6  7  8
 9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
      二月 2020    
--More--(71%)
课时27 实用指令echo head tail
1.echo 输出内容到控制台
echo [选项] [输出内容]
如:使用echo指令输出环境变量,输出当前的环境路径。
[ home]# echo $PATH
/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
使用echo指令输出hello,world!
2.head 显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容
head 文件 (查看文件头10行内容)
head -n 5 文件(查看文件头5行内容,5可以任意行数)
[ home]# head -n 5 /etc/profile
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
3.tail输出文件中尾部的内容,默认后10行内容
tail 文件(查看文件后10行内容)
tail -n 5(查看文件内后5行内容,)
tail -f 文件(实时追踪该文档的所有更新,工作中经常使用)
[ home]# tail -n 5 /etc/profile
    fi
done
unset i
unset -f pathmunge
在终端中追加可以看到变化
[ home]# tail -f info.txt
总用量 28
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root    838 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
-rw-r--r--. 1 root root      0 2月   2 13:01 info.txt
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
总用量 36
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root    838 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
-rw-r--r--. 1 root root    474 2月   2 13:01 info.txt
-rw-r--r--. 1 root root    471 2月   2 13:03 mycal
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
课时28 使用指令 ln history
1.ln
软链接也叫符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径
ln -s[源文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)
实例:
(1)在/home目录下创建一个软链接linkToRoot,链接到/root目录
[ home]# ln -s /root linkToRoot
[ home]# ls -l
总用量 36
-rw-r--r--. 1 root root    367 2月   2 12:56 a.txt
drwxr-xr-x. 2 root root   4096 2月   2 11:07 bbb
-rw-r--r--. 1 root root    838 2月   2 12:58 b.txt
-rw-r--r--. 1 root root      0 1月  31 19:37 hello
-rw-r--r--. 1 root root   1000 2月   2 13:23 info.txt
lrwxrwxrwx. 1 root root      5 2月   2 13:34 linkToRoot -> /root
-rw-r--r--. 1 root root    471 2月   2 13:03 mycal
drwxr-xr-x. 2 root root   4096 2月   1 17:09 tiger
drwx------. 4 zf   zf     4096 2月   1 17:17 xm
drwx------. 4 zf   zf     4096 2月   1 17:36 zf
drwx------. 4 zwj  wudang 4096 2月   1 17:44 zwj
[ home]# cd linkToRoot/
[ linkToRoot]# ls -l
看的还是root的内容
(2)删除软链接linkToRoot
[ home]# rm -rf linkToRoot/
rm: 无法删除"linkToRoot/.gvfs": 设备或资源忙
[ home]# rm -rf linkToRoot
不要带/
注:当使用pwd查看目录时,仍然看到的是软链接所在目录 。
[ linkToRoot]# pwd
/home/linkToRoot
2.history指令
查看已经执行的历史命令,也可以执行历史命令
实例
(1)显示所有的历史命令
[ home]# history
(2)显示最近使用过的10个指令
[ home]# history 10
(3)执行历史编号为5的指令
[ home]# !5
ll
课时29 实用指令 date cal
1.date 显示当前日期
date(显示当前时间)
date+%Y(显示当前年份)
date+%m(显示当前月份)
date+%d(显示当前是哪一天)
date“+%Y-%m-%d %H:%M:%S”(显示年月日时分秒)
实例
(1)显示当前时间信息
[ ~]# date
2020年 02月 02日 星期日 14:39:31 CST
(2)显示当前时间年月日
[ ~]# date "+%Y-%m-%d"
2020-02-02
(3)显示当前时间年月日时分秒
date "+%Y-%m-%d %H:%M:%S"
(4)设置时间
date -s 字符串时间
date -s “2020-02-02  16:44:25”
2.cal 查看日历指令
cal [选项]    不加选项,显示本月日历
实例
(1)显示当前日历
[ ~]# cal
(2)显示2020年日历
[ ~]# cal 2020
课时30 实用指令 find locate grep 管道符
1.find
从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
find [搜索范围] [选项]
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名>查找属于指定用户名所有文件
-size<文件大小>按照指定的文件大小查找文件
实例
(1)按文件名,根据名称查找home目录下的hello.txt文件
[ ~]# find /home -name hello.txt
(2)按拥有者,查找/opt目录下,用户名称为nobody的文件
[ ~]# find /opt -user root
/opt
/opt/rh
(3)查找整个Linux系统下大于20m的文件(+n大于 -n小于 n等于)
[ ~]# find / -size +20M
(4)查找/ 目录下,所有.txt的文件
[ ~]# find / -name *.txt
2.locate
可以快速定位文件路径。locate指令利用事先建立的系统钟所有文件名称及路径的locate数据库实现快速定位
的文件。locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期
更新locate时刻。
locate 搜索文件
注:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用update指令创建locate数据库。
实例:使用locate指令快速定位info.txt文件所在目录。
[ ~]# updatedb
[ ~]# locate info.txt
/home/info.txt
3.grep指令和管道符号 |
grep:过滤查找
管道符“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
grep [选项] 查找内容 源文件
-n 显示匹配行及行号
-i 忽略字母大小写
实例:在hello.txt文件钟,,查找“yes”所在行,并且显示行号
[ home]# vim hello.txt
[ home]# cat hello.txt | grep yes
yes
yes
[ home]# cat hello.txt | grep -n yes
4:yes
7:yes
[ home]# cat hello.txt | grep -ni yes
4:yes
7:yes
9:Yes
 
课时31 压缩和解压类指令
1.gzip/gunzip
gzip用于压缩文件,gunzip用于解压的
gzip 文件 (压缩文件,只能将文件压缩为*.gz文件)
gunzip wenjian.gz(解压缩文件命令)
实例:
(1)将/home下的hello.txt文件进行压缩(不会保留原来的文件)
[ home]# gzip hello.txt
[ home]# ls
a.txt  b.txt  hello.txt.gz  mycal  xm  zwj
bbb    hello  info.txt      tiger  zf
(2)将hello.txt.gz文件进行解压缩
[ home]# gunzip hello.txt.gz
[ home]# ls
a.txt  b.txt  hello.txt  mycal  xm  zwj
bbb    hello  info.txt   tiger  zf
2.zip/unzip
在项目打包发布钟很有用
语法:
zip [选项] XXX.zip 将要压缩的内容(压缩文件和目录的命令)
unzip [选项] XXX.zip(解压缩文件)
zip常用选项
-r:递归压缩:即压缩目录
unzip常用选项
-d<目录>:指定解压后文件的存放目录
实例:
(1)将/home下的所有文件压缩成mypaxkage.zip
[ home]# zip -r mypackage.zip /home/*
[ home]# ls
a.txt  b.txt  hello.txt  mycal          tiger  zf
bbb    hello  info.txt   mypackage.zip  xm     zwj
(2)将mypaxkage.zip解压到/opt/tmp目录下
[ home]# unzip -d /opt/tmp mypackage.zip
[ home]# cd /opt/
[ opt]# cd tmp/
[ tmp]# ls
home
[ tmp]# cd /home/
[ home]# ls
a.txt  b.txt  hello.txt  mycal          tiger  zf
bbb    hello  info.txt   mypackage.zip  xm     zwj
3.tar
打包,打包后的文件是.tar.gz的文件
tar [选项] XXX.tar.gz 打包的内容
选项
-c 产生 .tar打包文件
-v显示详细信息
-f指定压缩后的文件名
-z 打包同时压缩
-x 解压.tar文件
实例:
(1)压缩多个文件,将/home/a1.txt和/home/a2.txt压缩成a.tar.gz
[ home]# tar -zcvf a.tar.gz a1.txt a2.txt
(2)将/home的文件夹压缩成myhome.tar.gz
[ home]# tar -zcvf myhome.tar.gz /home/
[ home]# ls
a.tar.gz  bbb    hello      info.txt  myhome.tar.gz  tiger  zf
a.txt     b.txt  hello.txt  mycal     mypackage.zip  xm     zwj
(3)将a.tar.gz解压到当前目录
[ home]# tar -zxvf a.tar.gz
[ home]# ls
a1.txt   a2.txt  a.tar.gz  bbb    hello      info.txt  myhome.tar.gz  tiger  zf
a.txt     b.txt  hello.txt  mycal     mypackage.zip  xm     zwj
(4)将myhome.tar.gz解压到/opt目录下
[ home]# tar -zxvf myhome.tar.gz -C /opt
指定解压到的目录实现要存在
故障:开头是-bash - 4.1#,而不是[ ]#
解决方法
-bash-4.1# cp /etc/skel/.bashrc /root/
-bash-4.1# cp /etc/skel/.bash_profile /root/
原因:root在/root下的配置文件.bash_profile和.bashrc丢失

相关推荐