Me gustaría comprobar, en un script bash, qué tipo de sistema de archivos es un directorio. La idea es algo como if [path] is on a [filesystem] filesystem then filesystem specific command end
Me gustaría comprobar, en un script bash, qué tipo de sistema de archivos es un directorio. La idea es algo como if [path] is on a [filesystem] filesystem then filesystem specific command end
¿Hay una manera concisa de probar el soporte de matriz por el shell local similar a Bourne en la línea de comando? Esto siempre es posible: $ arr=(0 1 2 3);if [ "${arr[2]}" != 2 ];then echo "No array support";fi o prueba $SHELLy versión de shell: $ eval $(echo "$SHELL --version") | grep...
Breve declaración de la pregunta: ¿Existe un método bash incorporado para contar el número de elementos en la matriz bash, donde el nombre de la matriz es dinámico (es decir, almacenado en una variable), sin recurrir a hacer una copia completa de la matriz o usarlo eval? Más información: Usando...
¿Cuál es una mejor manera de implementar print_last_arg? #!/bin/sh print_last_arg () { eval "echo \${$#}" # this hurts } print_last_arg foo bar baz # baz (Si esto fuera, digamos, en #!/usr/bin/zshlugar de #!/bin/shsaber qué hacer. Mi problema es encontrar una forma razonable de implementar...
Me encontré con algunos problemas al ejecutar algunos scripts de instalación donde se quejaron bad interpreter. Así que hice un ejemplo trivial pero no puedo entender cuál es el problema, ver más abajo. #!/usr/bin/env bash echo "hello" La ejecución de la secuencia de comandos anterior da como...
Tal vez sea una pregunta trivial, pero en la manpágina no encontré algo útil. Estoy usando Ubuntu y bash. La salida normal para sha512sum testfilees <hash_code> testfile ¿Cómo suprimir la salida del nombre de archivo? Me gustaría obtener
Me preguntaba si existe una convención para las extensiones de tipo de archivo para los scripts de shell que desea obtener en lugar de ejecutar. Por ejemplo: Si quiero ejecutar este script en una subshell. ./script.sh Si quiero recordar ejecutar este script desde el shell actual. ....
Digamos que tengo esto script.sh #!/bin/bash exit_script() { echo "Printing something special!" echo "Maybe executing other commands!" kill -- -$$ # Sends SIGTERM to child/sub processes } echo "Some other text" #other commands here sleep infinity Quiero script.shejecutar la función...
Digamos que tengo algunos datos de configuración en un archivo config. Para mayor comodidad, me gustaría cargar estos datos en una variable de shell, CONFIG_DATA. Obviamente puedo hacer: CONFIG_DATA="$(cat config)" Pero esto me parece un uso inútilcat . ¿Es esta la única forma de hacer esto? ¿O...
Estoy ejecutando debajo del script: #!/bin/bash ps ax | grep -q [v]arnish if [ $? -eq 0 ];then echo varnish is running... exit 0 else echo "Critical : varnish is not running " exit 2 fi El resultado es como :: [root@server ~]# sh -x check_varnish_pro.sh + ps ax + grep -q '[v]arnish' + '['...
Estoy tratando de hacer algunos trucos con dd. Pensé que sería posible almacenar algunos valores hexadecimales en una variable llamada "encabezado" para canalizarlo en dd. Mi primer paso sin una variable fue este: $ echo -ne "\x36\xc9\xda\x00\xb4" |dd of=hex $ hd hex 00000000 36 c9 da 00 b4...
He escrito un script de shell que maneja algunos nombres de archivo "normales", pero he leído ¿Por qué mi script de shell se ahoga en espacios en blanco u otros caracteres especiales? y Por qué no debería analizar la salida de ls y me gustaría que fuera más robusto y maneje cualquier nombre de...
Tengo una pregunta rapida. ¿Es normal que bash (estoy usando 4.4.11) no muestra líneas / texto que está separado / finaliza con plain \r? Me sorprendió un poco ver este comportamiento: $ a=$(printf "hello\ragain\rgeorge\r\n") $ echo "$a" george Pero el texto "hola de nuevo" sigue ahí, de alguna...
En mi ~/.profiletengo un último bloque que debería cargar mi personal bin/ directoryasí: # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi Pero aparentemente no está cargado: echo
Mirando la salida de env, noté que también existe la siguiente función. BASH_FUNC_mc%%=() { . /usr/share/mc/mc-wrapper.sh } El contenido del archivo /usr/share/mc/mc-wrapper.sh es el siguiente. MC_USER=`id | sed 's/[^(]*(//;s/).*//'` MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$" /usr/bin/mc...
Esto es lo que necesito que suceda: iniciar el proceso A en segundo plano espera x segundos iniciar el proceso B en primer plano ¿Cómo puedo hacer que la espera suceda? Estoy viendo que 'dormir' parece detener todo y en realidad no quiero 'esperar' a que el proceso A termine por completo....
Tengo un comando rsync con los siguientes parámetros: rsync -avz --{partial,stats,delete,exclude=".*"} Quiero poner esos parámetros dentro de una variable para reutilizarlos después en el script. Algo como esto: #!/bin/bash VAR=rsync -avz --{partial,stats,delete,exclude=".*"} $VAR /dir1...
Digamos que tengo una función bash así: gmx(){ echo "foo"; } ¿Esta función devolverá implícitamente el valor de salida del echocomando, o está usando return necesario? gmx(){ echo "foo"; return $? } Supongo que de la forma en que funciona bash, el estado de salida del comando final de la...
Estoy buscando una manera de que ocurra una falla basada en una condición if dentro de una condición de caso en bash. Por ejemplo: input="foo" VAR="1" case $input in foo) if [ $VAR = "1" ]; then # perform fallthrough else # do not perform fallthrough fi ;; *) echo "fallthrough...
Me gusta usar el siguiente formato en scripts para comandos con muchos parámetros (para facilitar la lectura): docker run \ --rm \ -u root \ -p 8080:8080 \ -v jenkins-data:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v "$HOME":/home \ jenkinsci/blueocean Pero, a...