几个常用的Linux终端(XShell,Secure我用的就是这个)命令:
Ctrl + l 清屏
Ctrl + u 剪切(删除)命令行中光标所在处之前的所有字符(不包括自身)
Ctrl + k 剪切(删除)命令行中光标所在处之后的所有字符(不包括自身)
Ctrl + r 模糊查找以前输入的命令(向上查找)
解压zip文件:
unzip solrCloud.zip -d /
压缩,将data目录下的所有文件及文件夹压缩到data.zip文件中:
zip -r data.zip data/
将目录压缩成tar包
tar -cvf elasticsearch.tar elasticsearch
Linux查看端口占用:
netstat -apn | grep 8080
netstat -ntulp
查找目录的所有文件及其子目录中是否含有某个字符串:
find . | xargs grep -ri "solr_home"
指替换文件中指字符串:
格式: sed -i “s/查找字段/替换字段/g” grep 查找字段 -rl 路径
将文件中的 hadoop 字符串替换为 spark
sed -i "s/hadoop/spark/g" result1.txt
替换多个文件: 将文件中的Hadoop字符串替换为 spark
sed -i "s/hadoop/spark/g" `ls`
替换多个文件 :将文件中的spark字符串替换为 kafka
sed -i "s/spark/kafka/g" `grep spark -rl ./*`
格式化显示日期:
# 格式化显示日期
date "+%Y-%m-%d"
date "+%H:%M:%S"
date "+%Y-%m-%d %H:%M:%S
Linux日期时间转Unix时间戳:
## 当前时间转Unix戳:
date +%s
## 指定日期转时间戳:
date -d '2017-06-02 16:32:10' +%s
Linux时间戳转日期:
date -d @1496332800 +"%Y-%m-%d %H:%M:%S"
Linux日期加减
# 当前日期减去两天
date -d '2 days ago' "+%Y-%m-%d %H:%M:%S"
删除大量文件的时候rm删除不了:
find . -name "*" | xargs rm -rf '*'
更改目录所属用户和组:
chown -R dong:bigdata opt/
更改文件夹所属用户:
chown -R es elasticsearch-6.2.2
更改文件夹所属组:
chgrp -R bigdata elasticsearch-6.2.2
查看Linux系统版本
cat /etc/issue
cat /proc/version
lsb_release -a
Linux创建用户组并指定gid:
groupadd -g 1024 bigdata
Linux创建es用户并指定组为bigdata:
useradd -g bigdata es
修改hive.log文件所有者为es:
sudo chown es hive.log
修改hive.log文件所在组为bigdata:
sudo chgrp bigdata hive.log
修改用户dong所在组为bigdata
usermod -g bigdata dong
指定创建用户时默认所在组
useradd -D -g bigdata
创建用户时指定默认Shell为zsh
useradd -D -s /bin/zsh
定时调度并执行命令:
#!/bin/bash
da=`date -d ${1} +%Y-%m-%d`
num=7
## for every day
for ((i=0; i<${num}; i++))
do
./run-day-schedule.sh ${da}
count=1
while(($count >= 1 ))
do
count=`ps aux | grep cloud.wf_schedule | grep -v grep |wc -l`
echo "Check ${da} task size is $count"
sleep 1
done
echo "Check ${da} task success"
da=`date -d "+1 day ${da}" +%Y-%m-%d`
done
Linux挂载分区把ext4类型的文件系统挂载/dev/sdb1挂载到/mnt/my_partition目录下
mount -t ext4 /de/sdb1 /mnt/my_partiton
对/etc/passwd进行排序,以":"分隔,按第3个字段(ID)反向排序
sort -t ':' -k 3 -n /etc/passwd
Centos防火墙添加端口例外
vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8090 -j ACCEPT