AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / user-237999

Саша Черных's questions

Martin Hope
Саша Черных
Asked: 2018-05-13 23:23:10 +0800 CST

Por que preciso colocar “do” na mesma linha que “for”?

  • 31

1. Resumo

Não entendo, por que preciso da regra bashate E010 .


2. Detalhes

Eu uso bashate para .sharquivos linting. Regra E010:

não na mesma linha que para

forbashar:

  • Correto:

    #!/bin/bash
    for f in bash/*.sh; do
        sashacommand "$f"
    done
    
  • Erro:

    #!/bin/bash
    for f in bash/*.sh
        do sashacommand "$f"
    done
    

Existe algum argumento válido, por que preciso fore dona mesma linha?


3. Não é útil

Não consigo encontrar uma resposta para minha pergunta em:

  1. Google
  2. Artigos sobre as melhores práticas de codificação ( exemplo )
  3. documentação do bashate . encontro apenas :

    Um conjunto de regras que ajudam a manter as coisas consistentes nos blocos de controle. Estes são ignorados em linhas longas que têm uma continuação, porque desenrolar isso é meio “interessante”

bash shell-script
  • 5 respostas
  • 6953 Views
Martin Hope
Саша Черных
Asked: 2018-03-04 23:52:48 +0800 CST

Variável de impressão dentro do loop

  • 0

1. Resumo

Eu quero imprimir variáveis ​​de loop.

Se eu colocar echo $iapós o comando do loop:

    A compilação do Travis CI foi aprovada .

elif coloco echo $iantes do comando do loop:

    Recebo o código de saída 1 .

não encontro:

  1. Por que isso está acontecendo,
  2. como posso imprimir variável antes do comando.

2. O que o script deve fazer

Eu uso HTMLTidy para validar meu HTML .

Eu quero que o HTMLTidy valide todo o HTML na pasta outpute subpastas desta pasta.

Veja simplesmente a configuração do meu projeto.

Script em lote do Windows equivalente em funcionamento:

@echo off
FOR /R %%i IN (*.html) DO echo %%i & tidy -mq %%i

3. Passos para reproduzir

Eu imprimo no console:

cd output && bash ../tidy.sh
  • ../tidy.sh— caminho para o meu script, veja simplesmente configuration .

4. código de saída 0

Se tidy.sh :

shopt -s globstar
for i in **/*.html; do
    tidy -mq $i
    echo $i
done

Compilação do Travis CI aprovada :

$ cd output && bash ../tidy.sh
line 8 column 9 - Warning: trimming empty <span>
SashaInFolder.html
line 8 column 9 - Warning: trimming empty <div>
subfolder/SashaInSubFolder.html
The command "cd output && bash ../tidy.sh" exited with 0.
Done. Your build exited with 0.

5. código de saída 1

Elif :

