Eu sou um iniciante em scripts bash.Eu quero criar um script bash para instalar, instalar e configurar itens na minha caixa linux de forma automatizada.
Suponha que eu queira editar
/etc/yum.repos.d/epel.repo
pelo script bash
O que eu quero fazer é o seguinte
- Abrir arquivo /etc/yum.repos.d/epel.repo
- Encontre a seção [epel]
- Adicione uma prioridade de linha = 10 logo após a linha ativada = 1 na seção epel
Para a primeira parte eu adicionei
yum install nano
nano /etc/yum.repos.d/epel.repo
Minha pergunta é como fazer a parte 2 e 3 com script bash usando nano (se possível, caso não seja possível, mostre-me com sed)
Também em alguns momentos terei que modificar variáveis nos arquivos. Por exemplo:
- enable = 0 para ativar = 1
- Teste = "1" para Teste = "0"
- Adicione texto em uma linha. funções = para funcionar = "texto1", "texto2"
- Adicione um pouco de texto a um arquivo e salve-o (com nano)
Eu sei que é exigente, mas eu preciso criar isso para um amigo que é novato em gerenciamento de servidores. Infelizmente, não tenho tempo para estudar scripts bash desde o início, pois meus exames estão próximos. Usarei seus exemplos para escrever o script.
Pessoal, obrigado por todas as respostas que fiz com sucesso a maior parte do script bash
No entanto, tenho outro problema. Suponha que eu queira modificar o nginx.conf usando o sed. Vamos lidar com o worker_processes.
Agora eu quero usar o sed para fazer o seguinte: 1. Encontre a PRIMEIRA ocorrência de worker_processes
em que conf e substituir texto comworker_processes 4;
Nota especial aqui: Este é apenas um exemplo. Pode acontecer que o conf contenha worker_processes 1; . Esta é uma parte difícil. Eu quero um comando sed que encontre a caixa de correspondência PRIMEIRO wHOLE da palavra worker_processes , exclua a linha de texto onde a palavra foi encontrada e cole worker_processes 4;
-a e salve o arquivo. Este é o método mais confiável para a edição de arquivos (sem risco de quebrar qualquer conf
Uma última sugestão: usei sed -i 's / enabled = 0 / enabled = 1 / g' /etc/yum.repos.d/remi.repo para alterar enabled = 0 to enabled = 1 na seção [remi] em remi .repo .No entanto, tenho a sensação de que ele pode modificar todos os habilitados = 0 nesse arquivo, o que provocará o servidor. Alguém pode sugerir um código melhor.
Outra coisa de que não tenho certeza: o PI deseja editar um arquivo com este como Text Testing = "0" (Sim, possui aspas e preciso mantê-lo). Ele deve ser modificado de Testing = "0" para Testing = " 1 "(entre aspas)
Também preciso adicionar algum texto com aspas no final de um arquivo com sed Como "Thanks Quanta" (com aspas) Para php você coloca um \ com aspas que ecoam, não sei como é feito para o bash
Outra coisa
eu preciso modificar uma linha em um conf, mas não me lembro qual é o texto inteiro a ser substituído
Como sua escuta = alguma coisa; , eu quero modificá-lo para ouvir = /tmp/php5-fpm.sock;
Grandes polegares para cima para cima quanta
Obrigado pela incrível equipe de suporte