Este comando identificará todos los archivos VCard en un directorio por contenido del archivo (no por extensión de archivo) recursivamente usando el comando file (buscando tipos MIME text/vcard) y moverá esos a un directorio diferente.
move_vcards_by_type.sh
mkdir -p ../VCards && find . -type f -exec sh -c '
case $( file -bi "$1" ) in (text/vcard*) exit 0; esac
exit 1' sh {} \; -exec mv -v --backup=numbered {} ../VCards \;Basado en este post de StackExchange. Ver también Cómo mover todas las imágenes a otro directorio basándose en el contenido del archivo, ignorando el nombre del archivo y Cómo mover todos los videos a otro directorio basándose en el contenido del archivo, ignorando el nombre del archivo y Cómo mover todos los archivos OOXML (Word .docx/Excel .xlsx) a otro directorio basándose en el contenido del archivo, ignorando el nombre del archivo
Echa un vistazo a artículos similares por categoría:
Linux
Si este artículo te ha ayudado, considera invitarme a un café o hacer una donación vía PayPal para apoyar la investigación y publicación de nuevos artículos en TechOverflow