筆記

查看當前目錄下各個文件及目錄佔用空間大小
du -sh *

shell獲取最後一列:awk '{print $NF}'
shell去掉最後一個字符:
                sed 's/.$//'
                awk '{sub(/.$/,"")}1'
                awk '{printf $0"\b \n"}' ufile


shell數組去重:arr=`cat mylog/top_monitor_record_1_100.log|grep v-binbi|awk '{print $NF}'|sed 's/ /\n/g'|sort|uniq`
shell輸出數組:echo ${arr[*]}
awk打印除第一列之外的所有列:awk '{for(i=2;i<=NF;++i) printf $i "\t";printf "\n"}' test.txt


$$ 
Shell本身的PID(ProcessID) 
$! 
Shell最後運行的後臺Process的PID 
$? 
最後運行的命令的結束代碼(返回值) 
$- 
使用Set命令設定的Flag一覽 
$* 
所有參數列表。如"$*"用「"」括起來的情況、以"$1 $2 … $n"的形式輸出所有參數。 
$@ 
所有參數列表。如"$@"用「"」括起來的情況、以"$1" "$2" … "$n" 的形式輸出所有參數。 
$# 
添加到Shell的參數個數 
$0 
Shell本身的文件名 
$1~$n 
添加到Shell的各參數值。$1是第1參數、$2是第2參數…。

1. 使用tar壓縮文件

tar -zcvf test.tar.gz ./test/

該命令表示壓縮當前文件夾下的文件夾test,壓縮後綴名爲test.tar.gz

如果不需要壓縮成gz,只需要後綴爲tar格式的,那麼輸入如下命令:

tar -cvf test.tar ./test/

 

2. 使用tar解壓文件

tar -xzvf test.tar.gz  

該命令表示把後綴爲.tar.gz的文件解壓到當前文件夾下。

如果壓縮文件的後綴是.tar,沒有gz,則使用命令:

tar -xvf test.tar

df 查看磁盤佔用
htop 比top更人性化
free 查看內存空閒

 

監控gpu

pid=()

for。。。

do
  nvidia-smi dmon -s u -f './gpu_status_'${data}'.txt' &
  pid+=("$!")
  nvi_pid=${pid[${#pid[*]}-1]}

  sleep 20
  kill ${nvi_pid}
  sleep 20
done

 

監控cpu

#!/bin/bash
process_name_1="【xxx】"  # get the specifical process_name

path=`pwd`
log_file=$path"/top_monitor_record.log"
hostname=`uname -n`
CPU_info=`cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c`
MEM_info=`cat /proc/meminfo | grep -i 'MemTotal'`
echo "hostname: "$hostname", CPU: "$CPU_info", MEM: "$MEM_info > $log_file
echo "TIME, PID, USER, VIRT, RES, SHR, %CPU, %MEM, COMMAND" >> $log_file

while true
do
	pid_1=`ps -ef | grep root | grep $process_name_1 | grep -v grep | grep -v /home |sed -n '1p' |awk '{print $2}'`
	top -p $pid_1 -b -n 1|sed -n '8,16p'|awk 'BEGIN {FS=" ";OFS=", "}{now=strftime("%Y/%m/%d %T",systime());print now,$1,$2,$5,$6,$7,$9,$10,$12}' >> $log_file
	sleep 10
done

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章