现在需要一个定时任务,在15分钟后执行一次,将/ect/passwd文件中包含wzbc的所有行,输入到tmp/passwd.txt下
时间: 2024-10-13 22:02:26 浏览: 35
Shell脚本一次读取文件中一行的2种写法
5星 · 资源好评率100%
要设置一个定时任务,以便15分钟后执行并按指定条件操作文件,这通常在Unix或Linux操作系统中使用cron定时任务。下面是一个基本的步骤指导:
1. 打开终端(Terminal)。
2. 首先,你需要拥有执行此任务所需的权限。如果需要sudo权限,输入 `sudo -i` 并确认密码。
3. 编辑crontab文件,输入 `crontab -e`。这会打开一个文本编辑器,如vim或nano。
4. 在编辑器中添加一个新的条目。按照Unix时间格式,15分钟后执行的任务应该写成:
```
* * * * * /bin/bash -c 'grep wzbc /etc/passwd > tmp/passwd.txt'
```
这一行的意思是:每分钟(*)、每一小时(*)、每天(*)、每个月(*)、每周(*)都在当前用户环境下执行 `/bin/bash -c 'grep wzbc /etc/passwd > tmp/passwd.txt'` 命令。`grep wzbc` 查找`/etc/passwd` 中包含 "wzbc" 的行,然后重定向输出到 `tmp/passwd.txt`。
5. 完成后,保存并退出编辑器。大多数编辑器会提示你按 `Esc` + `:` 键,然后输入 `:wq` 来保存并退出。
6. 为了检查新设置的定时任务是否生效,你可以等待15分钟后看看`tmp/passwd.txt` 文件是否有内容。
7. 如果你想立即测试这个命令,可以直接在终端里运行它,而不需要设置定时任务。
注意:crontab的具体语法可能会因Linux发行版的不同而有所差异,上述例子适用于基于Bash的系统。
阅读全文