Como enviar arquivos do Find para outro programa?


0

Se este for o site pilha * errado, peço desculpas, mas estou tentando enviar os resultados da localização para outro aplicativo? o que estou tentando fazer é encontrar todos os arquivos * .plist e enviá-los ao plutil para convertê-los para o formato binário. Mas não sei como "canalizar" (eu sei, terminologia errada, mas funciona.) Em plutil.

Não, estou tentando convertê-los em lote, usando a entrada de find, porque ele procura recursivamente todas as listas, então eu quero canalizar TODAS as listas encontradas em uma pasta para plutil.

Respostas:


2

Isso vale repetir. Se você deseja atuar em um conjunto de arquivos ...

Você nunca precisa canalizar a saída findpara outra coisa.

O canal de saída de um comando que fornece uma lista de arquivos geralmente é feito errado. Você não precisa de um forloop para isso e também não find … | xargs.

Para atuar em um conjunto de arquivos encontrado por find, use a -execopção

find /some/path -iname '*.plist' -exec plutil -convert xml1 '{}' \;

Aqui, o '{}'é substituído pelo nome de cada arquivo encontrado.

Se você deseja que uma maneira robusta de findsaída de canal atue nos arquivos encontrados em um loop, considere o seguinte:

find … -print0 | while IFS= read -r -d '' file
do
    plutil -convert xml1 "$file"
done

Obrigado, o primeiro comando funcionou, estou recebendo um erro de permissão, mas o sudo deve corrigir isso.
— MarcusJ

Sudo corrigiu, caso você estivesse se perguntando, obrigado novamente. :)
— MarcusJ

-2

Existem problemas de permissão que atrapalham sua execução?

Caso contrário, tente o seguinte:

https://discussions.apple.com/thread/2344258?start=0&tstart=0

OU

loop através de `ls` resulta em script de shell bash

-Justin

EDIT - Adicionado outro link para que você possa clicar nele.


Não, estou tentando convertê-los em lote, usando a entrada de find, porque ele procura recursivamente todas as listas, então eu quero canalizar TODAS as listas encontradas em uma pasta para plutil.
— MarcusJ

Bem, você pode corrigir um script para percorrer os arquivos na pasta e fazer a conversão. Eu não acho que você precisa canalizar todos eles. Deseja um arquivo no final ou os mantém individuais?
— precisa saber é

Eu quero mantê-los individualmente, eu só não sei o contexto da tubulação-los em plutil: /
— MarcusJ

2
Apenas links não são considerados respostas úteis. Além disso, postar links para LMGTFY é bastante rude. Por favor remova isso.
— slhck

1
Eu pesquisei, você leu errado minha pergunta e, ironicamente, adicionou um link LMGTFY.
— MarcusJ
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.