Perguntas com a marcação «arguments»

Um argumento é geralmente definido como o valor real passado para uma função, procedimento ou programa de linha de comando.

118
Qual é o propósito de usar shift em shell scripts?

Eu me deparei com este script: #! /bin/bash if (( $# < 3 )); then echo "$0 old_string new_string file [file...]" exit 0 else ostr="$1"; shift nstr="$1"; shift fi echo "Replacing \"$ostr\" with \"$nstr\"" for file in $@; do if [ -f $file ]; then echo "Working with: $file" eval "sed...

106
Por que argv inclui o nome do programa?

Programas típicos do Unix / Linux aceitam as entradas da linha de comandos como um argumento count ( int argc) e um vetor de argumento ( char *argv[]). O primeiro elemento de argvé o nome do programa - seguido pelos argumentos reais. Por que o nome do programa é passado para o executável como...

73
Qual é a diferença entre $ * e $ @?

Considere o seguinte código: foo () { echo $* } bar () { echo $@ } foo 1 2 3 4 bar 1 2 3 4 Emite: 1 2 3 4 1 2 3 4 Estou usando o Ksh88, mas também estou interessado em outros shells comuns. Se você conhece alguma particularidade para reservatórios específicos,...

54
Como eco apenas uma coluna de saída do comando ls?

Digamos que quando eu comando ls, a saída é: file1 file2 file3 file4 É possível exibir apenas uma certa coluna de saída, neste caso, arquivo2? Eu tentei o seguinte sem sucesso: echo ls | $2 Basicamente, tudo que eu quero fazer é repetir apenas a segunda coluna, neste caso, eu quero...

48
Lista de argumentos muito longa para ls

Eu recebo o seguinte erro ao tentar ls *.txt | wc -lum diretório que contém muitos arquivos: -bash: /bin/ls: Argument list too long O limite dessa "lista de argumentos" depende da distribuição ou das especificações do computador? Normalmente, eu canalizaria o resultado de um resultado tão grande...

45
`-` é usado apenas com cd?

cd - pode alternar entre o diretório atual e o diretório anterior. Parece que eu já vi -usado como argumentos para outros comandos antes, embora não me lembre se -significa o mesmo que com cd. Eu descobri que -isso não funciona ls. É - usado apenas com

31
Posso encadear o pgrep com kill?

Percebi que |é usado para enviar resultados do primeiro comando para o outro. Eu gostaria de matar todos os processos que correspondem a um nome. Isto é o que o pgrep normalmente faz: $ pgrep name 5089 5105 E vários argumentos parecem funcionar com kill: sudo kill 5089 5105 Mas isso está...

22
Como o ps sabe ocultar senhas?

Testemunha: $ ps f PID TTY STAT TIME COMMAND 31509 pts/3 Ss 0:01 -bash 27266 pts/3 S+ 0:00 \_ mysql -uroot -p 25210 pts/10 Ss+ 0:00 /bin/bash 24444 pts/4 Ss 0:00 -bash 29111 pts/4 S+ 0:00 \_ tmux attach 4833 pts/5 Ss+ 0:00 -bash 9046 pts/6 Ss 0:00 -bash 17749 pts/6 R+ 0:00 \_ ps f 4748 pts/0...

22
Adicione argumentos ao 'bash -c'

Digamos que eu queira executar um comando através do Bash assim: /bin/bash -c "ls -l" De acordo com a página de manual do Bash, eu também poderia executá-lo assim: # don't process arguments after this one # | pass all unprocessed arguments to command # | | # V V /bin/bash -c ls -- -l exceto...

21
find + xargs: linha de argumento muito longa

Eu tenho uma linha como a seguinte: find /foo/bar -name '*.mp4' -print0 | xargs -i {} -0 mv -t /some/path {} mas eu recebi o seguinte erro: xargs: argument line too long Estou confuso. O uso de xargssupostamente não ajuda precisamente com esse problema? Nota: Eu sei que posso usar...