因为Hive是安装在Linux系统中,在实际工作中,我们会通过Xshell远程连接公司机房的服务器(这里以上章下载好的虚拟机来模拟服务器即可)。这里将主要介绍常见的Linux操作为主。
本文为CSDN博主「风影楼前」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_23897391/article/details/89052080
1初识Linux
1)Xshell中左键选中文本即可复制,单击右键即可粘贴。而Windows系统中所有的快捷键,比如ctrl+c/v在linux里是不存在的。
2)生产中的LInux系统是完全没有图形化界面的,打开就是Xshell连接的界面。
3)在Linux系统中万物皆文件,没有区别。所以Linux的文件后缀名是给人看的,没有实际意义,一个文件写成.txt和.doc甚至.mp3对于系统来说都是一样的。
4)为什么生产中Hive非要用这么复杂的系统而不用Windows直接操作呢?简单来说是因为生产中服务器基本打开就不能关机了,要五年十年的一直开启使用,而Linux系统的底层架构足够稳定,可以满足这个条件,而换成Windows则完全不行。
5)连接成功后显示的 ”[root@hadoop ~]#“” 中,
1 root是当前的用户名,root用户是Linux系统中的管理员用户,拥有最高权限,一条命令就可以删天删地删空气,类似于Windows里的admin用户。不过数据分析师在公司中是不会被开放root权限的,所以大家不用担心。
2 最后那个#也是root用户的标识,普通用户会是$符号。
3 中间的hadoop是当前的主机名,在公司中也轮不到我们来修改,所以在此就不细述了。
4 括号最后的显示的是当前目录,代表home目录,即家目录,在Linux系统中可以有多个用户同时操作,每个用户都有一个自己的家目录,每个人的家目录除了root用户外,别人是无法访问的。

02 -Linux访问查看
1.查看当前目录路径,pwd -------即println working directory的首字母缩写

- 查看目录里有哪些文件
1) 详细展示:ll
2) 铺平展示:ls
3) 查看隐藏文件(以 .开头的文件):ls -a
- 查看指定目录里有哪些文件
1) ll、ls、ls -a等命令后加上指定目录即可
2) 绝对路径,进入指定目录cd + 路径, 再ls
3)相对路径----不以根目录为开头的路径称为相对路径
cd /usr
ls local/hive

4).cd的常用快捷命令
返回之前的工作目录:cd -
返回上级父目录:cd ..
返回家目录:cd
4. 清屏命令
同时按 ctrl+l 快捷键
03文件的基本操作
- 创建文件
touch 文件名
2.创建目录
#mkdir -> make directory的缩写
mkdir 目录名
在当前目录下创建级联目录
mkdir -p test/hadoop/hive
在当前目录下在其他路径下创建文件或目录需写绝对路径
mkdir -p /root/test/hadoop1
touch /root/test/hadoop.txt
3.拷贝文件
#cp -> copy的缩写
#cp 源文件...(源文件可以是一个,可以是多个) 目标目录(最后一个为目标目录)
cp hadoop.txt hive.txt hadoop1
这个的意思是将Hadoop.txt和hive.txt拷贝到hadoop1文件夹
#cp 目录/文件 . 将目标目录最终的文件复制粘贴到当前目录中,“.” 在linux中代表当前目录
cp /root/test.txt .
4.拷贝目录
#cp -r 要复制的目录 粘贴到的目标目录
cp -r hadoop hadoop1

5.剪切目录
#mv -> move的缩写
#mv 源文件... 目标目录
mv hive.txt hadoop.txt hadoop
#mv 对目录的操作和对文件的操作命令完全一致
mv hadoop hbase
#使用mv命令修改文件名 mv 原文件名 要修改成的目标文件名
mv hive.txt hive_rename.txt
6.删除文件
#rm -rf 文件,目录
#通配符:*:匹配任意字符任意次
#删除所有test开头的文件或目录
rm -rf test*
#删除所有hba开头的文件或目录
rm -rf hba*
7.查看文件
#cat 文件名... //可以查看多个文件,但是一般每次就查看一个文件
#cat -n 文件名//显示行号
上翻 shift+up
下翻 shift+down
#默认查看文件前10行
#head 文件名
head redis_start.sh
#查看文件前n行
#head -n 文件名
head -3 redis_start.sh
8.监控文件
#实时监控日志上报的所有内容
tail -f 文件名
#实时监控日志上报的含有'111'的内容
tail -f 文件名|grep '111'
#实时监控日志上报的含有'111'且含有'action'的内容
tail -f 文件名|grep '111' --line-buffered |grep 'action' --line-buffered
|叫做管道符,是进程间通讯的一种方式,把前面命令的结果交给后面命令去执行
grep 过滤
--line-buffered 按行输出,二次过滤必须加此命令
重定向输出到屏幕的同时,另存到文件可以使用tee命令,如下:
1.查看当前目录下的文件,将所有文件名导出到/temp/dir.txt文件
dir | tee /temp/dir.txt
2.查看passwd文件,排除nologin的行,将输出结果输出在屏幕的同时,另存到login.txt文件
cat /etc/passwd |grep -v nologin |tee /temp/login.txt
9.编辑文件
vim 文件名,后,A 键输入成为可编辑模式,进行编辑,esc退出变成命令模式,再输入:wq保存。
vim编辑器有三种模式,
1).命令模式
常用操作的快捷键

在命令模式下,以下快捷键可以极大的提高工作效率
以下n代表任意正整数的输入
删除:
x 删除当前光标所在字符,只删一个
n+x 删除当前光标所在即之后n个字符
dw 删除光标之后的单词剩余部分
D 删除光标之后的所有字符
dd 删除光标当前所在行
n+dd 删除多行
复制粘贴:
yy 复制光标所在行
n+yy 复制多行
p 粘贴到光标所在下一行
n+p 粘贴多行
撤销回滚:
u 撤销
ctrl+r 取消撤销动作
定位首尾:
gg 定位到文本开头
G 定位到文本的文本结尾
2.编辑模式
编写内容的地方
按以下任意键进入编辑模式后才可输入内容
i insert (插入)
o 当前光标所在行下一行输入
O 当前光标所在行上一行输入
I 行首输入
A 行尾输入
一般按a
此时屏幕左下角会显示INSERT,此时在光标处正常输入内容即可。

按ESC即可从编辑模式返回命令模式
3.尾行模式
查找,设置(都是一次生效,下次失效)
在命令模式下输入冒号 ‘:’即可进入尾行模式
查找:
/keyword 回车 上翻N 下翻

设置:
设置行号
:set nu
:set nonu //取消行号

:加数字 到该行
:wq 更改后的保存退出
:q! 不保存强退
:0,$d 删除所有内容
这里分别介绍一些三种模式下的常用操作
一般工作中的常规vim用法流程是:
1.vim filename 进入命令模式
2.:0,$d 删除所有内容
3.按i进入编辑模式编辑,直接粘贴在windows的文本编辑器中写好的代码
4.按esc退出编辑模式,返回命令模式
5.:wq 保存退出