xattr escribir delimitador

1

Estoy tratando de escribir etiquetas OM usando xattr.

xattr -w com.apple.metadata:kMDItemOMUserTags tag1 a.rtf

Esto funciona bien para una etiqueta, pero ¿cómo agrego dos o más? He intentado varias combinaciones de comillas, comas, \, etc. sin éxito hasta ahora.

Ayuda muy apreciada.

    
pregunta Dave A 16.04.2017 - 15:52

1 respuesta

1

Las etiquetas OM (com.apple.metadata: kMDItemOMUserTags), así como las etiquetas definidas por el usuario (com.apple.metadata: _kMDItemUserTags) se almacenan en un atributo extendido y su valor es una lista de propiedades binarias que contiene una única serie de cadenas .

Ejemplo con la etiqueta usuario (xxd'd y convertido en un xml con plutil):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
    <string>user</string>
</array>
</plist>

El simple uso de xattr -w com.apple.metadata:kMDItemOMUserTags tag1 file no creará una etiqueta de usuario OMUser o (Apple) correctamente definida.

Recomiendo usar un script Python "agregar etiqueta" como este one .

kMDItemOMUserTags parece estar desactualizado (o al menos " difícil de usar ) en macOS y, a veces / a menudo se reemplaza con _kMDItemUserTags incluso en aplicaciones OpenMeta.

    
respondido por el klanomath 16.04.2017 - 19:41

Lea otras preguntas en las etiquetas