pac@cathedral.cerc.wvu.wvnet.edu (Michael A. Packer) (09/07/90)
does anyone have a routine which can be compiled on UNIX that will read the current directory and convert all upcase names to lowercase? if there was a file called READ.ME it would simply be converted to read.me maybe some kind of script ??? please send responses to pac@cerc.wvu.wvnet.edu thanks in advance. pac -- USMAIL: Drawer 2000, Concurrent Eng. Res. Center, WVU, Morgantown, WV 26506 PHONE: 304 293-7226 INTERNET : pac@cerc.wvu.wvnet.edu
ts@uwasa.fi (Timo Salmi LASK) (09/08/90)
In article <745@babcock.cerc.wvu.wvnet.edu> pac@cathedral.cerc.wvu.wvnet.edu (Michael A. Packer) writes: >does anyone have a routine which can be compiled on UNIX that >will read the current directory and convert all upcase names >to lowercase? No guarantees, but try taking a look at the /unix/ts directory at chyde.uwasa.fi using anonymous ftp. ................................................................... Prof. Timo Salmi (Moderating at anon. ftp site 128.214.12.3) School of Business Studies, University of Vaasa, SF-65101, Finland Internet: ts@chyde.uwasa.fi Funet: gado::salmi Bitnet: salmi@finfun
mdb@ESD.3Com.COM (Mark D. Baushke) (09/09/90)
On 7 Sep 90 15:31:31 GMT, pac@cathedral.cerc.wvu.wvnet.edu (Michael A. Packer) said: Michael> does anyone have a routine which can be compiled on UNIX that Michael> will read the current directory and convert all upcase names Michael> to lowercase? Michael> if there was a file called Michael> READ.ME it would simply be converted to read.me Michael> maybe some kind of script ??? A perl script perhaps? See below. -- Mark D. Baushke mdb@ESD.3Com.COM #!/usr/local/bin/perl # # rename-uppercase-files.pl --- rename uppercase files to lowercase # # Author : Mark D. Baushke # Created On : Sat Sep 8 11:23:23 1990 # Last Modified By: Mark D. Baushke # Last Modified On: Sat Sep 8 11:36:54 1990 # Update Count : 1 # Status : Alpha release 0.1 # # Convert any files in the given directories with uppercase file names # into lowercase file names. Default to using the current directory. unshift(@ARGV, '.') if $#ARGV < $[; # if no dir args use current directory directory: while($ARGV = shift) { if (! -d ($dir = $ARGV)) { print STDERR "Usage: $0 [directory]...\n". "$dir is not a directory...skipped\n"; next directory; } # Get all files in the dir. Use readdir since it is faster than # globbing, but also because we should to include .-files. opendir (DIR, $dir) || die "$!: $dir\nStopped"; @all = readdir (DIR); closedir (DIR); print STDERR "Processing '$dir' begins.\n"; $cnt = 0; for $file ( @all ) { # If a file has an uppercase character in it it should be converted if ($file =~ /[A-Z]/) { ($newfile = $file) =~ tr/A-Z/a-z/; # Do not clobber any existing files if ( -e $dir."/".$newfile ) { print STDERR "$dir/$newfile already exists. ". "$dir/$file not renamed.\n"; } else { rename($dir."/".$file, $dir."/".$newfile) || die "Unable to rename $dir/$file: $!"; $cnt++; } } } print STDERR "Processing '$dir' complete. $cnt files renamed.\n"; }
mpogue@dg-rtp.dg.com (Mike Pogue) (09/11/90)
In article <1990Sep7.204741.21613@uwasa.fi>, ts@uwasa.fi (Timo Salmi LASK) writes: |> In article <745@babcock.cerc.wvu.wvnet.edu> pac@cathedral.cerc.wvu.wvnet.edu (Michael A. Packer) writes: |> >does anyone have a routine which can be compiled on UNIX that |> >will read the current directory and convert all upcase names |> >to lowercase? This is a relatively simple program using 'perl', which can be found on most archive sites. Mike Pogue Data General Speaking for myself alone....
davet@cbnewsj.att.com (Dave Tutelman) (09/11/90)
In article <745@babcock.cerc.wvu.wvnet.edu> pac@cathedral.cerc.wvu.wvnet.edu (Michael A. Packer) writes: >does anyone have a routine which can be compiled on UNIX that >will read the current directory and convert all upcase names >to lowercase? This isn't "compiled", but I've been using the following shell script for about a year with no problems: -------------------- # Rename file arguments to have all lower-case names, # but don't overwrite existing files. for FILE in $* do NEWNAME=`echo $FILE | grep [A-Z] | tr [A-Z] [a-z]` if [ "a$NEWNAME" != "a" ] then if [ -s $NEWNAME ] then echo "mvlower: $NEWNAME already exists" else echo "mvlower: renaming $FILE to $NEWNAME" mv $FILE $NEWNAME fi fi done ---------------------------- If you store this script as "mvlower", then you can do what you want with mvlower * Cheers! Dave +---------------------------------------------------------------+ | Dave Tutelman | | Physical - AT&T Bell Labs - Lincroft, NJ | | Logical - ...att!pegasus!dmt == dmt@pegasus.att.com | | Audible - (201) 576 2194 | +---------------------------------------------------------------+
glaeske@plains.NoDak.edu (Brian Glaeske) (09/11/90)
Here is the program to put filenames in lowercase. Have a blast with it. --Cut Here-- #!/bin/csh set progname = `basename $0` foreach file ($*) set newname = `echo $file | tr A-Z a-z` if -f $newname then echo ${progname}: Will not overwrite ${newname}. else echo ${progname}: \[$file\]\ -\> \[$newname\] mv $file $newname endif end --Cut Here-- -- Brian Glaeske - /| glaeske@plains.NoDak.edu [Internet] o.O` --Ooop ACK!! glaeske@plains [BITNET ] =(___)= ..!uunet!plains!glaeske [UUCP ] U "Bloom County Forever!!"