Solved

remove spaces from a file name linux

Posted on 2016-09-27
3
52 Views
Last Modified: 2016-09-28
would like to remove the spaces in a file name.  The spaces can be anywhere in the file name.  

having trouble with this.  it says there is no file

ls -1 | while read file
       do
            newfilename=`echo "$file" | 's/ //g'`
             mv $file $newfilename            
       done

thanks
bje
0
Comment
Question by:bje
3 Comments
 
LVL 35

Accepted Solution

by:
Terry Woods earned 500 total points
ID: 41818843
A couple of problems, fixed as follows:
#!/bin/bash
ls -1 | while read file
       do
            newfilename=`echo "$file" | sed 's/ //g'` # you missed "sed" on this line
            mv "$file" $newfilename # you need double quotes around $file on this line
       done

Open in new window


Note that if there are double quotes in a filename, it'll probably fail, but that may not be a problem for you.
0
 
LVL 4

Expert Comment

by:Abhimanyu Suri
ID: 41819878
/home>ls -1 space*
space 1.txt
space 2.txt


/home>
ls -1 space*|while read file
do
echo $file
Var_newname=`echo $file|sed -e 's/ //'`
echo $Var_newname
mv "${file}" ${Var_newname}
done
space 1.txt
space1.txt
space 2.txt
space2.txt

/home>ls -1 space*
space1.txt
space2.txt

<< Update >>
My bad, Terry has already provided the solution.
0
 

Author Comment

by:bje
ID: 41819910
Thank you both.  it is working well.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This Windows batch file is useful for organizing image files from a digital camera or other source, but can have many other uses.  It simply renames the file(s) to match their create date.  For example, if you took a picture today at 1:40pm and the …
Over the years I've spent many an hour playing on hardened, DMZ'd servers, with only a sub-set of the usual GNU toy's to keep me company; frequently I've needed to save and send log or data extracts from these server back to my PC, or to others, and…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …

895 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now