Preguntas etiquetadas con shell-script

8
Canalizar / redirigir un grupo de comandos

Actualmente uso la siguiente configuración para redirigir la salida de múltiples comandos: echo "Some normal commands" ( echo "Error: something happened" echo "Warning: this incident will be logged" ) >> logfile echo "More normal commands" Esto es bastante útil, y también funciona con...

8
Contar elementos delimitados por nul en el archivo

Tengo un script de shell que se usa find -print0para guardar una lista de archivos para procesar en un archivo temporal. Como parte del registro, me gustaría generar el número de archivos encontrados, por lo que necesito una forma de obtener ese recuento. Si la -print0opción no se usara por...

8
Cambiar mayúsculas y minúsculas en una cadena

Quiero cambiar el caso de la letra n-ésima de una cadena en BASH(o cualquier otra herramienta de * nix, por ejemplo sed, awk, tr, etc.). Sé que puedes cambiar el caso de una cadena completa usando: ${str,,} # to lowercase ${str^^} # to uppercase ¿Es posible cambiar el caso de la tercera letra de...

8
Variable Bash $ {0 ## * /}

Estoy tratando de entender la variable ${0##*/}que encontré en un script bash. Entiendo que $0contiene el nombre, o la ruta, del script, luego ##funciona como en ${parameter##pattern}( fuente ). Pero no entiendo qué /está haciendo aquí. Solo conozco este tipo de sintaxis con dos...

8
Estructura de carpeta de aplanamiento

Tengo esta estructura de carpetas: ├── foo1 │   ├── bar1.txt │   └── bar2.txt ├── foo2 │   ├── bar3.txt │   └── bar4 with a space.txt └── foo3 └── qux1 ├── bar5.txt └── bar6.txt que me gustaría aplanar en esto, con un guión bajo entre cada nivel de carpeta: ├── foo1_bar1.txt ├──...

8
Múltiples shebangs en un solo archivo bash

Tengo un script de otra persona que tiene un aspecto (nota: es un solo archivo): #!/bin/bash some commands some commands #!/bin/bash some commands some commands #!/bin/bash some commands some commands Me pregunto cuál es el propósito del segundo y tercer shebangs. ¿Es por error o a...

8
awk no termina

Tengo el siguiente código en un archivo llamado awktest1.awk: #!/bin/awk -f BEGIN{print "start"} {print $2, "\t", $5} END{print "end"} employee.txt donde employee.txtcontiene los siguientes datos: 100 Thomas Manager Sales $5,000 200 Jason Developer Technology $5,500 300 Sanjay Sysadmin...

8
Argumento de análisis de script Bash con comillas

Considere este script simple llamado prueba : #!/bin/bash echo $1 y los siguientes comandos y llamadas: $ echo "A B" A B $ echo ""A B"" A B $ echo """A B""" A B $ echo """A B""" A B $ ./test "A B" A B $ ./test ""A B"" A $ ./test """A B""" A B $ ./test """"A B"""" A ¿Podría alguien explicar...