經常使用命令;
1.查看某個端口號被某個進程佔用 :lsof -i :端口號 node
2.從多個文件中查找某個字段 :find / -type f | xargs grep "myfiles"mysql
3.查找7天前修改的文件 :find / -type f -mtime +7ios
查找7天之內修改的文件 :find / -type f -mtime -7nginx
4.刪除某個文件 :rm -rf !(file|dir...)sql
5.查看CPU型號 : cat /proc/cpuinfo | grep name | cut -f2 -d : | uniq -c服務器
6.查看核心數 :cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l網絡
7.追加多行 :cat >>/etc/sysctl.conf <<EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
cat <<EOF>> /etc/sysctl.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
tee -a /etc/sysctl.conf <<-EOF
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOFssh
8.不顯示輸出 :/dev/null == 1>/dev/null(正確的不輸出)curl
/dev/null 2>&1 == 1&2>/dev/null(錯誤的和正確的同樣都不輸出)性能
9.cut截取 : cut -d :/,//.. -fn : 以:,/爲分隔符打印第n列
10.grep : grep -C 5 foo file 顯示file文件裏匹配foo字串那行以及上下5行
grep -B 5 foo file 顯示foo及前5行
grep -A 5 foo file 顯示foo及後5行
11.免交互ssh登陸:sshpass -p redhat ssh root@192.168.11.196
12.遠程執行腳本 : ssh -p 9922 -t root@192.168.12.199 'sh /tmp/install.sh'
13.遠程鏈接mysql :./mysql -h 192.168.12.59 -P 3306 -u root -p
14.修改系統字符集: localedef -c -f UTF-8 -i zh_CN zh_CN.UTF-8
export LC_ALL=zh_CN.UTF-8
echo 'LANG=zh_CN.UTF-8' > /etc/locale.conf
15.設置時區:timedatectl set-timezone $(timedatectl list-timezones| grep Shanghai)
16.同步網絡時間:ntpdate cn.pool.ntp.org
15.for循環一條命令:for i in $(cat ip);do ssh -p 9922 -t root@192.168.12.$i '/usr//bin/sh /root/aa.sh';done
16.ssh免交互生成祕鑰對:ssh-keygen -q -N "" -t rsa -f /root/.ssh/id_rsa
17.建立用戶免交互輸入密碼:useradd aa;echo redhat | passwd aa --stdin
useradd bb;echo bb:redhat | chpasswd
18.查看根下各個目錄空間大小:du -ah --max-depth=1 / | sort -r
19.斷點續傳 : wget -c 網址
20.在第6行後插入:sed -i '6 a\server NTP_SERVER iburst\n' /etc/chrony.conf
在第6行前插入:sed -i '6 i\server NTP_SERVER iburst\n' /etc/chrony.conf
21.限制Tomcat內存:修改bin/catalina.sh 第一行:JAVA_OPTS='-Xms512m -Xmx1024m -XX:PermSize=128m -XX:MaxPermSize=256m'
22.yum查看軟件包是否安裝:yum list installed | grep 包名
23.exit 0:正常運行程序並退出程序;
exit 1:非正常運行致使退出程序;
24.set -e :當命令的返回值爲非零狀態時,則當即退出腳本的執行,在開頭定義。
25.備份多個文件:for i in /etc/yum.repos.d/*.repo;do cp $i ${i%.repo}.bak;done(刪除i的後綴repo,添加bak)
26.測試nginx是否開啓壓縮:curl -I -H "Accept-Encoding: gzip, deflate" "192.168.11.199或域名"
27.nginx添加環境變量:echo "export PATH=$PATH:/usr/local/openresty/nginx/sbin" >> /etc/profile
28.日期時間:date "+%Y-%m-%d-%I:%M:%S":2018-11-12-02:22:23
年:2018————%Y
18——————%y
月:11——————%m
Nov—————%b
November——————%B
日:12——————%m
星期:Mon————%a
Monday——————%A
時:05——————%I
17——————%k,%H
分:20——————%M
秒:50——————%S
29.日期:11/12/2018——————%x
11/12/18———————%D
Mon 12 Nov 2018 05:10:02 PM CST———————%c
時間:05:12:06 PM——————%r,%X
17:12:12————————%T
30.查看服務器性能:
負載: uptime
系統日誌:dmesg | tail
系統核心指標:vmstat 1
CPU的佔用:mpstat -P ALL 1
進程佔用: pidstat 1
磁盤利用率: iostat -xz 1
網絡設備的吞吐率: sar -n DEV 1
TCP鏈接狀態: sar -n TCP,ETCP 1
全面的查看系統負載的來源: top
31.stat file:查看文件的inode
inode:數據索引,記錄除文件自己外的全部信息
32.刪除大小爲0的空文件:find ./ -size 0|xargs rm –f