Rozumiem, że to raczej dla nauki niż dla praktycznego używania.
Dlaczego ls -m? Jeśli koniecznie chcesz używać przecinka jako separatora, zainteresuj się zmienną IFS w manualu basha, gromadzeniem wyników poleceń w zmiennej tablicowej i rolą cudzysłowu przy odczycie wartości tej zmiennej (man -LC -P 'less -p ^\\ +Arrays' bash).
Zobacz też przykład:
mkdir x || exit 1 # jeśli istnieje, wyjdź - to na wypadek, by niczego w nim nie nadpisać
cd x
:>a #tworzę pusty plik o nazwie "a"
:>b
ls -l a b
ls -l "a b"
:>"a b"
ls -l "a b"
cp może zwracać błąd albo dlatego, że pliki zawierają spacje, bez cudzysłowu traktowane specjalnie przez basha, albo doklejone przecinki, domyślnie nie traktowane jako separatory, są brane jako część nazwy pliku.