Solved

remove spaces from a file name linux

Posted on 2016-09-27
3
65 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

Free Tool: Postgres Monitoring System

A PHP and Perl based system to collect and display usage statistics from PostgreSQL databases.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

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

Suggested Solutions

The following is a collection of cases for strange behaviour when using advanced techniques in DOS batch files. You should have some basic experience in batch "programming", as I'm assuming some knowledge and not further explain the basics. For some…
Utilizing an array to gracefully append to a list of EmailAddresses
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…
In a recent question (https://www.experts-exchange.com/questions/29004105/Run-AutoHotkey-script-directly-from-Notepad.html) here at Experts Exchange, a member asked how to run an AutoHotkey script (.AHK) directly from Notepad++ (aka NPP). This video…

830 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