Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

492
Visualizações
Powershell para Linux: la combinación de comandos con el signo de canalización no funciona

¿Alguna forma de concatenar comandos en Powershell para Linux?

Esto es lo que estoy tratando de ejecutar:

pwsh -Command Invoke-ScriptAnalyzer -Path . | ConvertTo-Json | Out-File -FilePath "/home/administrator/scripts/test.json"

Por lo tanto, ejecute Invoke-ScriptAnalyzer, convierta los resultados a Json y guarde el resultado en test.json.

No reconoce nada después de | señal:

./test.sh: line 1: ConvertTo-Json: command not found

./test.sh: line 1: Out-File: command not found

Necesito que esto vaya en un script bash, de ahí la necesidad de iniciar pwsh con la opción -Command.

¿Algunas ideas?

Gracias

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Como está escrito, su | los símbolos son interpretados por su shell de Linux (como bash ), no por PowerShell.

Hay dos soluciones:

  • Preferiblemente, cite todo el argumento -Command (una cadena '...' en un shell compatible con POSIX, como bash , usa el contenido de la cadena palabra por palabra ):
 pwsh -Command 'Invoke-ScriptAnalyzer -Path . | ConvertTo-Json | Out-File -FilePath "/home/administrator/scripts/test.json"'
  • Alternativamente, individualmente \ -escape todos los metacaracteres del shell de Linux que desea pasar textualmente, como \| y \" en este caso:
 pwsh -Command Invoke-ScriptAnalyzer -Path . \| ConvertTo-Json \| Out-File -FilePath \"/home/administrator/scripts/test.json\"

Nota: En este caso, pwsh recibe varios argumentos después de -Command . Sin embargo, PowerShell simplemente los une antes de interpretar el resultado como código de PowerShell.
Esto difiere del procesamiento de la línea de comandos de los shells compatibles con POSIX, que interpretan el primer argumento post- -c como un script ad-hoc implícito, con argumentos adicionales que se pasan como argumentos textuales a ese script , accesible como de costumbre como $1 , ...

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda