Nos shells linux e unix, as strings que começam com $ representam as variáveis definidas no shell, que podem ser definidas automaticamente pelo sistema ou pelo usuário.
Por exemplo, $PATH representa o caminho de pesquisa de comando do sistema e $HOME representa o diretório inicial do usuário, que é o diretório de trabalho após o login do usuário, que é o mesmo que %path% no Windows.
Use a forma de ${ } para se referir a variáveis e substitua as variáveis pelos valores correspondentes. Em circunstâncias normais, não há diferença entre $var e ${var}, mas usar ${} definirá o escopo do nome da variável com mais precisão.
símbolo |
ilustrar |
$# |
O número de parâmetros passados para o script |
$ 0 |
o nome do próprio script |
$ 1 |
O primeiro argumento passado para este script de shell |
$ 2 |
O segundo argumento passado para o script de shell |
$n |
O enésimo argumento passado para o script de shell. Para dígitos únicos, os números podem ser usados diretamente, mas para mais de dois dígitos, os símbolos {} devem ser usados para delimitar, como ${10} |
$@ |
Uma lista de todos os argumentos passados para o script (várias strings separadas por espaços) |
$* |
Exibir todos os argumentos passados para o script como uma única string com espaços entre eles |
$$ |
O número de ID do processo atual do script em execução ou o ID do processo do terminal atual |
$? |
Mostra o status de saída do último comando, 0 significa sem erros, outros significa que houve erros. De um modo geral, o processo do sistema UNIX (linux) termina executando a chamada de sistema exit(). Esse valor de retorno é o valor de status. O intervalo é de um byte, |
$! |
O PID do processo em segundo plano executado pela última vez pelo shell (no script ou na linha de comando) |
$- |
Exibe as opções atuais usadas pelo shell, que tem a mesma função do comando set. Lista de sinalizadores definidos usando o comando Set |
função de saída:
#include <stdlib.h>
void exit(int status);
Esta função fará com que o processo termine normalmente e retorne um valor para o processo pai, que é status & 0xFF.
referência:
1. O significado de algumas variáveis no Linux
O significado das variáveis $#, $@, $0, $1, $2, $*, $$, $? no Linux_51CTO博客_shell $1 $2
2. Vários usos do símbolo $ no Linux