使用xargs的方式实现查看所有用户的crontab任务

以root用户执行

cat /etc/passwd | cut -f 1 -d : |xargs -I {} crontab -l -u {}

前几天工作的需要,用到了这个,这里面有很多知识点,比如xargs的用法。crontab的用法。

xargs的用法整理

linux里面的xargs和python里面的eval很像。它会自动执行前面的指令,然后把执行之后的返回结果传给后面使用。这里整理xargs的几个比较常用的方法。

-0 当stdin含有特殊资源的时候,将其当成一般字符,像空格等

-d 可以自定义一个定界符:

# echo "nameXnameXnameXname" | xargs -dX -n2
> name name
  name name
# echo "//"|xargs echo
> "//"
# echo "//"|xargs -0 echo
> "//"
> 

-i/-I,这看linux支持。将xargs的每一项名称,一行一行的赋值给{},可以用{}代替。

-n num后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的。

crontab的用法整理

crontab里面,crontab -l 列出某个用户cron服务的详细内容
crontab -r 删除某个用户的cron服务
crontab -e 编辑某个用户的cron服务
crontab -u user_name 设定某个用户的cron服务,一般root用户在执行这个命令的时候需要此参数。
修改之后的重启和查看状态

# service crond status
# service crond restart 

参考:

https://blog.csdn.net/mlzhu007/article/details/81662091
https://blog.csdn.net/xifeijian/article/details/9286189
https://www.cnblogs.com/f-ck-need-u/p/5925923.html
https://blog.csdn.net/caicongyang/article/details/46662961

猜你喜欢

转载自blog.csdn.net/funnyPython/article/details/84100476