Linux常用指令及shell脚本记录
记录一些常用指令在博客上,以防哪天因太久不敲而忘却,还可以直接翻看博客记录,不用再一条条百度搜......
一、Linux常用指令
一、设置文件权限为aapp用户及用户组——
chown -R app:app elasticsearch-6.5.0
二、免密A服务器远程复制当前目录jdk.sh文件数据到B服务器app目录下——
scp jdk.sh root@10.223.xx.xx:/app/
三、查看哪个文件夹占用磁盘情况
du -sh /*
四、linux删除文件前N行
遇到过很多老项目把日志文件都放同一个文件里,当磁盘出现满的情况,需要清除日志时,就有了清理文件前N行之前日志的需求,流程如下:
1、通过tail命令,将文件尾部N行后的数据重定向到一个新文件中——
tail -n 30000 old.log > out.bak.log
2、删除旧文件,替换新文件——
rm old.log
mv out.bak.log old.log
五、创建用户与密码
[root@zhu ~]# adduser app
[root@zhu ~]# passwd app
二、shell脚本记录
一、批量删除Redis集群key为同一前缀缓存数据————
Redis指令del不支持批量删除key为同一前缀缓存数据—,但可以通过shell脚本间接实时批量删除操作,建立一个redis_del.sh脚本,复制以下内容到脚本文件当中,删除形式为:./redis_del.sh name:topic* 即可批量批量删除key为name:topic的缓存数据——
#!/bin/bash
redis_comm=/opt/redis5/bin/redis-cli
redis_ser01=192.168.1.200
redis_ser02=192.168.1.201
redis_ser03=192.168.1.202
$redis_comm -c -h $redis_ser01 keys $1 |xargs -i ./redis-cli -h $redis_ser01 del {}
$redis_comm -c -h $redis_ser02 keys $1 |xargs -i ./redis-cli -h $redis_ser02 del {}
$redis_comm -c -h $redis_ser03 keys $1 |xargs -i ./redis-cli -h $redis_ser03 del {}