Sie sind auf Seite 1von 16

Pgina 1 de 15

Lista de ejercicios linux curso 2013-14

LINUX

Actualiza la base de datos de nombres de ficheros para que funcione locate


updatedb
Aadir a cada ip el texto "conexin desde ip: "
cat a.log | sed -e s/^/"conexin desde ip: "/ | sed -e s/-.*//
Aadir cambiar contrasea
passwd pepe
Aadir grupo
addgroup
Aadir usuario
adduser
Aadir usuario a grupo
gpasswd -a rajoy macarras
Aadir usuario sin usar adduser
con nano editar group, passwd, shadow gshadow y crear carpetas en /home
Borrar del sistema los ficheros con la extensin .borrar
find / -type f -iname '*.borrar' 2> /dev/null -exec rm '{}' ';'
find / -iname *.borrar* -type f 2>/dev/null
Borrar del sistema los ficheros que tengan una a minscula
find -name "*a*" -exec rm "{}" ";"
Borrar los ficheros con extension .borrar del directorio home del usuario actual
incluyendo subdirectorios
find ~ -iname *.borrar -exec rm "{}" ";"
no funciona
rm ~/*.borrar -r
Buscar dentro de ficheros
grep
Buscar directorios que incluya games
find / -iname games -type d 2>/dev/null
Buscar en /etc todos los ficheros con extensin conf
find /etc -name '*.conf'
Buscar en /home/usuario/documentos y mostrar el nombre de los ficheros que
tengan espacios en blanco
sustituyndolos por "_".
ls | grep " " | sed -e s/" "/_/g

Pgina 2 de 15
Buscar ficheros cuyo nombre empieza por "codigo" en todo el sistema
find / -iname codigo* -type f 2>/dev/null
find / -iname "codigo" 2>/dev/null
Buscar ficheros cuyo nombre sea "codigo" en todo el sistema
find / -iname "codigo" 2>/dev/null
Buscar ficheros que contengan en el nombre la cadena "conf"
find / -iname *conf* -type f 2>/dev/null
Buscar ficheros y directorios
find
Buscar las fotos jpg de mas de 100k de todos los usuarios
find /home -iname "*jpg" -size +100k
Buscar los directorios que posean el permiso t
find -perm +1000 -type d
Buscar los ficheros cuyo tamao est entre 10M y 20M
find / -size +10240k -size -20480k
Buscar los usuarios con directorio en /home
grep \/home /etc/passwd
grep \/home /etc/passwd | cut -d: -f6 | sort | cut -d\/ -f3
Buscar si hay un usuario pepe
grep pepe /etc/passwd
Buscar todos los ficheros que
interactivamente.
find / -name core -exec rm -i "{}" ";"

se

nombren

core y los borra

Buscar usuarios con contrasea


grep \$6 /etc/shadow
Buscar y copiar todos los jpg > 10k del sistema
find / -name "*.jpg" - size + 10 k -exec cp "{}" ";" 2 > dev/null
Cambiar el propietario de todos los ficheros y directorios del directorio actual
asignandoselos al grupo root
chgrp -R root *
Coger sopa.txt y mostrarlo en minsculas
cat sopa.txt | tr [:upper:] [:lower:]
Comprimir fichero
tar -cvzf fondos.tar.gz /usr/share/backgrounds/gnome
Copia de seguridad que se llame scripts.tar.gz que contenga todos los ficheros .sh
NO SE PUEDE HACER PORQUE NO PERMITE ELEGIR FICHEROS, LOS COPIA TODOS.
tar -cvzf ~/scripts.tar.gz *

Pgina 3 de 15
Copiar
cp
Copiar en un directorio de tu home llamado copiadeseguridad, todos los ficheros
que terminan en .conf del
directorio /etc
cp /etc/*conf copiadeseguridad
Copiar imagen del disco duro - clonar disco duro hd
dd if=/dev/hda of=/home/usuario/imagenclonada
dd if=/dev/sda of=/home/usuario/imagenclonada
restaurar:
dd if=/mnt/hda2/imagenclon of=/dev/hda
dd if=/media/Woxter/clon of=/dev/sdb
Copiar todas las fotos jpg de mas de 100k en la carpeta foticos
find / -iname "*jpg" -size +100k -exec cp "{}" foticos/ ";"
Cortar
cut
Crear un dir copiadeseguridad y copiar en el todos los ficheros *.conf de /etc y
subdir
find /etc -iname "*.conf" -type f -exec cp "{}" copiadeseguridad/ ";"
Crear un fichero que sea mas pesado que el que nos aparece.
Por ejemplo dd if=/dev/zero of=grande bs=1048576 count=20
dd if=/dev/zero of=grande bs=1048576 count=20
Cual es el coche mas caro
cat ventas.txt | sort -t: -k4 -g | cut -d":" -f3 | tail -1
Cuantos coches en total se han vendido
cat ventas.txt | wc -l
Cuantos ficheros existen en el sistema que tengan los permisos 666
ls -laR / 2> /dev/null | grep -c ^-rw-rw-rwls / -laR | grep "^-rw-rw-rw-" | wc -l
ls / -laR 2>/dev/null | grep .rw-rw-rw- | grep -v ^s | wc -l
Cuantos ficheros ocultos hay en el directorio actual
ls -ld .* | grep -v ^d | wc -l
Cuantos vendedores son
cat ventas.txt | cut -d":" -f1 | sort | uniq | wc -l
Cuenta lineas -l, bytes -c, palabras -w, caracteres -m
wc cuenta lineas -l, bytes -c, palabras -w, caracteres -m

Pgina 4 de 15
Descarga el logo de elpais.es y lo guarde en imgenes (man wget)
wget http://ep01.epimg.net/iconos/v1.x/v1.0/logos/cabecera_portada.png
-P/home/usuario/Imgenes
Descarga man en castellano para algunas instrucciones
apt-get install manpages-es-extra
apt-get install manpages-es
Descargar de internet
wget
http://www.linuxtotal.com.mx/?cont=info_admon_017
Editor de texto - s sustituye texto - p lo imprime - d borra - n quita lineas
sed
Editor de textos
vi = vim.tiny
Elimina las lneas repetidas - funciona sobre ficheros ordenados - sort)
uniq
Entre las 5 y las 17 a que hora entra mas gente..
cat a.log | cut -d: -f2 |grep -v 04 |grep -v 18 | sort -gr | uniq -c | sort -gr | head -1
Final y comienzo
tail y head (final y comienzo)
Guardar una descarga en un directorio
wget -r -l3 -P/tmp/sitio ftp://www.unsitio.com/
Por defecto, el sitio a descargar se guarda en el mismo directorio donde ests ejecutando
wget, con la opcin P
puedes indicar un directorio distinto.
Hacer como root
su -c "comando"
Hacer como root.- crear en /home un fichero llamado copiauslsuario que tenga
dentro una copia de seguridad
comprimida de todos los ficheros de /home/usuario menos los ficheros txt.
tar cvzf /home/copiausuario.tar.gz /home/usuario --exclude=*.txt
Hacer con gpaustralia. Lista ordenada formada por los apellidos de los pilotos
cat gpaustralia | cut -d" " -f2 | cut -d":" -f1 | sort
cat gpaustralia | cut -d" " -f2 | sort | cut -d ":" -f1
Hacer con gpaustralia. Nombre de escuderias con mas de un piloto
cat gpaustralia | cut -d":" -f2 | sort | uniq -d
Hacer con gpaustralia. Nombre de escuderias con solo un piloto
cat gpaustralia | cut -d":" -f2 | sort | uniq -u
cat gpaustralia | cut -d":" -f2 | sort | uniq -c | grep 1

Pgina 5 de 15
Hacer con gpaustralia. Nombre del piloto que hizo la vuelta mas rapida. (menor
tiempo).
cat gpaustralia | sort -t":" -k3 -g | head -1 | cut -d ":" -f1
cat gpaustralia | sort -nt ":" -k3 | head -1 | cut -d ":" -f1
Hacer con gpaustralia. Ordena gpaustralia por tiempos
sort gpaustralia -k3 -t":"
Hacer con modelos.txt. Mostrar lineas que contengan la cadena "PI" o "pi"
cat modelos.txt | sed -ne /[Pp][Ii]/p
Hacer con modelos.txt. Mostrar lineas que contengan un numero de 3 cifras
consecutivas
cat modelos.txt | sed -ne /[0-9][0-9][0-9]/p
Hacer con modelos.txt. Mostrar lineas que contengan un numero, guion y otro
numero
cat modelos.txt | sed -ne /[0-9]-[0-9]/p
Hacer con modelos.txt. Mostrar lineas que cuarto carcter sea espacio en blanco
cat modelos.txt | sed -ne/^....\ /p
cat modelos.txt | sed -ne/^...." "/p
Hacer con modelos.txt. Mostrar lineas que empiecen por una vocal
cat modelos.txt | sed -ne /^[aeiouAEIOU]/p
Hacer con modelos.txt. Mostrar lineas que empiecen por una vocal y tenga un 7
cat modelos.txt | sed -ne /^[aeiouAEIOU].*7/p
Hacer con modelos.txt. Mostrar lineas que tenga primer caracter la A mayuscula.
cat modelos.txt | sed -ne/^A/p
Hacer con modelos.txt. Mostrar lineas que tenga segundo carcter una e o E
cat modelos.txt | sed -ne/^.[Ee]/p
Hacer con modelos.txt. Mostrar lineas que terminen en h o H
cat modelos.txt | sed -ne /[Hh]$/p
Hacer con modelos.txt. Mostrar todas las lineas en mayusculas.
cat modelos.txt | tr [:lower:] [:upper:]
Hacer con modelos.txt. Mostrar todas las lineas menos las que tenga letras
minusculas.
cat modelos.txt | sed -e /[a-z]/d
Hacer con nombres.txt: Mostrar apellidos,nombre
- MAL - no entra en examen. Solo muestra una linea - fin de lnea echo $(head -1 nombres.txt | cut -d: -f2), $(head -1 nombres.txt | cut -d: -f1)
echo $(head -1 nombres.txt | cut -d: -f2), $(head -10 nombres.txt | cut -d: -f10),$(\n)
Hacer con nombres.txt: Mostrar dni de la persona mas joven
cat nombres.txt | sort -t: -k3 -g | head -1 | cut -d: -f4

Pgina 6 de 15
Hacer con nombres.txt: Mostrar el nombre y apellidos de la persona con mas edad
cat nombres.txt | sort -t: -k3 -g | tail -1 | cut -d: -f1,2 | sed -e s/:/" "/
Hacer con nombres.txt: Mostrar nombres compuestos
cat nombres.txt | cut -d: -f1 | grep " "
Hacer con nombres.txt: Mostrar nombres.txt por pantalla sustituyendo las
consonantes por w
cat nombres.txt | sed -e "s/[bcdfghjklmnpqrstwxyzBCDFGHJKLMNPQRSTVWXYZ]/w/g"
Hacer con nombres.txt: Nombre,apellidos,edad y contrasea(4 primeros caracteres
del dni)
cat nombres.txt | sed -e s/.....$//
Hacer con salida.1
cat salida | grep ^c
Hacer con salida.2
cat salida | grep ^/
Hacer con salida.3
cat salida | grep ^\\\\
Hacer con salida.4
cat salida | grep ^\\.
Hacer con salida.5
cat salida | grep ^\\.\\. -v
Hacer en el fichero a.log. Aade a cada ip el texto "conexin desde ip: "
cat a.log | sed -e s/^/"conexin desde ip: "/ | sed -e s/-.*//
Hacer en el fichero a.log. Crear un fichero "preguntas" con las preguntas que se han
hecho en google para llegar a
nuestra web
cat a.log | grep "google" | grep "search" | cut -d"=" -f2 | sort > preguntas.txt
Hacer en el fichero a.log. Mostrar la hora en la que entra mas gente entre las 5 y las
17.
cat a.log | cut -d: -f2 | grep -v 04 | grep -v 18 | uniq -c | sort -gr | head -1
Hacer en el fichero a.log. Mostrar la ip que mas veces se ha conectado a la pagina.
cat a.log | sed -e s/^/"La ip mas visitada es: "/ | sed -e s/-.*// | sort | uniq -c| sort -g | tail -1
Hacer en el fichero a.log. Mostrar las visitas de 8 a 9
cat a.log | cut -d: -f1,2 | grep ":08" | cut -d " " -f1 | sort | uniq | wc -l
Igual que ipconfig
ifconfig
Informa de que tipo es el fichero
file
Informacin sobre un fichero - permisos
stat

Pgina 7 de 15
Lista de directorios con tamao menos los ocultos
du -h - - max -depth=1 --exclude =./.*
Lista de directorios ocultos de /home/usuario
find /home/usuario/ -maxdepth 1 -type d -iname ".*"
ls -1Fa /home/usuario/ | grep \/ | grep "^\." | grep -v "^\..$" | grep -v "^\...$"
ls /home/usuario -d1F .* | grep /$
Lista de usuarios passwd ordenados por numero
cat /etc/passwd | sort -k3 -t":" -g
Lista de usuarios passwd ordenados por numero con perfil en home
cat /etc/passwd | sort -k3 -t":" -g | grep /home
Localiza ficheros
locate
Miexamen P01. Crear un fichero llamado novela.txt y escribir dentro algunas lneas
de texto. Lnea de comando con
la que escribiramos por pantall las lineas que tengan ms de 3 palabras.
cat novela.txt | grep .*" ".*" ".*" "
Miexamen P02. Mostrar el nombre de todos los programas que hay en el directorio
home del usuario actual.
ls ~ -l | grep ^d -v | grep ^...x | cut -d: -f2 | cut -c4Miexamen P03. Mostrar el nombre del fichero con extension txt del directorio actual
que tenga mas lineas
wc -l *.txt | sort -g | tail -2 | head -1 | cut -c 7- | cut -d. -f1
Miexamen P04. Mostrar el contenido de novela.txt excepto la ultima lnea
cat novela.txt | head -n -1
Miexamen P05. Crear en el directorio actual un fichero Mis_fotos.txt que debe estar
formado por nombres de
fichero con extensiones jpg o gif, debe aparecer un fichero en cada linea. Los
ficheros sern los que estn
almacenados en el directorio home del us
Miexamen P06. Con una linea sacar por pantalla el numero de directorios que
pertenezcan al usuario actual del
sistema (no importa a que grupos pertenezca) y que esten dentro de su directorio
home.
find ~ -type d | wc -l
Miexamen P07. Crear directorio Pesados que cuelgue del directorio home del
usuario actual. Con una linea mover
todos los ficheros solo, del dir actual (sin recursividad) que pesen mas de 5 kb a
pesados.
find ~ -iname "*" -size +5k -maxdepth 1 -exec mv "{}" Pesados ";"
Miexamen P08. Nombre de todos los ficheros con ext txt del dir actual que tengan
dentro la palabra ana, sin que se
repita. No sacar ficheros que tengan palabras como juana.
grep -w ana *.txt
Miexamen P09. Nombre de los usuarios que tengan en su dir home ficheros con ext
jpg
find /home -iname "*jpg" | cut -d/ -f3 | uniq -c | cut -c9-

Pgina 8 de 15
Miexamen P10. Mostrar por pantalla cual es el comando que mas veces hemos
ejecutado segn el history y el
numero de veces.
history | cut -c8- | sort | uniq -c | sort -g | tail -1
Montar cdrom
mount /mnt/cdrom
mount /dev/cdrom
Montar y desmontar un dispositivo usb hd dvd
crea carpeta mimemoria
entrar como root con su
mount /dev/sdb1 ./mimemoria
umount /dev/sdb1/
Mostar las distintas zonas horarias que se han conectado a nuestra pag ordenados
por el numero de usuarios
conectados de cada zona horaria ordenado por el numero de veces conectado.
cut -d'+' -f2 a.log | cut -d']' -f1 | sort -g | uniq -c
El formato para cada lnea es el siguiente:
65.55.52.117 - - [02/Apr/2014:04:24:12 +0200] "GET /documentos/1223275217633_jes_ii.pdf
HTTP/1.1" 200 6911227 "-"
"Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)"
La zona horaria se indica despus de la hora seguida del signo +, en este caso sera +0200. En
esta pgina puedes
encontrar ms informacin sobre el formato del log: http://zonadeclientes.net/formato-logs.htm
Si hacemos un cut -d'+' -f2 a.log | cut -d']' -f1 nos quedaremos solo con el nmero de la zona
horaria. Sin embargo
parece que todos los que aparecen son 0200, para coprobarlo se puede aadir al final un grep
-v 0200 quedando la
orden:
cut -d'+' -f2 a.log | cut -d']' -f1 | grep -v 0200
Como ves no muestra ninguno, por lo que creo que todas las visitas estn en la misma zona
horaria y hacer el
ejercicio es difcil ya que no puedes comprobar si esta bien.
De todos modos es posible insertar nuevas lneas o editar algunas de las ya existentes
cambiando la zona horaria y
que por ejemplo en vez de poner +0200 cambiarlo por +0300. As se podr comprobar el
comando.
Mostrar solo el nombre usuario
cat /etc/passwd | sed -e "s/:.*$//g"
Mostrar "este fichero es importante: " + el nombre del fichero de los que incluyan en
su nombre la cadena "net"
find / -type f -iname "*net*" -exec echo "este fichero es importante" "{}" ";"
Mostrar "este fichero: "+nombredelfichero+" es una foto". Escribirlo por cada foto
jpg bmp gif png - 1
find / \( -iname "*.png" -or -iname "*.jpg" -or -iname "*.bmp" \) -exec echo "el fichero {} es una
foto" ";"
2>/dev/null

Mostrar "este fichero: "+nombredelfichero+" es una foto". Escribirlo por cada foto
jpg bmp gif png - 2
find / \( -iname "*.png" -or -iname "*.jpg" -or -iname "*.bmp" \) -exec echo "el fichero {} es una
foto" ";"
2>/dev/null | sed -e "s/^.*\///g"

Pgina 9 de 15
Mostrar "este fichero: "+nombredelfichero+" es una foto". Escribirlo por cada foto
jpg bmp gif png - 3
find / \( -iname "*.png" -or -iname "*.jpg" -or -iname "*.bmp" \) -exec echo "el fichero :{} es una
foto" ";"
2>/dev/null | sed -e "s/:.*\///g"
Mostrar % de espacio libre en disco duro hd
df -h | grep ^rootfs | cut -c77-79
Mostrar al pichichi
cat goleadores | sort | uniq -c | sort -g | tail -1
Mostrar cuantos ficheros ocultos hay en el directorio actual
ls -ld .* | grep -v ^d | wc -l
ls -d1F .* | grep /$ | wc -l
Mostrar del fichero sopa.txt solo los nombres
cat sopa.txt | sed -e "s/^...//" | sed -e "s/...$//"
Mostrar el espacio de los discos, espacio usado y disponible.
df -h
Mostrar el luis vertical
cat sopa.txt | sed -e "s/^........//" | sed -e "s/.$//"
Mostrar el n de grupos del sistema que tengan mas de 1 usuario
cat /etc/group | grep "," | wc -l
Mostrar el nombre del pichichi
cat goleadores | sort | uniq -c | sort | tail -1 | cut -c9Mostrar el nombre del usuario que mas ficheros tenga en su directorio de usuario
situandonos en home
find . -type f 2> /dev/null | cut -d/ -f2 | uniq -c | sort -gr | head -1 | cut -c9- MAL - Muestra el dir home
du /home -a | sort -g | tail -2 | head -1 | cut -d\/ -f2
Mostrar el nombre del usuario que mas ficheros tenga en su directorio de usuario.
find /home/usuario -type f | wc -l
Mostrar el numero de directorios que hay en /home/usuario
find /home/usuario -type d | wc -l
Mostrar el numero de ficheros con extensin .conf que hay en /etc y sus
subdirectorios
find /etc -type f -iname '*.conf' 2> /dev/null | wc -l
Mostrar el numero de ficheros que hay en el dir actual ocultos y no ocultos (no
directorios)
ls -la | grep -v ^d | wc -l
Mostrar el numero de jugadores han metido gol
cat goleadores | sort | uniq | wc -l

Pgina 10 de 15
Mostrar el numero de usuarios del sistema que tienen contrasea.
grep \$6 /etc/shadow | wc -l
Mostrar el numero de usuarios del sistema que usan bash como Shell
cat /etc/passwd | grep bash | wc -l
grep -c bash /etc/passwd
Mostrar el numero de usuarios del sistema.
cat /etc/passwd | wc -l
Mostrar el usuario que mas pesa. Total de su ficheros pesan ms.
du -k --max-depth=1 2> /dev/null | sort -gr | sed -ne 2p | cut -c9du * -k -s 2> /dev/null | sort -gr | head -1
Mostrar en una columna el nombre de todos los ficheros ocultos de /home/usuario
ls -d1F .* | grep -v /$
ls -dal .* | grep ^- | cut -c50Mostrar ficheros ocultos
ls -da .*
Mostrar la cantidad de directorios que hay en /home y subdirectorios (oculto es lo
que empieza por un punto)
ls /home/usuario -d1FR .* | grep /$ | wc -l
Mostrar la cantidad de ficheros ocultos de /home y subdirectorios
ls /home/usuario -d1FR .* | grep -v /$ | wc -l
Mostrar la ip de realmadrid.com
ping -c1 google.es | head -1 |cut -d"(" -f2 | cut -d ")" -f1
Mostrar la ip de tu equipo
ifconfig | grep "inet addr:" | head -1 | cut -d: -f2 | cut -d" " -f1
Mostrar la ruta completa del directorio que tenga mas ficheros jpg > de 10k
find / -iname "*.jpg" -size +10k -printf "%h \n" 2>/dev/null | sort | uniq -c | sort -gr | head -1|
cut -c9find / -iname "*.jpg" -size +10k -printf "%h \n" | sort | uniq -c | sort -n | tail -1 | cut -d " " -f7
Mostrar la ltima columna de el fichero passwd
cat /etc/passwd | sed -e "s/^.*://g"
Mostrar la ultima columna de passwd con sed
cat /etc/passwd |sed -e "s/^.*://g"
Mostrar lista de arranque
dmesg
Mostrar lista de directorios con tamao
du -h --max-depth=1

Pgina 11 de 15
Mostrar lista de directorios con tamao menos los ocultos
du -h --max-depth=1 --exclude =./.*
Mostrar lista de dispositivos
lspci
Mostrar lista de usuarios del sistema que tienen contrasea, solo nombres.
grep \$6 /etc/shadow | cut -d: -f1
Mostrar lista de usuarios del sistema que tienen contrasea.
grep \$6 /etc/shadow
Mostrar lista de usuarios del sistema solo nombres -1
cat /etc/passwd | cut -d: -f1
Mostrar lista de usuarios del sistema solo nombres -2
cat /etc/passwd | sed -e "s/:.*$//g"
Mostrar lista de usuarios del sistema.
cat /etc/passwd
Mostrar lista de usuarios passwd ordenados por numero
cat /etc/passwd | sort -k3 -t":" -g
Mostrar lista de usuarios passwd ordenados por numero con perfil en home
cat /etc/passwd | sort -k3 -t":" -g | grep /home
Mostrar los dispositivos de almacenamiento discos, hd, usb, dvd
ls /dev/sd*
Mostrar los dispositivos que hay montados
cat /etc/mtab
Mostrar los dispositivos que monta al reiniciar
cat /etc/fstab
Mostrar los ficheros duplicados del sistema
ls -pR / | grep -v \/ | sort | uniq -d
ls -pR / | grep -v \/ | sort | uniq -dc | sort -g
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -d | wc -l
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -c | sort -g | grep -vc '^
Mostrar los grupos del sistema
cat /etc/group

1'

Pgina 12 de 15
Mostrar los nombres de ficheros del directorio actual que contengan en el nombre
las 5 vocales
ls ~ | grep [aA] | grep [eE] | grep [iI] | grep [oO] | grep [uU]
ls /etc/ | grep [aA] | grep [eE] | grep [iI] | grep [oO] | grep [uU]
ls ~ | grep [aA] | grep [eE] | grep [iI] | grep[oO] | grep[uU]
find ~ | cut -d"/" -f4 | grep [aeiouAEIOU]
Mostrar nombre del fichero mas pesado, de mayor tamao, del sistema
find / -type f -printf '%k %f \n' 2> /dev/null | sort -g | tail -1 | cut -d' ' -f2
Si en vez de solo el nombre del fichero se desea la ruta completa se puede utilizar %p en vez
de %f.
find / -type f -printf '%k %p \n' 2> /dev/null | sort -g | tail -1 | cut -d' ' -f2
Para comprobar que funciona bien se puede crear un fichero que sea ms pesado que el que
nos aparece.
Por ejemplo dd if=/dev/zero of=grande bs=1048576 cou=200
Mostrar nummero de usuarios del sistema que tengan mas de cuatro caracteres en
el nombre
cut -d':' -f1 /etc/passwd | grep '^.....\+'
cat /etc/passwd | cut -d: -f1 | sort | sed -ne /^..../p | wc -l
cat /etc/passwd | cut -d: -f1 | sort | sed -ne /^..../p
Mostrar particiones
df
Mostrar si el directorio actual esta en el path del sistema, y si esta en el path, que lo
muestre.
echo $PATH | grep $(pwd)
echo $PATH | grep $PWD
Mostrar todos los ficheros .py del usuario logado
find ~ -iname "*.py" -printf "%f\\n" 2> /dev/null
Mover y renombrar
mv
Muestra "este fichero: "+nombredelfichero+" es una foto". Escribirlo por cada foto
jpg bmp gif png
find / \( -iname "*.png" -or -iname "*.jpg" -or -iname "*.bmp" \) -exec echo "el fichero {} es una
foto" ";"
2>/dev/null
Muestra desde octavo caracter en adelante de cada linea del fichero sueldos
cat sueldos | cut -c8Muestra el dato de la segunda columna delimitada por espacio
cat sueldos | cut -d " " -f2
Muestra el directorio de cada usuario
cat /etc/passwd | cut -d ":" -f6

Pgina 13 de 15
Muestra el nombre y ruta de los ficheros > 100 k del sistema
find / -type f -size +100k 2> /dev/null
Para comprobarlo puedes crear un fichero de menos de 100k y otro mayor, por ejemplo:
- touch vacio (Crea un fichero de 0k)
- dd if=/dev/zero of=lleno bs=1024 count=200 (Crea un fichero de 200k)
Luego solo habr que repetir el comando buscando los ficheros con grep para ver si aparecen:
find / -type f -size +100k 2> /dev/null | grep lleno
find / -type f -size +100k 2> /dev/null | grep vacio
Muestra el octavo caracter de cada linea del fichero sueldos
cat sueldos | cut -c8
Muestra lista de arranque
dmesg
Muestra los usuarios conectados al sistema ya sea local o remotamente
who
Nombre del coche mas vendido
cat ventas.txt | cut -d: -f3 | sort | uniq -c | sort | tail -1 | cut -c9Nombre del fichero mas repetido del sistema.
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -c | sort -g
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -c
Numero de ficheros .sh
find / - type f -iname *.sh 2>/dev/null | wc -l
Numero de ficheros del sistema duplicados
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -d | wc -l
find / -type f -printf '%f \n' 2> /dev/null | sort | uniq -c | sort -g | grep -vc '^

1'

ls -pR / | grep -v \/ | sort | uniq -d | wc -l


Numero de ficheros ejecutables que existen en el directorio home del usuario actual
logado
ls -laR /home/$USER | cut -d' ' -f1 | grep ^- | grep -c x
Obtener numero de fotos que hay en el sistema con mas de 10k
find / \( -iname "*.jpg" -o -iname "*.gif" -o -iname "*.png" -o -iname "*.bmp" \) -size +10k -printf
"%f \n" | wc -l
find / \( -iname "*.png" -o -iname "*.jpg" -o -iname "*.bmp" -o -iname "*.gif" \) -size +10k
2>/dev/null | wc -l
Ordena alfabeticamente
sort
Ordena goleadores y quita repeticiones
cat goleadores | sort | uniq

Pgina 14 de 15
Ordena numericamente
sort gastos -g
Ordena por la segunda columna
sort gastos -k2
Permisos
ugo - usuario - grupo - otros
1

Poner alias a los comandos


Nano .bashrc
Precio mas caro
cat ventas.txt | sort -t: -k4 -g | cut -d":" -f4 | tail -1
Proporciona ayuda sobre los comandos internos de bash, como cd, pwd, alias,
umask y muchos otros.
help
Reactivar tarjeta de red
service network-manager restart
Se usa para cambiar al grupo de un fichero.
chgrp
Se usa para cambiar al propietario y el grupo de un fichero.
chown
Tamao de directorios - Permite conocer la longitud
kilobytes por defecto)
de
una jerarqua de
ficheros a partir de un directorio
du
Tar - Compresin
tar
Usar calculadora
Echo 2^32 | bc

(expresada

en

Pgina 15 de 15
Usuario actual
~
Usuarios conectados actualmente.
w
Ver la version del kernel
uname -r

Das könnte Ihnen auch gefallen