linux – MV command doesn’t work with filename that begin with quotes

I have a bunch of file with random name that begin or end with special characters, the filter using tr or sed works perfectly, when I echo the result it gives me the appropriate output, but when I try to change the name of the file using mv it said that the filename has already the same name:
Here is my script:

#!/bin/bash

root=/home/

for file in ${root}*
        do
        new1=$(sed 's/()( ’,!@?&()`''')/./g' <<< "$file")
        echo $(basename "$new1")
done

Using echo command, the new filename is :


5000....file...1..of..the..dir.ts
filename..1..of..the.dir.ts

Which represent the exact output I want.

But when using the mv command (the code below) ,

#!/bin/bash

root=/home/streaming/BBQwithBaconRecipes/

for file in ${root}*
        do 
        new1=$(sed 's/()( ’,!@?&()`''')/./g' <<< "$file")
        $(mv $file $new1)
done
   

the changes are not applied in this specific file, do you think because my filename are between quotes ? like this:

'5000$$$file@@1&of!!the&.dir.ts'

I really need a solution to generalize my filter and my mv command to every file possible,I think that the '' is causing the problem.