批量更名文件bash
for var in `ls *.bak`;do mv -f "$var" `echo "$var"|sed 's/....$//'`;done //將去除文件名字後面的 .bak
for var in `ls *.bak`;do mv -f "$var" `echo "$var"|sed 's/...$/xxx/'`;done //將文件名字最後的三個字符改成 xxx
查找
/etc
目錄下大於1M的文件,並將其文件名寫入
/tmp/etc
.largefiles文件中;
服務器
find /etc -size +1M -exec echo {} >> /tmp/etc.largefiles \; find /etc -size +1M >> /tmp/etc.largefiles
刪除類型不是目錄,並且沒有屬主的文件;
網絡
find / -not -type d -a -nouser -exec rm -f {} \; find / -not -type d -a -nouser | xargs -i rm -f {}
使用scp命令複製另一臺的文件到當前目錄下面ssh
scp -rp root@192.168.137.16:/root/. ./ #注意/root/. root後面的 . 要加上,它複製的是這個目錄下面的全部文件包含隱藏文件,不然不成功
複製目錄排除目錄裏面的某個文件夾或者文件,注意:--exclude後面必須是相對路徑,使用絕對路徑不行工具
rsync -av --exclude yum.log --exclude ks-script-rTogPV /tmp/ /tmp-li/
ssh的免密登錄,說明:不少公司是禁止root直接登錄的,所以設置了root的免密登錄,會提示權限拒絕,spa
免密登錄的原理就是:將a服務器生成的後綴爲.pub的文件內容複製到 b服務器的家目錄下面的.ssh下面的 authorized_keys文件裏面,而且權限爲600,a就能夠免密訪問b服務器code
ssh-keygen -t rsa #一路回車 ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.137.3 #這個是單向的
ssh-copy-id -i /root/.ssh/id_rsa.ub cdp@192.168.137.3 #設置一個從root無密碼使用cdp用戶登錄到其餘服務器,其餘服務器上面的cdp 要執行 ssh-keygen -t rsa
遠程使用sudo方式不切換root,執行root的命令blog
sudo -i -u root -- sh -c "ls;echo "------------";whoami"
sudo -i -u root -- sh -c "\cp /home/li/*.jar /tmp/jenkins-linshi/ ;bash /tmp/jenkins-linshi/test.sh"
sshpass遠程登錄並帶入密碼,執行命令,-p後面接密碼,特殊符號要使用 \ip
/usr/local/sshpass/bin/sshpass -p cbi\@123\!\@\# ssh -p 22222 cbi@10.122.1.1 "ps -ef|grep $1|grep -v grep"
find命令排除某個目錄開發
find / -path "/data" -prune -o -name "*.log" -print
————————————————————sh-----------------
sh -n 檢查語法錯誤,但不執行 sh -x 進入跟蹤方式,顯示所執行的每一條命令的執行結果
找出兩個文件中相同的行
grep -Ff a.txt b.txt
在遠程執行命令,並在本地回顯
ssh root@ip 'bash -x -s' </data/sh/auto_deploy_script.sh
刪除文件或者目錄,只留下想要的文件或者目錄
只留下 3.txt 7.txt m1 m4 其餘通通刪除
[root@localhost test]# touch {1,2,3,4,5,6,7}.txt [root@localhost test]# ls 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt [root@localhost test]# mkdir m{1,2,3,4} [root@localhost test]# ls 1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt m1 m2 m3 m4 [root@localhost test]# ls m1 [root@localhost test]# rm -rf `ls | egrep -v '(3.txt|7.txt|m1|m4)'` [root@localhost test]# ls 3.txt 7.txt m1 m4
Linux查看時區
[root@localhost backup]# timedatectl Local time: 三 2019-08-28 01:10:43 CST Universal time: 二 2019-08-27 17:10:43 UTC RTC time: 二 2019-08-27 17:10:43 Time zone: Asia/Shanghai (CST, +0800) NTP enabled: yes NTP synchronized: no RTC in local TZ: no DST active: n/a [root@localhost backup]# timedatectl|grep "Time zone" Time zone: Asia/Shanghai (CST, +0800) [root@localhost backup]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) [root@localhost backup]#
[root@localhost backup]# date +"%Z %z"
CST +0800
iptraf-ng
yum -y install iptraf-ng
iptraf是一個基於ncurses開發的IP局域網監控工具,它能夠實時地監視網卡流量,能夠生成各類網絡統計數據,
包括TCP信息、UDP統計、ICMP和OSPF信息、以太網負載信息、節點統計、IP校驗和錯誤和其它一些信息。
yum -y install nload
nload ens33 #查看指定的網卡