Sponsored Content
Top Forums Shell Programming and Scripting Renaming multiple files, specifically changing their case Post 302490813 by otheus on Tuesday 25th of January 2011 05:49:21 PM
Old 01-25-2011
My script doesn't nicely handle the case where the the file already has the proper name. In those cases, mv will complain about target and source being the same file. To prevent that, simply change the for:
Code:
for file in [a-z]* ;do

As far as a "pure" bash solution, I don't think one exists without writing a big case-Waac to handle lower - upper case conversion. Luckily, cut and tr are standard tools on every system. But it's pretty cool to see how ruby is apt for more than just Web Development.
This User Gave Thanks to otheus For This Post:
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

renaming multiple files

Hi to everyone!!. Here's my stupid question of the day. When I have to rename a file I use "mv filename newfilename". But what about renaming multiple files, for example if I want to add the prefix "old" to several image files (in fact it's what I wanted to do..). Thanks in advance.... :D (6 Replies)
Discussion started by: piltrafa
6 Replies

2. UNIX for Dummies Questions & Answers

Renaming multiple files

Help! I was trying to rename multiple files. Like in DOS, i decided to use wildcards and now i am missing some files. Any ideas on how to recover them? Or find out where the files went? I had these 3 files resume1.log elecresume.log compresume.log The command I ran was mv *.log *.log.bak... (6 Replies)
Discussion started by: rmayur
6 Replies

3. Shell Programming and Scripting

Renaming multiple files

hi, I've a machine running RHEL3,kernel version 2.4. i need to rename multiple files under one directory as follows: ls demo.c demo.S demo-1243.sw demo.xyz and now i need to replace the occurrence of demo with demo_1 for each of the above file. the tedious way is to go ahead and do mv on... (2 Replies)
Discussion started by: amit4g
2 Replies

4. Shell Programming and Scripting

Renaming multiple files

I have a bunch of files txt1.csv--2008 thru to txt3.csv--2008. If i wanted to rename these files all at the same time to txt*.csv-2008 what would be the best way to do it... Just need to get rid of the extra - in each file name.. not all files are going to be called txt*.csv--2008. Just... (6 Replies)
Discussion started by: Jazmania
6 Replies

5. Shell Programming and Scripting

Renaming multiple files

Hi, I have several hundred files I need to rename, and I'm would rather not hit F2 for each file individually to rename them. Example of file: large1961.jpg What I need the file to be renamed as: 1961.jpg I don't know what type of command I can execute within a shell script that would... (7 Replies)
Discussion started by: jayell
7 Replies

6. UNIX for Dummies Questions & Answers

Renaming multiple files

Hi, Can we rename multiples files using find or awk utility? Now I am doing it using for loop and getting the file name and in side the loop using the mv command. Like ine need t rename all txt files to doc file. For example a1.txt => a1.doc a2.txt => a2.doc a3.txt => a3.doc myfile.txt... (2 Replies)
Discussion started by: siba.s.nayak
2 Replies

7. UNIX for Dummies Questions & Answers

Renaming files by changing date order

I'm looking for a simple solution to rename a batch of files. All of the files in this directory start with a date in the format mm.dd.yy followed by a space and then additional descriptive text. Example: 01.21.10 742 P.xlsx 02.24.09 730 Smith.xlsx The information following the date can... (3 Replies)
Discussion started by: kreisel
3 Replies

8. Shell Programming and Scripting

Renaming multiple files

I have 34 file in a directory that all have different names, however, they do have 1 pattern in commmon. They all have "-10-11-2010" date format in the name. I want to replace the date in the file name with a supplied date or maybe even the system date. I am sure I will be using awk or sed to... (9 Replies)
Discussion started by: Harleyrci
9 Replies

9. UNIX for Dummies Questions & Answers

Renaming Multiple files

Hello, I have multiple files that I want to change the names to. Let's say for example that I want to rename all the files in the left column to the names in the right column: What would be the easiest way to go about doing this? Thanks. (1 Reply)
Discussion started by: Scatterbrain26
1 Replies

10. Shell Programming and Scripting

Renaming multiple files in sftp server in a get files script

Hi, In sftp script to get files, I have to rename all the files which I am picking. Rename command does not work here. Is there any way to do this? I am using #!/bin/ksh For eg: sftp user@host <<EOF cd /path get *.txt rename *.txt *.txt.done ... (7 Replies)
Discussion started by: jhilmil
7 Replies
Locale::Script(3pm)					 Perl Programmers Reference Guide				       Locale::Script(3pm)

