Фігурні дужки синтаксис приймає коми, але він не приймає пробіл після коми. У багатьох мовах програмування пробіли після коми є звичайним явищем, але тут немає. У Bash присутність котируемого простору перешкоджає виконанню розширення дужок.
Видаліть пробіл, і він спрацює:
cp ~/some/dir/{my-file-to-rename.bin,new-name-of-file.bin}
Незважаючи на те, що це зовсім не потрібно, зауважте, що ви можете перемістити кінцевий .bin
за межами дужок:
cp ~/some/dir/{my-file-to-rename,new-name-of-file}.bin
Якщо ви хочете перевірити ефект розширення дужок, ви можете використовувати це echo
чи printf '%s '
, printf
будь-який формат, який ви бажаєте, зробити це. (Особисто я просто використовую echo
для цього, коли я перебуваю в Bash, тому що echo
вбудований Bash не розширює послідовності евакуації за замовчуванням, і тому досить добре підходить для перевірки того, яка команда насправді буде виконуватися.) Наприклад:
ek@Io:~$ echo cp ~/some/dir/{my-file-to-rename,new-name-of-file}.bin
cp /home/ek/some/dir/my-file-to-rename.bin /home/ek/some/dir/new-name-of-file.bin