07-16-2009
Thanks for the assistance. I was looking into find already and if I simply wanted to find all of the .txt files and name them something that I preset I could do that. I did not want to say that I thought I should use find in case there was another command out there that I did not know about that is better.
Where I am stuck though is the naming of the file after its directory name. I just do not see and example of that anywhere. My only thought would be to use find twice maybe?
find <the sub_dir> find <the .txt> mv <the .txt> <<sub_dir>.txt>
Any thoughts?
I'm still trying to find the right way to make it work.
---------- Post updated at 09:10 AM ---------- Previous update was at 08:23 AM ----------
Is there a way to specify which -exec variable you re dealing with if you have more than one?
I have been trying:
find . -type d -exec find {} \; -type f -name "*.txt" -exec mv {} (the file) {}.txt(the dir name that the fiel being renamed is in)
no luck so far
In testing I am just trying to echo both brackets:
find . -type d -exec find {} \; -type f -name "*.txt" -exec echo "one {} two {}" \;
But all I get is a print of all directories and all .txt files and it does not display the "one" or "two"
---------- Post updated at 09:54 AM ---------- Previous update was at 09:10 AM ----------
For the record I talked with a friend and came up with this.
For a file system that looks like this:
a
`-- b
|-- c
| |
| `-- somename.txt
`-- d
|
`-- somename.txt
> cd a/b/
> for x in *;do mv $x/*-.txt $x/${x}.txt;done
I hope this helps anyone else in the future.
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi all -
I'm trying to rename a large number of files all at once and need some help figuring out the command line syntax to do it. I've already done quite a bit of research with the rename and mv commands, but so far haven't found a solution that seems to work for me. So:
The files exist... (10 Replies)
Discussion started by: dave920
10 Replies
2. UNIX for Dummies Questions & Answers
suppose i have a few file like "a b c.txt" , "hello world.c" etc...(files that have space between them in their filenames).
how do i change their filenames to "a_b_c.txt" and "hello_world.c" respectively?
heres what i have tried...but failed
$ find -name "*" -exec mv "{}" "`echo {} | tr "... (4 Replies)
Discussion started by: c_d
4 Replies
3. UNIX for Dummies Questions & Answers
Hi,
I have 500 directories each with multiple data files inside them. The names are sort of random. For example, one directory has files named e_1.dat, e_5.dat, e_8.dat, etc. I need to move the files to a single directory and rename them all in numerical order, from 1.dat to 1000(or some... (1 Reply)
Discussion started by: renthead720
1 Replies
4. Shell Programming and Scripting
I have several directories and all those directories have .dat files in them. I want to copy all those .dat files to one directory say "collected_directory"
The problem is I don't want to overwrite files. So, if two file names match, I don't want the old file to be overwritten with a new one.
... (1 Reply)
Discussion started by: shoaibjameel123
1 Replies
5. Shell Programming and Scripting
Can anyone come up with a unix command that lists
all the files, directories and sub-directories in the current directory
except a folder called log.?
Thank you in advance. (7 Replies)
Discussion started by: Manjunath B
7 Replies
6. Shell Programming and Scripting
Hello,
I would like to rename all available files in a directory from Filename to Filename_Normal.
I tried to use below script but it is giving some error:
#!/bin/sh
for i in `ls`
do
echo Changing $i
mv $i $i_Normal
done
Error received:
Usage: mv src target
or: mv ... (10 Replies)
Discussion started by: manishdivs
10 Replies
7. Shell Programming and Scripting
Hi.
I am trying to automate the movement and renaming of a number of files in a directory. I am using the 'mv' command as I do not have access to 'rename'. I have the following scripted FILES=$(ls /transfer/move/sys/mail/20130123/)
if ; then
for i in ${FILES} ; do
mv... (4 Replies)
Discussion started by: jimbojames
4 Replies
8. Shell Programming and Scripting
Hi
I have the following file structure and I want to rename all the abc.jar files to abc_backup.jar
rock@server:~/rakesh> ls -R
.:
test1 test2 test3
./test1:
abc.jar
./test2:
abc.jar
./test3:
abc.jar (2 Replies)
Discussion started by: rakeshkumar
2 Replies
9. Shell Programming and Scripting
Hi,
Friends, i have a requirement where i need to rename my files residing in multiple sub directories and move them to one different directory along with some kind of directory indicator.
For eg:
test--is my parent directory and it has many files such as
a1.txt
a2.txt
a3.txt
... (5 Replies)
Discussion started by: gnnsprapa
5 Replies
10. UNIX for Beginners Questions & Answers
Dear all
I have a multiple directories, say for example org1, org2, org3 ..... org100 and each directory having a file namely dnaG.fasta. I need to copy all the dnaG.fasta file from each directory and paste in another directory fastconcatg. Therefore, my script has to copy dnaG.fasta file from... (5 Replies)
Discussion started by: dineshkumarsrk
5 Replies
LEARN ABOUT REDHAT
dos2unix
dos2unix(1) General Commands Manual dos2unix(1)
NAME
dos2unix - DOS/MAC to UNIX text file format converter
SYNOPSYS
dos2unix [options] [-c convmode] [-o file ...] [-n infile outfile ...]
Options:
[-hkqV] [--help] [--keepdate] [--quiet] [--version]
DESCRIPTION
This manual page documents dos2unix, the program that converts plain text files in DOS/MAC format to UNIX format.
OPTIONS
The following options are available:
-h --help
Print online help.
-k --keepdate
Keep the date stamp of output file same as input file.
-q --quiet
Quiet mode. Suppress all warning and messages.
-V --version
Prints version information.
-c --convmode convmode
Sets conversion mode. Simulates dos2unix under SunOS.
-o --oldfile file ...
Old file mode. Convert the file and write output to it. The program default to run in this mode. Wildcard names may be used.
-n --newfile infile outfile ...
New file mode. Convert the infile and write output to outfile. File names must be given in pairs and wildcard names should NOT be
used or you WILL lost your files.
EXAMPLES
Get input from stdin and write output to stdout.
dos2unix
Convert and replace a.txt. Convert and replace b.txt.
dos2unix a.txt b.txt
dos2unix -o a.txt b.txt
Convert and replace a.txt in ASCII conversion mode. Convert and replace b.txt in ISO conversion mode. Convert c.txt from Mac to Unix
ascii format.
dos2unix a.txt -c iso b.txt
dos2unix -c ascii a.txt -c iso b.txt
dos2unix -c mac a.txt b.txt
Convert and replace a.txt while keeping original date stamp.
dos2unix -k a.txt
dos2unix -k -o a.txt
Convert a.txt and write to e.txt.
dos2unix -n a.txt e.txt
Convert a.txt and write to e.txt, keep date stamp of e.txt same as a.txt.
dos2unix -k -n a.txt e.txt
Convert and replace a.txt. Convert b.txt and write to e.txt.
dos2unix a.txt -n b.txt e.txt
dos2unix -o a.txt -n b.txt e.txt
Convert c.txt and write to e.txt. Convert and replace a.txt. Convert and replace b.txt. Convert d.txt and write to f.txt.
dos2unix -n c.txt e.txt -o a.txt b.txt -n d.txt f.txt
DIAGNOSTICS
BUGS
The program does not work properly under MSDOS in stdio processing mode. If you know why is that so, please tell me.
AUTHORS
Benjamin Lin - <blin@socs.uts.edu.au>
Bernd Johannes Wuebben (mac2unix mode) <wuebben@kde.org>
MISCELLANY
Tested environment:
Linux 1.2.0 with GNU C 2.5.8
SunOS 4.1.3 with GNU C 2.6.3
MS-DOS 6.20 with Borland C++ 4.02
Suggestions and bug reports are welcome.
SEE ALSO
unix2dos(1) mac2unix(1)
1995.03.31 dos2unix v3.0 dos2unix(1)