Soy nuevo en MacOS pero tengo algo de experiencia en Linux. Ahora estoy encontrando algunos problemas con diferentes estilos de líneas de comandos entre MacOS y Linux y espero que alguien me pueda ayudar.
En Linux, si quiero copiar un gran número de archivos, por ejemplo,
apple1.png
, apple2.png
, ..., apple1000.png
, banana1.png
, banana2.png
, ..., banana1000.png
de dir1/
a dir2/
,
Puedo utilizar el comando de:
Linux: cp dir1/{apple*.png,banana*.png} dir2/
Pero esto no funciona en MacOS, porque no reconoce lo que {apple*.png,banana*.png}
medios. En este momento, mi mejor intento en Mac es copiar las manzanas y los plátanos por separado, como
MacOS: cp dir1/'apple*.png' dir2/
MacOS: cp dir1/'banana*.png' dir2/
Así que me gustaría saber si hay un equivalente en MacOS que pueda copiar tanto manzanas como plátanos en un solo comando como el de Linux.
Edita:
Gracias por sus comentarios. Estoy usando zsh en mi macbook. Las líneas de comando sugeridas funcionan bien cuando las pruebo localmente. Pero lo que realmente quiero hacer es rsync
desde un servidor remoto.
Siguiendo los comentarios, ls
de diferentes maneras dan
jiaqing@macbook % ssh jiaqing@remote_server ls path_to_files/
apple1.png
apple2.png
apple3.png
...
banana1.png
banana2.png
banana3.png
...
orange1.png
orange2.png
orange3.png
...
jiaqing@macbook % ssh jiaqing@remote_server ls path_to_files/apple*
zsh: no matches found: path_to_files/apple*
jiaqing@macbook % ssh jiaqing@remote_server ls path_to_files/'apple*'
path_to_files/apple1.png
path_to_files/apple2.png
path_to_files/apple3.png
...
Con zsh en mi macbook rsync
trabaja con rsync -azhP jiaqing@remote_server:path_to_files/'apple*' ./
y también para 'banana*'
. Pero no funciona con lo siguiente
jiaqing@macbook % rsync -azhP jiaqing@remote_server:path_to_files/{apple*,banana*} ./
zsh: no matches found: jiaqing@remote_server:path_to_files/apple*
jiaqing@macbook % rsync -azhP jiaqing@remote_server:path_to_files/{'apple*','banana*'} ./
rsync error: syntax or usage error (code 1) at /AppleInternal/Library/BuildRoots/d9889869-120b-11ee-b796-7a03568b17ac/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(1170) [receiver=2.6.9]