Adiciona a saída do comando como variável; sintaxe entre plataformas

0

1. Resumo

Não consigo encontrar, como posso usar a saída de comando como variável, usar a sintaxe entre plataformas.

2. Exemplo

Por exemplo, eu quero obter o URL do meu repositório git remoto :

SashaChernykh@DESKTOP-EEOT0TN /cygdrive/d/SashaBranchReleaseIt
$ git ls-remote --get-url
https://github.com/Kristinita/SashaBranchReleaseIt.git

Eu execute o comando no Linux / Cygwin:

SashaChernykh@DESKTOP-EEOT0TN /cygdrive/d/SashaBranchReleaseIt
$ echo "URL is 'git ls-remote --get-url'"
URL is https://github.com/Kristinita/SashaBranchReleaseIt.git

Eu corro o mesmo comando no Windows cmd.exe .

D:\SashaBranchReleaseIt>echo "URL is 'git ls-remote --get-url'"
URL is 'git ls-remote --get-url'

ou

D:\SashaBranchReleaseIt>echo "URL is $(git ls-remote --get-url)"
URL is $(git ls-remote --get-url)

não funciona.

Eu não encontro a sintaxe, que será compatível com Windows e UNIX.

3. Condições

3.1. Não esperado

Estou procurando uma solução, que seria possível executar o comando no padrão Windows cmd.exe . O usuário do Windows não é obrigado a estabelecer o Cygwin, o Bash for Windows ou outro terminal.

3.2. Esperado

Usuário do Windows pode adicionar a variável de ambiente Path caminho para o Cygwin, Comandos ou caminho do GnuWin32 CoreUtils para qualquer ferramenta UNIX, que tenha portado para o Windows.

4. Não ajudou

  1. Eu não acho, como posso resolver o meu problema em respostas para esta questão

5. Não ofereça

  1. Sim, eu sei que, no Windows, posso obter um comportamento semelhante ( exemplo ) , mas eles específicos do Windows. Estou à procura de comando entre plataformas, não específico do Windows.
por Саша Черных 30.01.2018 / 18:45

0 respostas