Combine dos carpetas con una carpeta inteligente

Bien, una cosa que he querido poder hacer desde hace mucho tiempo en OS X es crear o ver una carpeta de aplicaciones combinada que muestre el contenido de ambos /Applicationsy ~/Applications(supongamos que existe).

Ahora, sé que LaunchPad puede hacer esto, pero aún me gustaría poder hacerlo en una ventana normal del Finder, por ejemplo, usando una carpeta inteligente.

¿Es esto posible y, de ser así, cuáles son los pasos para hacerlo (ya sea en el propio Finder o a través de la línea de comandos)?

He experimentado con búsquedas en toda mi computadora para todas las aplicaciones, sin embargo, esto solo devuelve los paquetes de aplicaciones, ignorando las carpetas adjuntas. Realmente solo quiero elementos de nivel superior para cada una de las carpetas de aplicaciones; por ejemplo, me gustaría ver la /Applications/Utilitiescarpeta, no su contenido.

No estoy seguro de que sea un verdadero duplicado, o al menos el otro problema está feliz de aceptar soluciones que no estoy seguro de que realmente se ajusten a lo que estoy preguntando; crear enlaces a través de un script, por ejemplo, parece una forma muy complicada de hacer esto. ¿Las carpetas inteligentes todavía carecen de algún medio para combinar resultados (por ejemplo, un OR) para dos búsquedas?
De hecho, encontré una capacidad en mdfindese tipo de coberturas; Puedo hacer mdfind -onlyin /Applications -onlyin ~/Applications 'kind:App'lo que al menos combine los resultados, pero no hay una forma obvia de hacerlo como una carpeta inteligente.

Respuestas (1)

revisa el código de abajo y te explicaré

    <?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">
<dict>
    <key>CompatibleVersion</key>
    <integer>1</integer>
    <key>RawQuery</key>
    <string>(((kMDItemKind == "Application"cd &amp;&amp; ! ( ((kMDItemDisplayName == "*aam*"cd || kMDItemAlternateNames == "*aam*"cd) || (kMDItemDisplayName == "*aas*"cd || kMDItemAlternateNames == "*aas*"cd) || (kMDItemDisplayName == "*lic*"cd || kMDItemAlternateNames == "*lic*"cd) || (kMDItemDisplayName == "*uninstall*"cd || kMDItemAlternateNames == "*uninstall*"cd) || (kMDItemDisplayName == "*setup*"cd || kMDItemAlternateNames == "*setup*"cd) || (kMDItemDisplayName == "*install*"cd || kMDItemAlternateNames == "*install*"cd)) ))))</string>
    <key>RawQueryDict</key>
    <dict>
        <key>FinderFilesOnly</key>
        <false/>
        <key>RawQuery</key>
        <string>(((kMDItemKind == "Application"cd &amp;&amp; ! ( ((kMDItemDisplayName == "*aam*"cd || kMDItemAlternateNames == "*aam*"cd) || (kMDItemDisplayName == "*aas*"cd || kMDItemAlternateNames == "*aas*"cd) || (kMDItemDisplayName == "*lic*"cd || kMDItemAlternateNames == "*lic*"cd) || (kMDItemDisplayName == "*uninstall*"cd || kMDItemAlternateNames == "*uninstall*"cd) || (kMDItemDisplayName == "*setup*"cd || kMDItemAlternateNames == "*setup*"cd) || (kMDItemDisplayName == "*install*"cd || kMDItemAlternateNames == "*install*"cd)) ))))</string>
        <key>SearchScopes</key>
        <array>
            <string>/System/Applications</string>
            <string>/Applications</string>
            <string>/Users/USERNAME/Applications</string>
        </array>
        <key>UserFilesOnly</key>
        <false/>
    </dict>
    <key>SearchCriteria</key>
    <dict>
        <key>FXCriteriaSlices</key>
        <array>
            <dict>
                <key>criteria</key>
                <array>
                    <string>com_apple_RawQueryAttribute</string>
                    <integer>104</integer>
                </array>
                <key>displayValues</key>
                <array>
                    <string>Raw query</string>
                    <string>(kMDItemKind == "Application"cd &amp;&amp; ! ( ((kMDItemDisplayName == "*aam*"cd || kMDItemAlternateNames == "*aam*"cd) || (kMDItemDisplayName == "*aas*"cd || kMDItemAlternateNames == "*aas*"cd) || (kMDItemDisplayName == "*lic*"cd || kMDItemAlternateNames == "*lic*"cd) || (kMDItemDisplayName == "*uninstall*"cd || kMDItemAlternateNames == "*uninstall*"cd) || (kMDItemDisplayName == "*setup*"cd || kMDItemAlternateNames == "*setup*"cd) || (kMDItemDisplayName == "*install*"cd || kMDItemAlternateNames == "*install*"cd)) ))</string>
                </array>
                <key>rowType</key>
                <integer>0</integer>
                <key>subrows</key>
                <array/>
            </dict>
        </array>
        <key>FXScopeArrayOfPaths</key>
        <array>
            <string>/System/Applications</string>
            <string>/Applications</string>
            <string>/Users/USERNAME/Applications</string>
        </array>
    </dict>
</dict>
</plist>

Si ve la clave SearchScopes, entonces allí puede agregar qué rutas incluir.

Tan simple como eso, entonces se puede hacer. Para aprender esto, utilicé HoudaSpot que me lo guardó para que pudiera aprender a configurarlo. Básicamente, solo abra un archivo .savedSearch guardado previamente y edite el contenido con la tecla SearchScope.

¿Puede agregar algunos detalles sobre el archivo que está mostrando, cómo crear uno, dónde encontrarlo, etc.?