Articles of bash

Copie a pasta recursivamente, excluindo algumas pastas

Eu estou tentando escrever um script bash simples que irá copiar todo o conteúdo de uma pasta, incluindo arquivos ocultos e pastas em outra pasta, mas eu quero excluir certas pastas específicas. Como eu poderia conseguir isso?

Como representar várias condições em uma shell if statement?

Eu quero representar várias condições como esta: if [ ( $g -eq 1 -a “$c” = “123” ) -o ( $g -eq 2 -a “$c” = “456” ) ] then echo abc; else echo efg; fi mas quando eu executo o script, ele mostra syntax error at line 15: `[‘ unexpected, onde a linha 15 […]

Bash: Como _best_ include outros scripts?

A maneira que você normalmente includeia um script é com “source” por exemplo: main.sh: #!/bin/bash source incl.sh echo “The main script” incl.sh: echo “The included script” A saída da execução “./main.sh” é: The included script The main script … Agora, se você tentar executar esse script de shell a partir de outro local, ele não […]

Excluindo linhas de um arquivo que estão em outro arquivo

Eu tenho um arquivo f1 : line1 line2 line3 line4 .. .. Eu quero apagar todas as linhas que estão em outro arquivo f2 : line2 line8 .. .. Eu tentei algo com cat e sed , que não era nem perto do que eu pretendia. Como posso fazer isso?

Como obter o número de CPUs / núcleos no Linux a partir da linha de comando?

Eu tenho esse script, mas não sei como obter o último elemento na impressão: cat /proc/cpuinfo | awk ‘/^processor/{print $3}’ O último elemento deve ser o número de CPUs, menos 1.

Adicione quebra de linha para ‘git commit -m’ na linha de comando

Eu estou usando o Git na linha de comando e estou tentando adicionar uma quebra de linha à mensagem de commit (usando git commit -m “” ) sem entrar no Vim. Isso é possível?

Como obter a parte do arquivo após a linha que corresponde à expressão grep? (primeiro jogo)

Eu tenho um arquivo com cerca de 1000 linhas. Eu quero a parte do meu arquivo após a linha que corresponde à minha declaração grep. ou seja $ cat file | grep ‘TERMINATE’ // Its found on line 534 Então, eu quero o arquivo da linha 535 to line 1000 para processamento adicional. Como eu […]

Como faço para executar um script de shell sem usar os comandos “sh” ou “bash”?

Eu tenho um script de shell que eu quero executar sem usar os comandos “sh” ou “bash“. Por exemplo: Em vez de: sh script.sh Eu quero usar: script.sh Como posso fazer isso? PS (i) Eu não uso muito o shell script e tentei ler sobre aliases, mas não entendi como usá-los. (ii) também li sobre […]

Verificar o status de saída do Bash de vários comandos de maneira eficiente

Existe algo semelhante ao pipefail para vários comandos, como uma instrução ‘try’, mas dentro do bash. Eu gostaria de fazer algo assim: echo “trying stuff” try { command1 command2 command3 } E a qualquer momento, se algum comando falhar, retire-se e repita o erro desse comando. Eu não quero ter que fazer algo como: command1 […]

Abortando um script de shell se algum comando retorna um valor diferente de zero?

Eu tenho um script de shell Bash que invoca um número de comandos. Eu gostaria de ter o shell script automaticamente sair com um valor de retorno de 1 se qualquer um dos comandos retornar um valor diferente de zero. Isso é possível sem verificar explicitamente o resultado de cada comando? por exemplo dosomething1 if […]