Perguntas com a marcação «shell-script»

Perguntas sobre scripts de shell, arquivos executáveis ​​que são interpretados por um shell (bash, zsh, etc.).

4
como mudar o valor da matriz no bash
queremos construir 6 pastas de pontos de montagem como exemplo /data/sdb /data/sdc /data/sdd /data/sde /data/sdf /data/sdg então escrevemos esse script bash simples usando array folder_mount_point_list="sdb sdc sdd sde sdf sdg" folderArray=( $folder_mount_point_list ) counter=0 for i in disk1 disk2 disk3 disk4 disk4 disk5 disk6 do folder_name=${folderArray[counter]} mkdir /data/$folder_name let counter=$counter+1 …

2
Ignora "sem correspondências"
Eu gostaria de listar todos os arquivos em uma pasta chamada foldernameque têm a extensão test, atestou btest. Meu pensamento imediato foi correr ls ./foldername/*.{a,b,}test Isso funciona bem, a menos que não exista nada com a extensão atest; nesse caso, recebo o erro zsh: no matches found: ./foldername/*.atest. Existe alguma …


4
Dividir cadeia usando IFS
Eu escrevi um exemplo de script para dividir a string, mas não está funcionando conforme o esperado #!/bin/bash IN="One-XX-X-17.0.0" IFS='-' read -r -a ADDR <<< "$IN" for i in "${ADDR[@]}"; do echo "Element:$i" done #split 17.0.0 into NUM IFS='.' read -a array <<<${ADDR[3]}; for element in "${array[@]}" do echo "Num:$element" …

3
Referenciando variáveis ​​do array bash de outro array
Eu quero escrever um script para referenciar várias matrizes de outra matriz que contém os nomes de variáveis ​​dessa matriz. Aqui está o meu código até agora: #!/bin/bash array1=('array1string1' 'array1string2') array2=('array2string1' 'array2string2') array_names=('array1' 'array2') for a in ${array_names[@]} do for b in ${a[@]} do echo $b done done Gostaria que …

1
Criando minha própria função cp no bash
Para uma tarefa, sou solicitado a escrever de forma inteligente uma função bash que possui a mesma funcionalidade básica que a função cp(cópia). Ele só precisa copiar um arquivo para outro, portanto, nenhum arquivo múltiplo é copiado para um novo diretório. Como eu sou novo no idioma bash, não consigo …

5
Alterando as últimas entradas em uma lista delimitada por vírgula
Eu tenho um arquivo de texto enorme que se parece com isso: 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,3 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,8 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,14 36,53,15596,0.58454577855,0.26119,2.24878677855,0.116147072052964,12 A saída desejada é esta: 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-03 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-08 36,53,90478,0.58699759849,0.33616,4.83449759849,0.0695335954050315,MI-14 36,53,15596,0.58454577855,0.26119,2.24878677855,0.116147072052964,MI-12 Eu tentei outros posts relevantes aqui e em outras comunidades, mas não consegui exatamente o que queria. ATUALIZAR Essa é a pergunta cruzada (eu queria …

2
Canalizando de uma descoberta para o grep
O que estou tentando fazer? Escreva um comando que procure por arquivos que não estejam sendo solicitados por nenhum outro arquivo no meu projeto. O que eu tentei? Estou usando findpara obter uma lista de nomes de arquivos. Agora eu quero usar os nomes de arquivo como a string de …


2
Executar enquanto verdadeiro no script systemd
Eu tenho um script bash essencialmente executando isso: #!/bin/bash [...] while true; do str="broadcast "`randArrayElement "messages[@]"` server_send_message $str sleep $interval done Agora eu quero executar isso como um serviço systemd, meu script de serviço fica assim: [Unit] Description=Announcer After=network.target [Service] ExecStart=/usr/local/bin/somescript &; disown ExecStop=/usr/bin/kill -9 `cat /tmp/somescript.pid` Type=forking PIDFile=/tmp/somescript.pid [Install] …


2
Como registrar chamadas usando um script wrapper quando há vários links simbólicos para o executável
Para encurtar a história: eu gostaria de acompanhar o modo como alguns executáveis ​​são chamados para rastrear algum comportamento do sistema. Digamos que eu tenho um executável: /usr/bin/do_stuff E na verdade é chamado por vários nomes diferentes via link simbólico: /usr/bin/make_tea -> /usr/bin/do_stuff /usr/bin/make_coffee -> /usr/bin/do_stuff e assim por diante. …


1
Intercepte Ctrl-C no script awk
Eu acredito Ctrl- Cpode ser preso em scripts bash. Também é possível prendê-lo dentro de um script do Awk para lidar com esse evento? Por exemplo, para interromper o processamento, mas imprimir os resultados do que já foi processado, em vez de simplesmente sair silenciosamente?

1
Melhorando meu script Bash
Preciso melhorar meu script Bash para que ele funcione perfeitamente sem problemas. Este script usa ds4drvnele e tem alguns problemas que não tenho certeza sobre como corrigir. A primeira questão é que nem sempre é executado ou funciona quando o controlador é detectado, eu criei uma regra do udev para …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.