Você pode usar plink -ssh -l $user -batch -pw $pw $user@$IP "df -k / | tail -1 | awk '{print '$4}'" .
Powershell escapando em geral:
Escapando caracteres entre duas aspas duplas:
-
$precisa ser escapado com'$ -
"precisa ser escapado com'" -
'precisa ser escapado com''
Exceção:
Um trailing (no final das aspas duplas) $ não precisa ter nenhum escape.
Escape de caracteres entre duaspas simples:
-
'precisa ser escapado com''
Escapando caracteres que não estão entre aspas:
-
$precisa ser escapado com'$ -
@precisa ser escapado com'@ -
#precisa ser escapado com'# -
'precisa ser escapado com'' -
|precisa ser escapado com'| -
{e}precisam ser escapados com'{e'} -
;precisa ser escapado com'; -
"precisa ser escapado com'" -
'precisa ser escapado com''
Exceção:
Um trailing (no final das aspas duplas) $ não precisa ter nenhum escape.
Especial sempre escapou de caracteres:
-
'0: caractere nulo -
'a: personagem de alerta -
'b: caractere de retrocesso -
'f: personagem de feed de formulário -
'n: caractere de nova linha -
'r: Carriage-Return-Character -
't: caractere de tabulação horizontal -
'v: Vertical-Tab-Character
Formas especiais para parar a análise de caracteres especiais:
- Desde o Powershell 2.0, você pode usar
@' ... '@para impedir a interpretação de seus parâmetros, mas@'precisa estar na mesma linha do seu comando, os parâmetros precisam estar na próxima linha e'@precisa estar em sua própria linha após os parâmetros - Desde o Powershell 3.0, você pode usar
--%para parar de analisar tudo depois de--%
Exemplo:
$h@h#h'h|h{h}h;h"h'h$ :
- Entre aspas duplas:
exampleprogram.exe "'$h@h#h''h|h{h}h;h'"h'h$" - Entre aspas simples:
exampleprogram.exe '$h@h#h'h|h{h}h;h"h''h'$ - Não está entre aspas:
exampleprogram.exe '$h'@h'#h''h'|h'{h'}h';h'"h''h$ - Usando
@' ... '@:
exampleprogram.exe @'
$h@h#h'h|h{h}h;h"h'h$
'@
- Usando
--%:exampleprogram.exe --% $h@h#h'h|h{h}h;h"h'h$