tail 关键字高亮
tail -f 日志文件 | perl -pe 's/(关键字)/\e[1;31m$1\e[0m/g'
tail -f 日志文件 | perl -pe 's/(关键字)/\e[1;31m$1\e[0m/g'
timeout -s SIGINT 100 flock -xn /tmp/lock /path/to/php /path/to/file
# 这样写的好处是在上一个请求还未完成,下个请求动作不会发生直至超时
#!/bin/bash
# 删除tmp目录下7天未访问的文件
upload_tmp='/root/tmp'
expire_day=7
function ergodic() {
for file in `ls $1`
do
if [ -d $1"/"$file ]
then
ergodic $1"/"$file
else
newFile=$1"/"$file
accessTime=`stat -c %X ${newFile}`
curTime=`date +%s`
diff=`expr ${curTime} - ${accessTime}`
diffDay=`awk -v num=${diff} 'BEGIN{printf "%.2f\n",(num/60/60/24)}'`
# 除以小数
ret=`awk -v num1=${diffDay} -v num2=${expire_day} 'BEGIN{print(num1>num2)?"0":"1"}'`
# 小数比较
if [ $ret -eq 0 ]
then
# echo ${newFile}
\rm -rf ${newFile}
fi
fi
done
}
ergodic ${upload_tmp}
#!/bin/bash
printf "Enter new password: " # 提示输入
stty -echo # 关闭自动打印输入字符的功能
read password < /dev/tty # 读取密码
printf "\nEnter again: " # 换行后提示再输入一次
read password2 < /dev/tty # 再读取一次以确认
printf "\n" # 换行
stty echo # 记着打开自动打印输入字符的功能
echo "Password = " $password # 输出读入变量
echo "Password2 = " $password2
echo "All Done"
报告当前系统中所有CPU的实时运行状况
-P {|ALL} 表示监控哪个CPU, cpu在[0,cpu个数-1]中取值
internal 相邻的两次采样的间隔时间
count 采样的次数,count只能和delay一起使用
当没有参数时,mpstat则显示系统启动以后所有信息的平均值。有interval时,第一行的信息自系统启动以来的平均信息
%user 在internal时间段里,用户态的CPU时间(%),不包含nice值为负进程 (usr/total)*100
%nice 在internal时间段里,nice值为负进程的CPU时间(%) (nice/total)*100
%sys 在internal时间段里,内核时间(%) (system/total)*100
%iowait 在internal时间段里,硬盘IO等待时间(%) (iowait/total)*100
%irq 在internal时间段里,硬中断时间(%) (irq/total)*100
%soft 在internal时间段里,软中断时间(%) (softirq/total)*100
%idle 在internal时间段里,CPU除去等待磁盘IO操作外的因为任何原因而空闲的时间闲置时间(%) (idle/total)*100
pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等
-l 显示该进程和CPU相关的信息(command列中可以显示命令的完整路径名和命令的参数)。
-d 显示该进程和设备IO相关的信息。
-r 显示该进程和内存相关的信息。
-w 显示该进程和任务时间片切换相关的信息。
-t 显示在该进程内正在运行的线程相关的信息。
-p 后面紧跟着带监控的进程id或ALL(表示所有进程),如不指定该选项,将监控当前系统正在运行的所有进程。
%usr: 该进程在用户态的CPU使用率。
%system: 该进程在内核态(系统级)的CPU使用率。
%CPU: 该进程的总CPU使用率,如果在SMP环境下,该值将除以CPU的数量,以表示每CPU的数据。
CPU: 该进程所依附的CPU编号(0表示第一个CPU)