Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 04 Nov 2000 02:21:11 -0600 (CST)
From:      Don Read <dread@texas.net>
To:        cjclark@alum.mit.edu
Cc:        freebsd-questions@FreeBSD.ORG, Steve Price <sprice@hiwaay.net>
Subject:   Re: 'crontab -e' woes
Message-ID:  <XFMail.001104022111.dread@texas.net>
In-Reply-To: <20001101234720.J75251@149.211.6.64.reflexcom.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On 02-Nov-00 Crist J . Clark wrote:
> On Wed, Nov 01, 2000 at 09:04:26PM -0600, Steve Price wrote:
>> Howdy all,
>> 
>> Don't know if it is just a couple of days of absolutely no
>> sleep or what but I've been scratching my over head what
>> should be a simple problem.
>> 
>> Basically what I'm trying to do is setup a non-interactive
>> script that edits my crontab.  When I type the following
>> commands in it comments out the first entry.  However, when
>> I run it by redirecting stdin from a file it doesn't work.
>> >From the looks of it (note the 37 -> 38 change) the file
>> is being updated but crontab is ignoring the change.
>> 
>> steve@bsd(/tmp)$ crontab -l
>> # DO NOT EDIT THIS FILE - edit the master and reinstall.
>> # (/tmp/crontab.teFMi62568 installed on Wed Nov  1 20:47:27 2000)
>> # (Cron version -- $FreeBSD: src/usr.sbin/cron/crontab/crontab.c,v 1.12
>> # 1999/08/28 01:15:52 peter Exp $)
>> */1     *       *       *       *       /home/steve/bin/bogus.sh
>> steve@bsd(/tmp)$ cat cmds
>> 1s/^/#/
>> wq
>> steve@bsd(/tmp)$ env VISUAL=/bin/ed crontab -e < cmds
>> 37
>> 38
>> crontab: no changes made to crontab
>> steve@bsd(/tmp)$ cat cmds | env VISUAL=/bin/ed crontab -e        
>> 37
>> 38
>> crontab: no changes made to crontab
>> steve@bsd(/tmp)$ 
>> 
>> Can anyone tell what I'm doing wrong?  Thanks.
> 
> Don't ask me why, but try this,
> 
>   $ { echo '1s/^/#/'; echo w; } | env VISUAL=/bin/ed crontab -e
> 

Why all the futzing around with ex/vi/ed ?

localhost.dread$ crontab -l | grep -v "^#"
46 3-23/3 * * * bin/getsignups  > /dev/null

localhost.dread$ crontab -l | sed 's/^46 /16 /' | crontab -

localhost.dread$ crontab -l | grep -v "^#"
16 3-23/3 * * * bin/getsignups  > /dev/null

Regards,
-- 
Don Read                     dread@texas.net
There are old sailors, and there are foolish 
sailors; but damn few old foolish sailors.
---------------------------------------------


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-questions" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.001104022111.dread>