Re: A challenge for UNIX wizards
Article: 7873 of alt.hackers Newsgroups: alt.hackers From: tim@acm.org Subject: Re: A challenge for UNIX wizards Message-ID: tim.801387391@canon.co.uk Sender: tim@canon.co.uk Organization: Not !NET-CRE Date: Thu, 25 May 1995 07:36:31 GMT Approved: tim@canon.co.uk Lines: 26 Status: RO
set@oryx.llnl.gov (Sam Trenholme) writes: |Ok guys, is there a way of doing this without using a temporary file: | |ls | awk 'BEGIN{FS="."}{print "mv "$0" "$1".1"}' > l;chmod 700 l;l;rm l | |(The above made a list of files, foo.man, bar.man, etc. have the names |foo.1, bar.1, etc) | |The following didn't work: | |eval `ls | awk 'BEGIN{FS="."}{print "mv "$0" "$1".1"}'` You're just missing a semi-colon to separate the individual mv commands, ie: eval `ls | awk -F. '{print "mv "$0" "$1".1;"}'` Alternatively: perl -e 'for(@ARGV){($n=$_)=~s/\.man$/.1/;rename($_,$n);}' *.man Bigger and faster. Tim -- Tim F O'Donoghue <tim@acm.org> +44-1483-448855 !TFO