使用 awk 或 grep 选择 cron 条目
我想处理 cron 文件,其中包含时间和 cron 条目到数据库的不同列中。
cat root | awk '{print $1, $2, $3, $4, $5, $6}'
47 * * * * string=`find somefile`; echo $string > success.txt 2> err.txt
使用 awk 很容易对 cron 的前 5 个占位符进行 awk。但如何选择实际的 cron 条目呢? 在上面的示例中,我想选择从“string”到“$string”的所有内容 我还想选择标准和错误输出文件路径。即 success.txt 和 err.txt
更新:
awk '{print $NF}'
以上适用于最后一个变量,但以下不适用于查找倒数第二个变量。
awk '{print $NF-2}'
I want to process cron file with the time and cron entry into different columns of DB.
cat root | awk '{print $1, $2, $3, $4, $5, $6}'
47 * * * * string=`find somefile`; echo $string > success.txt 2> err.txt
It is easy to awk the first 5 placeholders of the cron using awk. But how do I select the actual cron entry?
In the above example I want to select every thing from "string" to "$string"
I do also want to select the standard and error out file paths. i.e. success.txt and err.txt
update:
awk '{print $NF}'
The above works for the last variable, but the following does not to find the second-last.
awk '{print $NF-2}'
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
摆脱初始字段的一个简单方法是使用
cut
:我相信这需要 GNU 版本的 cut,因为
--complement
标志是一个扩展。我将使用 awk 将其余部分拆分为字段:
请注意,这种方法涉及一些假设:
A simple approach to get rid of the initial fields is to use
cut
:I believe this requires the GNU version of cut, as the
--complement
flag is an extension.I'd use awk to split the rest into fields:
Note that this approach involves a few assumptions: