Linux基本命令四
1.vi 进入文件后的命令详解
1)命令模式:
dd
删除当前行
dG
删除当前光标所在的行已经以下的所有行
ndd
删除当前光标所在的行已经以下的n-1
行,n
代表数字
gg
跳转到第一行的行首
G
跳转到最后以后的行首
shift+$
跳转到光标所在行的行尾
0
跳转到光标所在行的行首
gg+dG
组合命令,可以真正清空文件,清空后的文件大小为0字节,但是如果文件内容很大,加载会很慢
cat /dev/null > xxx.log
也可以真正的清空文件,推荐使用
echo '' > xx.log
伪清空,最后文件还是有一个字节的大小
-rw-r--r--. 1 root root 1 Jun 23 05:12 test.log
2)尾行模式
:wq
保存文件的修改并退出
:wq!
强制保存文件的修改并退出
:q!
强制退出文件,放弃之前的修改
set nu
显示行号
set nonu
关闭显示行号
:/xxx
搜索xxx,按n
搜索下一个,N
搜索上一个
2.权限
chown test:test test.log
改变 文件的所属用户和用户组
chmod 777 test.log
改变文件的读写执行权限
chown -R test:test aa
改变文件夹的所属用户和用户组
chmod -R 777 aa
改变文件夹的读写执行权限
特别注意:-R
参数,只有用在修改权限这边,其他的命令都是-r
drwxr-xr-x. 2 root root 4096 Jun 14 14:52 Downloads -rw-r--r--. 1 root root 49565 Jun 14 22:43 install.log
第一个字母代表:
d
文件夹,-
文件,l
软连接
后面的字母代表:r
读(4),w
写(2),x
执行(1),-
没有任何权限(0)
以这个为例:rwxr-xr-x
.
三个为一组,rwx
、r-x
、r-x
第一组:rwx
(7) 代表文件和文件夹所属的用户的权限:读写执行
第二组:r-x
(5) 代表文件和文件夹所属的用户组的权限:读执行
第三组:r-x
(5)代表其他组的所有用户对这个文件和文件夹的权限:读执行
在工作上一般,一般只在自己的家目录做事情 和可以去的文件夹和文件。
一般都是对应的用户开启对应的服务
比如:用mysqladmin用户开启mysql服务
3.软连接
相当于window的快捷键
[test@Hadoop001 ~]$ ll drwxr-xr-x. 2 test bigdata 4096 Jun 23 05:59 test [test@Hadoop001 ~]$ ln -s test t [test@Hadoop001 ~]$ ll total 4 lrwxrwxrwx. 1 test bigdata 4 Jun 23 06:00 t -> test drwxr-xr-x. 2 test bigdata 4096 Jun 23 06:00 test
应用场景:
1.多版本:多个版本的脚本文件夹,可以建立一个软连接对外提供服务,每次需要换版本的适合,删除之前的软连接,再重新创建连接到新版本的软连接。
2.硬盘容量不足的情况:目录所挂载大的磁盘容量不够,需要把大的文件移动到大容量的磁盘下去,但又不能影响之前的脚本运行,可以把大文件mv
到大磁盘容量的目录下去,然后建立一个软连接。
特别注意:所属的权限 用户 用户组的变化
4.系统命令
1)
df -h
用于显示目前在Linux系统上的文件系统的磁盘使用情况统计[test@Hadoop001 ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 41G 3.4G 35G 9% / tmpfs 4.0G 72K 4.0G 1% /dev/shm /dev/sda1 1008M 62M 896M 7% /boot
2)
free -m
指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等[test@Hadoop001 ~]$ free -m total used free shared buffers cached Mem: 7993 383 7610 0 39 105 -/+ buffers/cache: 238 7755 Swap: 8191 0 8191
3)
top
用于实时显示 process 的动态top - 06:15:58 up 1:18, 1 user, load average: 0.03, 0.01, 0.00 Tasks: 124 total, 1 running, 123 sleeping, 0 stopped, 0 zombie Cpu(s): 0.0%us, 0.2%sy, 0.0%ni, 99.8%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 8185668k total, 393048k used, 7792620k free, 40292k buffers Swap: 8388600k total, 0k used, 8388600k free, 108276k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 19364 1548 1232 S 0.0 0.0 0:02.11 init 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
load average: 0.03,0.01,0.00
代表1min,5min,15min系统负载情况
一般<10
表示系统还行,>10
系统负责高
5.解压和压缩
1)
zip
文件
[root@Hadoop001 Desktop]# zip test.zip test.log
压缩文件
[root@Hadoop001 Desktop]# zip -r test.zip 1/*
压缩文件夹
[root@Hadoop001 Desktop]# unzip test.zip
解压文件
2)tar.gz
文件
[root@Hadoop001 Desktop]# tar -xzvf xxx.tar.gz
解压文件
[root@Hadoop001 Desktop]# tar -czvf test.tar.gz test.log
压缩文件
[root@Hadoop001 Desktop]# tar -czvf test2.tar.gz 1/*
压缩文件夹
6.wget下载
yum install -y wget
安装wget
wget 链接地址
下载连接
7.调度
crontab -e
编写调度任务
crontab - l
查看编写的调度任务[root@Hadoop001 opt]# crontab -l * * * * * /root/data.sh >> /tmp/data.log 分 小时 日 月 周
*
表示 每
如果是每隔两分钟,则为
*/2
如果需要每10s执行一次,那么只能修改shell脚本,循环调用6次,每次休眠10s
8.后台执行
nohup 命令 2>&1 &
例如:nohup ./date.sh >> /tmp/date.log 2>&1 &
2>&1
将标准错误重定向到标准输出
nohup &
后台执行
特别注意:./date.sh &
并不是真正后台执行 ,它只是session级别的
网友评论