一.vi命令
- 命令行模式
dd 删除当前行
dG 删除光标所在行及以下的所有行
ndd 删除光标所在行及以下的n-1行
gg 跳转到第一行的首字母
G 跳转到最后一行的首字母
shift+$ 行尾
0 行首
vi清空这个文件:
gg+dG 真正清空 0字节 但是文件内容假如很大 加载肯定很慢
echo "" > install.log
伪清空 1个字节
echo '' > install.log
伪清空 1个字节
-rw-r–r--. 1 root root 1 Jun 22 20:20 install.log
cat /dev/null > install.log
真正清空 0字节 - 编辑模式
切换到编辑模式的四种方式,编辑模式可以输入任意内容:
a 光标向后移动一位
i 当前位置
o 另起新行
s 删除光标所在字符
r 替换光标所在字符 - 尾行模式,用于保存内容、查找替换、设置行号等等功能性操作
:q //quit退出vi编辑器
:w //write保存修改的内容
:wq //保存并退出
:q! //强制退出,当对文本内容作了修改而不想要保存时
:w! //强制保存,当没有文本的写权限时
:set number 或 :set nu //显示行号
:set nonumber 或 :set nonu //取消显示行号
二.权限
- chown 改变用户用户组权限
- chmod 改变读写执行
- 针对文件夹操作
chown -R jepson:jepson ruozedata
chmod -R 777 ruozedata( 代表所有人都有最大权限 读写执)
三.软链接
ln -s 源文件 链接文件
[root@hadoop001 ~]# mkdir test1
[root@hadoop001 ~]#
[root@hadoop001 ~]#
[root@hadoop001 ~]# ln -s test1 test2
[root@hadoop001 ~]# ll
total 473680
-rw-r--r-- 1 root root 173271626 Jun 13 15:08 jdk-8u45-linux-x64.gz
-rw-r--r-- 1 root root 311771412 Jun 13 11:39 mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz
drwxr-xr-x 2 root root 6 Jun 18 10:46 ruozedata
drwxr-xr-x 2 root root 6 Jul 5 15:22 test1
lrwxrwxrwx 1 root root 5 Jul 5 15:23 test2 -> test1
[root@hadoop001 ~]#
注意:如果链接文件和源文件不是在同一目录,在做软连接时,两者的文件都最好写绝对路径
四.系统命令
-
df -h 查看磁盘容量
-
free -m 查看内存大小
-
top
load average: 0.00, 0.00, 0.00
1min 5min 15min生产上 <=10 表示 系统还行,/>10 系统负载高 就是卡
五.解压缩
-
zip
unzip -o test.zip -d tmp/
将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件。
zip -r test.zip ./*
将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件。
-
tar.gz
tar -xzvf xxx.tar.gz -C /tmp
解压xxx.tar.gz包,并将说有的文件放到/tmp目录下
tar -czvf xxx.tar.gz test/*
将test目录里的所有文件或者文件夹打包成xxx.tar.gz
六.wget
wget url下载连接地址
七.调度crontab
-
crontab -l 查看当前用户的调度任务
-
crontab -l -u hadoop 查看hadoop用户的调度任务
-
crontab -e 给当前用户创建调度任务
-
crontab -e -u hadoop 给hadoop用户创建调度任务
[root@hadoop001 tmp]# crontab -l
* * * * * /tmp/date.sh >> /tmp/date.log
分 小时 日 月 周 -
表示 每
1.每隔2分钟
*/2 * * * *
2.每隔10s执行
1min 6次[root@hadoop001 tmp]# cat date.sh
#!/bin/bashfor((i=1;i<=6;i++))
do
echo “wwww.ruozedata.com”
date
sleep 10s
done
八.后台执行
./date.sh &
并不是真正后台执行nohup ./date.sh &
会将输出文件保存在当前目录的nohup.out文件(测试用)nohup ./date.sh >> /tmp/date.log 2>&1 &
将输出文件定向到/tmp/date.log文件(生产上用)