awk,rsync,重启,maxdepth一层目录,登录,开机自启动

有100个日志文件,每个文件大约1G,每条日志都以 “H:i:s” 的时间格式开头,如:

05:02:04 xxx yyy zzz

   因为是日志文件,所以肯定以时间为顺序的,现在可以确定的是,在某个文件中存在一条 01:02:03 这个时间点的关于xxx的日志,要找出来 ,如何做?

 for f in *; do awk '/^01:02:03/{} /^01:1/{exit}' $f |grep xxx; done

   这样的话,没个文件只扫描很少的一部分就可以了

查询Linux系统最后重启时间的三个方法

方法一 :last reboot

方法二:who -b

方法三:uptime命令

 [root@localhost /]# rsync -azvr /home/aloft/ /backuphomedir

上面的rsync命令使用了-z来启用压缩,-v是可视化,-r是递归。上面在本地的/home/aloft/和/backuphomedir本地之间同步。

-a选项,它保留了所有人和所属组、时间戳、软链接、权限,并以递归模式运行。

 示例: 3 - 同步本地到远程主机

   root@localhost /]# rsync -avz /home/aloft/ azmath@192.168.1.4:192.168.1.4:/share/rsysnctest/

 不需要交互设置密码

chpasswd命令使用起来很简洁[root@host_221-81 ~]# echo "qa:1234" | chpasswd

[root@moban ~]# echo 123456|passwd --stdin oldboy 





find . -type d ! -name "." -prune 除了.这个目录外的其他目录,!名字取反
tree -Ld 1 d参数是列出目录,L参数是列出一层目录,相当于-maxdepth 1
find . -type d -maxdepth 1



查看用户登录的历史lastlog

/etc/rc.local  存放开机自启动的文件,一般是编译安装的程序文件

文件类型 ls –F 或者ls –p 区别目录和文件

[root@WebServer etc]# ls -F /etc/ |grep "/$"

[root@WebServer etc]# ls -l /etc/ |grep "^d"

[root@WebServer ~]# grep -Ev "^#|^$" /etc/ssh/sshd_config 去掉空行和以#号开头的行

[root@WebServer ~]# cat aa.log
aaaaa
AAAAA
bbbbb
[root@WebServer ~]# grep -i "a" aa.log      -i参数不区分大小写
aaaaa
AAAAA

 
原文地址:https://www.cnblogs.com/chenshoubiao/p/4847058.html