shopt -s globstar
for i in **/*.html; do
    echo $i
    tidy -mq $i
done

A compilação do Travis CI falhou :

$ cd output && bash ../tidy.sh
SashaInFolder.html
line 8 column 9 - Warning: trimming empty <span>
subfolder/SashaInSubFolder.html
line 8 column 9 - Warning: trimming empty <div>
The command "cd output && bash ../tidy.sh" exited with 1.
Done. Your build exited with 1.

6. Não ajudou

  1. Eu tento printf em vez de echo → obtenho o mesmo comportamento.
  2. Não consigo encontrar resposta para minha pergunta no Google.
shell-script for
  • 1 respostas
  • 1287 Views
Martin Hope
Саша Черных
Asked: 2018-03-01 23:50:45 +0800 CST

Combine comandos paralelos e sequenciais

  • 3

1. Resumo

Não entendo como posso combinar comandos paralelos e sequenciais no Linux.


2. Comportamento esperado

Pseudocódigo :

pip install pipenv sequencial pipenv install --dev

tarefa paralela

npm install -g grunt-cli sequencial npm install

Equivalente de trabalho em lote do Windows :

start cmd /C "pip install pipenv & pipenv install --dev"
start cmd /C "npm install -g grunt-cli & npm install"

3. Não ajudou

  1. Eu não acho que &ewait pode resolver este problema, veja o comentário rsaw .
  2. Eu li que o paralelo GNU - é a melhor maneira para tarefas paralelas , mas não consigo encontrar qual sintaxe preciso usar no paralelo GNU , que resolva essa tarefa.
  3. Eu tento parallelshell :

    parallelshell "pip install pipenv && pipenv install --dev" "npm install -g grunt-cli && npm install"
    

    arquivo completo .sh:

    git clone --depth 1 https://github.com/Kristinita/KristinitaPelican
    wait
    cd KristinitaPelican
    wait
    parallelshell "pip install pipenv && pipenv install --dev" "npm install -g grunt-cli && npm install"
    

    Mas no primeiro pipenv install --devcomando, corra para mim, então npm install. É sequencial, não paralelo.

shell parallelism
  • 2 respostas
  • 2049 Views
Martin Hope
Саша Черных
Asked: 2018-01-25 07:24:00 +0800 CST

stdout para vários arquivos, se stdout para arquivo por padrão

  • 1

1. Resumo

Não encontro, o que posso fazer, essa saída de texto para vários arquivos, se por padrão no programa CLI stdout para arquivo.

2. Exemplo

Eu uso o pacote generate-changelog . Neste pacote, por padrão, imprima para o arquivo, não para o console .

3. Comportamento esperado

Eu quero adicionar a mesma saída a 2 arquivos:

  • SashaVersion.txt— arquivo, no qual desejo adicionar stdout apenas uma vez;
  • CHANGELOG.md— arquivo, no qual desejo adicionar stdout várias vezes; este arquivo não deve ser sobrescrito.

4. Não ajudou

  1. Duplo usando -fo argumento — changelog -f SashaVersion.txt -f CHANGELOG.md.
  2. comando teechangelog -f | tee SashaVersion.txt CHANGELOG.md , por exemplo, — .
stdout tee
  • 1 respostas
  • 410 Views

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Possível firmware ausente /lib/firmware/i915/* para o módulo i915

    • 3 respostas
  • Marko Smith

    Falha ao buscar o repositório de backports jessie

    • 4 respostas
  • Marko Smith

    Como exportar uma chave privada GPG e uma chave pública para um arquivo

    • 4 respostas
  • Marko Smith

    Como podemos executar um comando armazenado em uma variável?

    • 5 respostas
  • Marko Smith

    Como configurar o systemd-resolved e o systemd-networkd para usar o servidor DNS local para resolver domínios locais e o servidor DNS remoto para domínios remotos?

    • 3 respostas
  • Marko Smith

    apt-get update error no Kali Linux após a atualização do dist [duplicado]

    • 2 respostas
  • Marko Smith

    Como ver as últimas linhas x do log de serviço systemctl

    • 5 respostas
  • Marko Smith

    Nano - pule para o final do arquivo

    • 8 respostas
  • Marko Smith

    erro grub: você precisa carregar o kernel primeiro

    • 4 respostas
  • Marko Smith

    Como baixar o pacote não instalá-lo com o comando apt-get?

    • 7 respostas
  • Martin Hope
    user12345 Falha ao buscar o repositório de backports jessie 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl Por que a maioria dos exemplos do systemd contém WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky Como exportar uma chave privada GPG e uma chave pública para um arquivo 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll status systemctl mostra: "Estado: degradado" 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim Como podemos executar um comando armazenado em uma variável? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S Por que /dev/null é um arquivo? Por que sua função não é implementada como um programa simples? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 Como ver as últimas linhas x do log de serviço systemctl 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - pule para o final do arquivo 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla Por que verdadeiro e falso são tão grandes? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis Substitua a string em um arquivo de texto enorme (70 GB), uma linha 2017-12-30 06:58:33 +0800 CST

Hot tag

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve