O que o personagem significa em bash?

1

O que significa em bash? Por exemplo, o que seria, em "update de exatev -9 2 >, update 1 > & 2"? (o accurev é um software de controle de versão)

Desculpe pela pergunta inútil, só não sei como procurar por caracteres especiais no Google.

    
por iman453 03.09.2010 / 23:01

4 respostas

4

Não tem significado especial. O comando redireciona para um arquivo chamado ,update .

    
por 03.09.2010 / 23:29
10

Uma vírgula pode ser usada na expansão de chaves, mas não há chaves no exemplo que você mostra.

Este comando armazenaria sua saída em dois arquivos, um chamado "def" e outro chamado "abcdef":

echo hello | tee {,abc}def

ou este em "file1" e "file2":

echo hello | tee file{1,2}

As vírgulas podem ser usadas para separar comandos em uma operação aritmética em uma instrução let ou a construção (()) equivalente:

let a=1,b=2    # no spaces permitted
(( a = 1 , b = 2 ))
(( ++c, --d, e+=4 ))

Você pode usar vírgulas em uma instrução for para trabalhar com variáveis adicionais além do índice principal em vez de colocar a manipulação de variáveis no corpo do for . É provavelmente uma má prática de programação fazer isso:

for ((i=1,j=4; i<4,j<7; i++,j+=2)); do echo $i $j; done

Commas também podem ser usados no Bash 4 para alterar uma string para minúsculas (apenas algumas variações são mostradas):

$ words="This is a TEST"
$ echo ${words,,}  # the whole string is lowercased
this is a test
$ echo ${words,}   # only the first character
this is a TEST
    
por 04.09.2010 / 00:05
0

Dennis está certo em geral, mas seu exemplo específico executa accurev update -9 e coloca a saída stderr em um arquivo chamado ,update (com , como parte do nome do arquivo), então coloca stdout no mesmo local que stderr vai para (o arquivo chamado ,update neste caso).

    
por 04.09.2010 / 02:32
-1

existe um operador vírgula no bash que executará dois comandos, mas eu não acredito que ele seja usado pelo seu exemplo. Confira o guia de script bash avançado link

um exemplo:

for ((a=1, b=1; a <= LIMIT ; a++, b++))
do  # The comma chains together operations.
  echo -n "$a-$b "
done
    
por 03.09.2010 / 23:38

Tags