[mythtv-users] Script quoting problem

Klaus Becker colonius at free.fr
Sat Apr 7 18:45:04 UTC 2018


Hi,

I want to rename the files in "show_names", created by mythlink.pl. 

I have in a test directory:

$ ls
1234.ts  5678.ts  film1.mpg  film2.mpg

I wish to rename 1234.ts in film1.ts and 5678.ts in film2.ts.

I have a quoting problem with my script.

My script (script.sh) is:

----------------
# Cut everything after the point
oldname=$(ls *.ts | cut -d. -f1)
newname=$(ls *.mpg | cut -d. -f1)

# Rename file
for file in *.ts; do
	mv $file $(echo $file | sed 's/$oldname/$newname/g')
Done
----------------

$ bash script.sh 
mv: '1234.ts' et '1234.ts' are the same file
mv: '5678.ts' et '5678.ts' are the same file

However "echo $oldname" shows "1234 5678" (that's what I want), and "echo 
$newname" shows "film1 film2".

I searched on the web and i tried other quoting manners I found there, but I 
can't get it work as I want.

I am beginner in scripting and I can't find the error.

It's just a simplified example script. Once it works, it should be easy to 
make it work for MythTV recordings.

Bye

Klaus






More information about the mythtv-users mailing list