NAME
Locale::Script - ISO codes for script identification (ISO 15924) SYNOPSIS
use Locale::Script; use Locale::Constants; $script = code2script('ph'); # 'Phoenician' $code = script2code('Tibetan'); # 'bo' $code3 = script2code('Tibetan', LOCALE_CODE_ALPHA_3); # 'bod' $codeN = script2code('Tibetan', LOCALE_CODE_ALPHA_NUMERIC); # 330 @codes = all_script_codes(); @scripts = all_script_names(); DESCRIPTION
The "Locale::Script" module provides access to the ISO codes for identifying scripts, as defined in ISO 15924. For example, Egyptian hieroglyphs are denoted by the two-letter code 'eg', the three-letter code 'egy', and the numeric code 050. You can either access the codes via the conversion routines (described below), or with the two functions which return lists of all script codes or all script names. There are three different code sets you can use for identifying scripts: alpha-2 Two letter codes, such as 'bo' for Tibetan. This code set is identified with the symbol "LOCALE_CODE_ALPHA_2". alpha-3 Three letter codes, such as 'ell' for Greek. This code set is identified with the symbol "LOCALE_CODE_ALPHA_3". numeric Numeric codes, such as 410 for Hiragana. This code set is identified with the symbol "LOCALE_CODE_NUMERIC". All of the routines take an optional additional argument which specifies the code set to use. If not specified, it defaults to the two- letter codes. This is partly for backwards compatibility (previous versions of Locale modules only supported the alpha-2 codes), and partly because they are the most widely used codes. The alpha-2 and alpha-3 codes are not case-dependent, so you can use 'BO', 'Bo', 'bO' or 'bo' for Tibetan. When a code is returned by one of the functions in this module, it will always be lower-case. SPECIAL CODES The standard defines various special codes. o The standard reserves codes in the ranges qa - qt, qaa - qat, and 900 - 919, for private use. o zx, zxx, and 997, are the codes for unwritten languages. o zy, zyy, and 998, are the codes for an undetermined script. o zz, zzz, and 999, are the codes for an uncoded script. The private codes are not recognised by Locale::Script, but the others are. CONVERSION ROUTINES
There are three conversion routines: "code2script()", "script2code()", and "script_code2code()". code2script( CODE, [ CODESET ] ) This function takes a script code and returns a string which contains the name of the script identified. If the code is not a valid script code, as defined by ISO 15924, then "undef" will be returned: $script = code2script('cy'); # Cyrillic script2code( STRING, [ CODESET ] ) This function takes a script name and returns the corresponding script code, if such exists. If the argument could not be identified as a script name, then "undef" will be returned: $code = script2code('Gothic', LOCALE_CODE_ALPHA_3); # $code will now be 'gth' The case of the script name is not important. See the section "KNOWN BUGS AND LIMITATIONS" below. script_code2code( CODE, CODESET, CODESET ) This function takes a script code from one code set, and returns the corresponding code from another code set. $alpha2 = script_code2code('jwi', LOCALE_CODE_ALPHA_3 => LOCALE_CODE_ALPHA_2); # $alpha2 will now be 'jw' (Javanese) If the code passed is not a valid script code in the first code set, or if there isn't a code for the corresponding script in the second code set, then "undef" will be returned. QUERY ROUTINES
There are two function which can be used to obtain a list of all codes, or all script names: "all_script_codes ( [ CODESET ] )" Returns a list of all two-letter script codes. The codes are guaranteed to be all lower-case, and not in any particular order. "all_script_names ( [ CODESET ] )" Returns a list of all script names for which there is a corresponding script code in the specified code set. The names are capitalised, and not returned in any particular order. EXAMPLES
The following example illustrates use of the "code2script()" function. The user is prompted for a script code, and then told the corresponding script name: $| = 1; # turn off buffering print "Enter script code: "; chop($code = <STDIN>); $script = code2script($code, LOCALE_CODE_ALPHA_2); if (defined $script) { print "$code = $script "; } else { print "'$code' is not a valid script code! "; } KNOWN BUGS AND LIMITATIONS
o When using "script2code()", the script name must currently appear exactly as it does in the source of the module. For example, script2code('Egyptian hieroglyphs') will return eg, as expected. But the following will all return "undef": script2code('hieroglyphs') script2code('Egyptian Hieroglypics') If there's need for it, a future version could have variants for script names. o In the current implementation, all data is read in when the module is loaded, and then held in memory. A lazy implementation would be more memory friendly. SEE ALSO
Locale::Language ISO two letter codes for identification of language (ISO 639). Locale::Currency ISO three letter codes for identification of currencies and funds (ISO 4217). Locale::Country ISO three letter codes for identification of countries (ISO 3166) ISO 15924 The ISO standard which defines these codes. http://www.evertype.com/standards/iso15924/ Home page for ISO 15924. AUTHOR
Neil Bowers <neil@bowers.com> COPYRIGHT
Copyright (c) 2002-2004 Neil Bowers. This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.12.1 2010-05-13 Locale::Script(3pm)
All times are GMT -4. The time now is 03:23 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy