PDF de programación - chuleta shell script

Imágen de pdf chuleta shell script

chuleta shell scriptgráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 30 de Noviembre del 2017)
4.262 visualizaciones desde el 30 de Noviembre del 2017
56,4 KB
4 paginas
Creado hace 9a (16/10/2014)
REDIRECCIONES
output (salida estándar)
tee fichero
> fichero
>> fichero
> /dev/null
error
2>&1
2> fichero
2>> fichero
2> /dev/null
output y error
2>&1 | tee fichero
&> fichero
&>> fichero
VARIABLES
variables de entorno
$PWD
$OLDPWD
$PPID
$HOSTNAME
$USER
$HOME
$PATH
$LANG
$FUNCNAME
$LINENO
$RANDOM
variables especiales
$0
${N}
$$
$!
$@
$#
$? # (0=normal, >0=error)
shift
ARRAYS
declare –a ARRAY
ARRAY=(valor1 ... valorN)
ARRAY[N]=valorN
ARRAY=([N]=valorN valorM [P]=valorP)
${ARRAY[N]}
${ARRAY[*]}

# output a fichero y a pantalla
# output a fichero
# output al final del fichero
# descarta output

# error a output
# error a fichero
# error al final del fichero
# descarta error

# ambos a fichero y a pantalla
# ambos a fichero
# ambos al final del fichero

# directorio de trabajo actual
# directorio de trabajo anterior
# identificador del proceso padre
# nombre del ordenador
# nombre del usuario
# directorio del usuario
# rutas búsqueda de comandos
# idioma para los mensajes
# nombre función en ejecución
# número de línea actual (del script)
# número aleatorio

# nombre del script
# parámetro N
# identificador del proceso actual
# identificador del último proceso
# todos los parámetros recibidos
# número de parámetros recibidos
# código de retorno del último comando
# $1=$2, $2=$3, ... ${N-1}=${N}

# declaración array
# asignación compuesta
# asignación simple
# asigna celdas N, M y P
# valor celda N
# todos los valores

Autor: Adolfo Sanz De Diego (asanzdiego - Blog|GitHub|LinkedIn|SlideShare|Twitter) Licencia: CC-BY-SA

OPERADORES
operadores aritméticos
+
-
*
/
%
++
--
operadores comparaciones numéricas
numero1 –eq numero2
numero1 –ne numero2
numero1 –lt numero2
numero1 –le numero2
numero1 –gt numero2
numero1 –ge numero2
operadores lógicos
!
&& , -a
|| , -o
operadores de ficheros
-e fichero
-s fichero
-f fichero
-d fichero
-h fichero
-r fichero
-w fichero
-x fichero
-O fichero
-G fichero
f1 -ef f2
f1 -nt f2
f1 -ot f2
operadores de cadenas
-n cadena
-z cadena
cadena1 = cadena2
cadena1 == cadena2
cadena1 != cadena2

# suma
# resta
# multiplicación
# división
# resto
# incremento
# decremento

# numero1 igual que numero2
# numero1 distinto que numero2
# numero1 menor que numero2
# numero1 menor o igual que numero2
# numero1 mayor que numero2
# numero1 mayor o igual que numero2

# NOT
# AND
# OR

# existe
# no está vacío
# normal
# directorio
# enlace simbólico
# permiso de lectura
# permiso de escritura
# permiso de ejecución
# propietario
# pertenece al grupo
# f1 y f2 enlaces mismo archivo
# f1 más nuevo que f2
# f1 más antiguo que f2

# no vacía
# vacía
# cadena1 igual a cadena2
# cadena1 igual a cadena2
# cadena1 distinta a cadena2

Autor: Adolfo Sanz De Diego (asanzdiego - Blog|GitHub|LinkedIn|SlideShare|Twitter) Licencia: CC-BY-SA

ENTRECOMILLADO
#! RUTA
\carácter
linea1 \ linea2
'cadena'
“cadena”
EXPANSIÓN
[prefijo]{cad1,[,...],cadN}[sufijo]
${VARIABLE:-valor}
${VARIABLE:=valor}
${VARIABLE:?mensaje}
${VARIABLE:inicio}
${VARIABLE:inicio:longitud}
${!prefijo*}
${#VARIABLE}
${#ARRAY[*]}
${VARIABLE#patrón}
${VARIABLE##patrón}
${VARIABLE%patrón}
${VARIABLE%%patrón}
${VARIABLE/patrón/reemplazo}
${VARIABLE//patrón/reemplazo}
$((expresión))
$[expresión]
EJECUCIÓN
./comando
$RUTA/comando
comando
. script
$(comando param1 ... paramN)
`comando param1 ... paramN`
comando &
c1 | c2
c1 ; c2
c1 && c2
c1 || c2
ARGUMENTOS DE LÍNEA DE COMANDOS
while getopts "hs:" option ; do
case "$option" in
h) DO_HELP=1 ;;
s) argument=$OPTARG ; DO_SEARCH=1 ;;
*) echo "Invalid" ; return ;;
esac
done

# ruta al interprete (/bin/bash)
# valor literal del carácter
# para escribir en varias lineas
# valor literal cadena
# valor literal cadena, excepto $ ' \

# = precad1suf ... precadNsuf
# si VARIABLE nula, retorna valor
# si VARIABLE nula, asigna valor
# si VARIABLE nula, mensaje error y fin
# recorta desde inicio hasta el final
# recorta desde inicio hasta longitud
# nombres de variables con prefijo
# número de caracteres de VARIABLE
# elementos de ARRAY
# elimina mínimo patrón desde inicio
# elimina máximo patrón desde inicio
# elimina mínimo patrón desde fin
# elimina máximo patrón desde fin
# reemplaza primera coincidencia
# reemplaza todas las coincidencias
# sustituye expresión por su valor
# sustituye expresión por su valor

# ejecuta desde directorio actual
# ejecuta desde cualquier sitio
# ejecuta si está en el $PATH
# ejecuta exportando variables
# ejecuta de forma literal
# ejecuta sustituyendo variables
# ejecuta en segundo plano
# redirige salida c1 a entrada c2
# ejecuta c1 y luego c2
# ejecuta c2 si c1 termina sin errores
# ejecuta c2 si c1 termina con errores

# getops + "opciones disponibles"
# mientras haya argumentos
# seleccionamos
# -h sin opciones
# -s con opciones en $OPTARG
# * error

Autor: Adolfo Sanz De Diego (asanzdiego - Blog|GitHub|LinkedIn|SlideShare|Twitter) Licencia: CC-BY-SA

ESTRUCTURAS DE CONTROL
if expresión1; then
bloque1
elif expresión2; then
bloque2
else
bloque3
fi
case VARIABLE in
patrón11|...|patrón1N)
bloque1 ;;
patrón21|...|patrón2N)
bloque2 ;;
*)
bloqueDefecto ;;
esac
for VARIABLE in LISTA; do
bloque
done
for ((expr1; expr2; expr3; )); do
bloque
done

while expresión; do
bloque
done
until expresion; do
expresion
done
[function] expresion () {
... [ return [valor] ] ...
}
INTERACTIVIDAD
read [-p cadena] [variable1 ...]

echo cadena
-n no hace salto de linea
-e interpreta caracteres con \
printf
CONTROL DE PROCESOS
comando &
bg númeroProceso
fg númeroProceso
jobs
kill señal PID1|númeroProceso1
exit código

trap [comando] [código1 ...]
wait [PID1|númeroProceso1]
nice -n prioridad comando
renice -n prioridad comando

# condicional
# si expresión1 entonces
# bloque1
# sino y expresión2 entonces
# bloque2
# si ninguna entonces
# bloque2
# selectiva
# si VARIABLE coincide con patrones1
# entonces bloque1
# si VARIABLE coincide con patrones2
# entonces bloque2
# si ninguna
# entonces bloqueDefecto

# iterativa con lista
# ejecuta bloque sustituyendo
# VARIABLE por cada elemento de LISTA
# iterativa con contador
# primero se evalúa exp1
# luego mientras exp2 sea cierta
# se ejecutan el bloque y expr3
# bucle “mientras”
# se ejecuta bloque
# mientras expresión sea cierta
# bucle “hasta”
# se ejecuta bloque
# hasta que expresión sea cierta
# función
# se invoca con
# nombreFunción [param1 ... paramN]

# input
# lee teclado y asigna a variables
# puede mostrarse un mensaje antes
# si ninguna variable, REPLY = todo
# output
# manda el valor de la cadena
# a la salida estándar
# output formateado (igual que C)

# ejecuta en segundo plano
# continúa ejecución en segundo plano
# continúa ejecución en primer plano
# muestra procesos en ejecución
# mata proceso(s) indicado(s)
# salir con código de retorno
# (0=normal, >0=error)
# ejecuta comando cuando señal(es)
# espera hasta fin proceso(s) hijo(s)
# ejecuta comando con prioridad [-20/19]
# modifica prioridad comando [-20/19]
# -20 máxima prioridad y 19 mínima

Autor: Adolfo Sanz De Diego (asanzdiego - Blog|GitHub|LinkedIn|SlideShare|Twitter) Licencia: CC-BY-SA
  • Links de descarga
http://lwp-l.com/pdf7754

Comentarios de: chuleta shell script (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

  • Tags:
  • c