登录Linux服务器显示IP和自定义备注

默认搭建好的Linux服务器,使用Xshell登录的窗口如下所示:

可根据需要执行如上代码,再重新登录服务器,效果如下图所示:

代码片段:echo "export PS1='\u@\[\e[0;31m\]<192.168.126.135:7Road-web>|\w\[\e[m\]:\$'">>/root/.bashrc

重新登录后可显示服务器IP和服务器简介信息还可显示当前所在目录信息

export PS1='\u@\[\e[0;31m\]<\H|\w>\[\e[m\]:\$ '
export PS1='\[\e[32;1m\][\[\e[33;1m\]\u\[\e[31;1m\]@\[\e[33;1m\]\H \[\e[36;1m\]\w\[\e[32;1m\]]\[\e[32;1m\]\[\e[0m\]:\$ '

Xshell 常用快捷键
Disk :du -h --max-depth=1 
Process ex Time :ps -eo cmd,lstart|grep 
Date rsync:ntpdate asia.pool.ntp.org
SystemInfo:wget -qO- mycheryhr.github.io/systeminfo.sh |bash
pip Install:pip install -i https://pypi.douban.com/simple/ 
备选:https://mirrors.aliyun.com/pypi/simple/
grep:grep -vE "^$|#|;" 
ip-grep:for i in `find . -regex '.*\.conf\|.*\.config\|.*\.php\|.*\.lua'` ;do grep -nrwEH "(2[0-4][0-9]|25[0-5]|1[0-9][0-9]|[1-9]?[0-9])(\.(2[0-4][0-9]|25[0-5]|1[0-9][0-9]|[1-9]?[0-9])){3}" $i; done
列出所有用户的crontab:for USER in `ls /var/spool/cron`; do echo -e "\033[32m############## crontab for $USER #############\033[0m"; cat /var/spool/cron/$USER;done
PS1: export PS1='\u@\[\e[0;31m\]<\H|\w>\[\e[m\]:\$ ' ;clear ;ls -hla ;
获取系统最大的10个文件夹
du -xB M --max-depth=2 / | sort -rn | head -n 10
mysql show processlist:
SELECT ID,USER,HOST,DB,COMMAND,INFO,TIME FROM INFORMATION_SCHEMA.PROCESSLIST WHERE LENGTH(INFO) > 2 AND DB IS NOT NULL \G;
结束慢查询sql Kill ID即可

# 端口连接
ss -antp | grep 36000 | awk '{print $NF}' | awk -F ":" '{print $1} ' | sort | uniq -c | sort -nr -k1 | head -n 10

# 导出慢查询日志中最慢的10条sql
mysqldumpslow -s -r -t 10 slow-query.log

#删除文件保留指定文件
find [path] -type f -not -name 'EXPR' -print0 | xargs -0 rm --
find ./ -mtime +100 -name "*.log.*" -exec rm -f  {} \;

批量替换

for Filename in `grep -r -w "AAAAA" ./ | awk -F":" '{print $1}' |sort|uniq|egrep -v "*.sql$|*.log$"`;
do
echo "$Filename" ;
sed -i "s#AAAAA#BBBBB#g" $Filename;
done

echo $(hostname)_$(date +%Y%m%d_%H%M%S)

抓包: tcpdump -i any port 53 -C 50 -W 20 -w /tmp/client_dns.pcap 
分析: tshark -tad -r client_dns.pcap -Y "dns.id == 0x6aa6"
echo "127.0.0.1" | xargs -i ssh {} 'echo {}; date'
systemctl list-unit-files|grep enabled
生成随机字符串:openssl rand -hex 16  |  tr -cd '[:alnum:]' </dev/urandom | head -c 30

nohup sh xxxxxx 1>/dev/null 2>/dev/null &
 
```sh
# 批量读取行取变量值
while read line
do
    read project_name filename usernumber < <(echo ${line} |awk -F" " '{print $1,$2,$3}')
    echo $project_name $filename $usernumber
done < loop.txt
```
 
## PV PVC LOST
```sh
kubectl patch pv k8s-xxx-pv  -p '{"spec":{"claimRef": null}}'
```
 
## backup k8s
```sh
for i in `kubectl get ns --no-headers |awk '{print $1}'`;do
    for j in deployments statefulsets replicaset daemonsets services ingress secrets configmaps serviceaccounts
    do
        mkdir -p $(date +"%Y-%m-%d")/$i/$j
        for k in `kubectl get $j -n $i --no-headers |awk '{print $1}'`
        do
            kubectl get $j $k -n $i -o yaml >  $(date +"%Y-%m-%d")/$i/$j/$k.yml
        done
    done
done    
```
 
# docker 占用磁盘最多的pod
docker system df 
docker image prune  
docker volume prune # 删除所有未被任何容器引用的 Docker 卷
docker container prune # 删除所有已停止的容器
docker buildx prune # 删除build cache
docker ps -a --format "table {{.Size}}\t{{.Names}}" | grep -v SIZE| sort -hr
docker run -itd --entrypoint /bin/bash <docker_image>
docker history --format {{.CreatedBy}} --no-trunc=true <docker_image> |sed "s/\/bin\/sh\ -c\ \#(nop)\ //g"|sed "s/\/bin\/sh\ -c/RUN/g" | tac
docker run --privileged --pid=host -it busybox:latest nsenter --target 1 --mount --uts --net --ipc bash # 容器适用特权管理node
 
# 获取未挂载的disk
lsblk -o NAME | grep sd | grep -vE "[1-9]" | grep -vE "`lsblk -o NAME | grep sd | grep -E "[1-9]" | awk -F "s| " '{print "s"$2}' | awk '{print substr($0, 1, 3)}' | uniq | xargs | sed s'/ /|/g'`" | head -n 1
posted @ 2015-11-18 12:28  Mr黄瑞  阅读(618)  评论(0编辑  收藏  举报