@junior-helper: thread opener stated he uses Korn shell, so chances are this is not a Linux system at all. There is a good chance that the "rename"-command is not there.
Quote:
Originally Posted by pchegoor
I would like to rename Multiple files in a Unix Directory using Ksh Command.
Basically this is a simple job: create a loop in which you run a command mv "$oldname" "$newname" in which you rename one file after the other:
Which leaves the question where "$NEWNAME" comes from. You could use any text-modifying utility (sed, awk, ....) of which Unix is so rich of to construct the new name from the old. This utility would be called once for every single file and this would add a lot of overhead to your script, which should be avoided.
Fortunately the shell itself offers a great way to modify strings too, without having to resort to an external utility: the "parameter expansion" or "variable epansion". The syntax looks awkward at first, but its execution speed beats every external utility by some order of magnitude. Twenty lines of this is perhaps still way faster than a single awk- (sed-, ...) call.
I suggest having a look into the man page for details, here is the solution for your problem as you stated it: remove a middle " 00-00-00" from a string:
Run with the print-statements to see how it works, remove them once you feel comfortable with the output.
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)
Can someone please tell me how I can rename a bunch of files at a time. I hava a directory that has 700+ files that are named
*.xyz and I would like to rename them to *.abc . How can I do that with a simple command ?
mv *.xyz *.abc did not work.
Thanks in advance (4 Replies)
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)
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)
Hello
i have the files in this format
pdb1i0t.ent
pdb1lv7.ent
pdb1pp6.ent
pdb1tj2.ent
pdb1xg2.ent
pdb2b4b.ent
pdb2ewe.ent
Now i have to remove the prefix pdb from all the files and also i need to change the extension of .ent to .txt
The new file should look like this
... (3 Replies)
I have to rename 100+ files at a time on the server
& was trying to use a script for doing that.
I have used ultra edit to create a file having
current filename & new file name as below
file234.txt | file956.txt
file687.txt | file385.txt
There is no fixed pattern while renaming & would... (20 Replies)
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)
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)
Hi all,
i am new to this forum, unix and shell scripting.
I would really appreciate if you all can help me here..
I have files coming in the below format
'filename20513'13May06:03:45
filename are characters..
like 'ABDDUT20513'13May06:03:45
i need it to be renamed as... (17 Replies)
Hi,
I have been searching how to do this but I can't seem to find how to do it. Hopefully someone can help.
I have multiplr files, 100's example 12345-zxys.213423.zyz.txt. I want to be able to take all these files and remove the first '12345-' from each of the files. '12345-' these characters... (5 Replies)
Discussion started by: israr75
5 Replies
LEARN ABOUT DEBIAN
btag
BTAG(1) btag Manual BTAG(1)NAME
btag - A command line based multimedia tagger
SYNOPSIS
btag [options] path1 [path2] [path3] ...
DESCRIPTION
btag is a TagLib-based command line multimedia tag editor that attempts to automate the process of tagging a lot of files at once. It uses
the tags found in the supplied files as well as interactive user input to determine new values for the tags. It can also optionally rename
files and directories based on those new values.
You can supply paths to files or directories to btag. Directories are recursively traversed and all files found are tagged. Directories are
also handled differently in the sense that btag will attempt to keep information about the previously tagged files to provide sane defaults
for all other files in the same parent directory. Only files with file extensions supported by TagLib are considered.
OPTIONS
-D/--dry-run Don't do anything, just show what would have been done (dry run mode)
-d/--dir-rename-format format Use format to rename the directories where the multimedia files were found
-i/--input-filter filter Use filter as the input filter
-f/--filter filter Use filter as both the input and the output filter
-h/--help Display usage information and exit
-n/--renaming-filter filter Use filter as the renaming filter
-o/--output-filter filter Use filter as the input filter
-r/--file-rename-format format Use format to rename the multimedia files
-t/--title-locale locale Use locale for proper (although lax) locale-specific title casing
INPUT AND OUTPUT FILTERS
btag supports input and output filters that are applied to the text fields (artist, album and song title). Those filters can protect
against basic mistakes such as duplicate whitespace. Input filters are used on the tags as they are loaded from the multimedia files. This
filtered information is used to provide suggestions to the user when the interactive tagger requests information for those text fields. If
an output filter is configured, the user input is then filtered, and if the filtered text does not match the user input, the user is asked
for confirmation.
In most cases, the input filter should match the output filter (which is why the -f option is handy). You may choose to specify only an
input filter, in which case the user input is not filtered. If you don't specify an input filter, though, the default input filter will be
used.
The currently available filters are:
basic Provides basic filtering by removing duplicate or trailing whitespace, is the default input filter and the base for all other
filters
first_upper The first character in the field is uppercased, while all others are lowercased
lower All characters are lowercased
title The first character of each word is uppercased (with exceptions), while all others are lowercased
upper All characters are uppercased
The title capitalization algorithm will follow locale-specific context-insensitive rules depending on the value of the -t parameter. Note
that strict title capitalization rules often depend on the context in which the words are used, the precise analysis of which is much
beyond the scope of btag. The currently supported title locale specifications are:
en English (default)
es Spanish
RENAMING FORMATS
If a format is specified with the -r option, the tagged multimedia files are renamed accordingly. Likewise, if the -d option is used, the
directory in which multimedia files were tagged is renamed according to the specified format.
The specified format is converted to a file or directory name using the following substitutions:
%artist Artist name
%album Album name
%year Year of release
%track Track number (only replaced by the -r option)
%title Song title (only replaced by the -r option)
Renaming happens after the tags are written, and it's relative to btag's working directory.
For directory renaming, the last known artist, album and year information is used. Only directories that contain files that were tagged by
btag are renamed.
btag does not prevent you from overwriting existing files using the formats described here.
RENAMING FILTERS
Renaming filters are used to ensure that the file and directory names generated using the renaming formats (if specified) are valid (safe)
in the context of the current file system. The following renaming filters are currently available:
conservative Conservative character replacements are performed, recommended for FAT32 file systems
unix Generates file and directory names that should be valid in an Unix environment (default)
EXAMPLE
Using title casing with English rules and sensible renaming formats generating FAT32-safe file and directory names:
$ btag --file-rename-format '%track. %title'
--dir-rename-format '%album (%year)'
--filter title --title-locale en
--renaming-format conservative /path/to/myalbum
Using an input filter only:
$ btag --input-filter lower /path/to/myalbum
btag 2011-06-04 BTAG(1)