User Tools

Site Tools


informatica:linux:comandes

This is an old revision of the document!


SFTP

Transferencia de un archivo desde hostA→hostB utiizando hostBridge como puente (puede no ser necesario; va bien “por si los firewalls”)

hostA> cat /path/to/local/file | ssh -2 -C user@hostBridge 'cat | ssh -2 -C user@hostB “cat>/path/to/remote/file”'

Si la transferencia es de Local → Remoto

local> cat /path/to/local/file | ssh -2 -C user@remoto “cat>/path/to/remote/file”

Si la transferencia es de Remoto → Local

local> ssh -2 -C user@remoto “cat /tmp/x” > /path/to/local/file

Enviar mensajes entre usuarios

write talk mesg wall who

Bucle

while true;do echo $i `netstat -an | grep 8889`;i=`expr $i + 1`;sleep 1;done

Mirar Hardware

dmidecode

lspci -v

Saber usuarios conectados

Who o finger

Redireccionar salidas a ficheros

Redirecciona la salida stderr (2) a stdout (1) y esta a un fichero:

ls -l jurjur >ls.out 2>&1

se puede redireccionar al vacio:

ls -l jurjur > dev/null 2>&1

Screen

Crear una ventana con un “titulo”:
#screen -S titulo

Recuperar esa sesión:

screen -R titulo

Recuperar sesion:
#screen -r

Para enviar comandos dentro de una sesión, pulsar ctrl+a y luego “:”

Cambiar titulo a una sesion activa:
:sessionname nuevo_titulo

Salir de la sesión en curso (sin cerrarla, ahí la gracia de screen):

CTRL + a + d

Multiusuario:

# sudo chmod +s /usr/bin/screen
# sudo chmod 755 /var/run/screen

Crear una sessió (amb el paràmetre -S li podem posar un nom més bonic)

# screen -S nomSessió

Definir-la como a multiusuari

Ctrl-a :multiuser on

Donar permisos a un usuari per veure la sessió

Ctrl-a :acladd usuari

Per evitar que l’altre usuari pugui editar

Ctrl-a :aclchg usuari -w "#"

L’altre usuari es pot connectar amb la següent comanda:

# screen -x usuariAmbScreen/nomSessió

Eliminar pitido shell

#xset -b

Montar ISO

#mount -o loop -t iso9660 fichero.iso /mnt/iso

GREP

[[:alpha:]] is the same as [a-zA-Z]
[[:upper:]] is the same as [A-Z]
[[:lower:]] is the same as [a-z]
[[:digit:]] is the same as [0-9]
[[:alnum:]] is the same as [0-9a-zA-Z]
[[:space:]] matches any white space including tabs

Para ignorar un caso:

# nslookup wiki.legido.com | grep Address |  awk '{print $2}'
192.168.1.3#53
87.221.36.185

Queremos quitar la linea de la “#” se hace con -v:

# nslookup wiki.legido.com | grep Address |  awk '{print $2}' | grep -v "#"
87.221.36.185

Tema 64 bits:

* Para comprovar si una CPU es de 64 bits, se puede ejecutar en un terminal:

grep ' lm ' /proc/cpuinfo

(si no aparece nada, sólo es de 32 bits)

* Para comprovar si la CPU tiene extensiones “V”, se puede ejecutar en un terminal:

egrep '(vmx|svm)' --color=always /proc/cpuinfo

(si no aparece nada, pues nada de nada).

* Múltiples coincidencias:

grep -E 'hola|como|estas' fichero.txt
egrep '(hola|como|estas)' fichero.txt

Sintaxis bash

http://www.tldp.org/LDP/abs/html/

* Para sortear caracteres especiales:

mv -- \-mi\ fichero.rar /ruta/destino/

** Condiciones

  1. -ne (not equal)
  2. -eq (equal)

Rastrear una red

nmap redes rastrear scan

* Para ver las máquinas que hay en un segmento de red determinado:

nmap -sP 192.168.1.0/24

Uniq y sort

sort -n xferfaxlog.seguro > xferfaxlog.ordenado
uniq xferfaxlog.ordenado xferfaxlog.unico

Puertos

Listar los puertos que están abiertos:

nmap -sT -O localhost

Listar el proceso que está okupando un puerto:

sudo lsof -ni :5666

Personalizar shell

En el fichero .bashrc de home:

export PS1='\e[0;31m\u@\h:\w\$ '

Tabla de colores (con 1; para claros):

Black 0;30
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33
Blue 0;34
Green 0;32
Cyan 0;36
Red 0;31
Purple 0;35
Brown 0;33

Número de filas o columnas:

Podemos utilizar el comando resize que mira cuantas filas y columnas tenemos en pantalla y realiza:

# resize
COLUMNS=171;
LINES=60;
export COLUMNS LINES;

O ponerlas a mano:

# stty rows 60
# stty cols 171

Copiar

Copiar *.pdf de una estructura con directorios y subdirectorios a un solo directorio:

mkdir /destion && find /origen/ -iname '*.pdf' -exec cp {} /destino/ \;

Tráfico de una interfaz

Listamos paquetes y bytes de la interfaz eth0:

awk -F'[: ]*' '/eth0/{print $3"\n"$11}' < /proc/net/dev

Añadir ruta a $PATH

PATH+=nueva_ruta

O también:

export PATH=$PATH:nueva_ruta

Sustituír todas las ocurrencias de una cadena en un directorio

Da errores, pero furrula:

find . -exec perl -pi -w -e 's/texto_a_sustituir/texto_nuevo/g;' '{}' \; -print

Compilar

Dos paquetes interesantes:

build-essential
module-assistant

Comparar archivos

comm --nocheck-order -23 archivo1 archivo2

Shared libraries

If you see a message like:

error while loading shared libraries: libzmq.so.1

Then try rebuilding the dynamic linking cache with sudo ldconfig prior to building pyzmq.

Varios

Introducir fecha y hora en el comando “history”:

echo 'export HISTTIMEFORMAT="%d/%m/%Y %H:%M:%S "' >> ~/.bash_profile
exit

Al volver a entrar ya deberia aparecer al ejecutar:

history

No incluir en comando “history” aquellos que comiencen por un espacio:

echo 'export HISTTIMEFORMAT=ignorespace >> ~/.bash_profile
exit

Poner color grep grepcolor. Lo ponemos en el /etc/profile para todos usuarios

  alias grep='grep --color=auto'

Archivos

  • Obtener el el “record size” de un archivo:
awk '{print length;exit}' 01.out 
37

Abrir correos formato .eml

mv correo.eml correo.mht
chromium correo.mht

Determinar si puerto de red cableado

Para interfaz “em1”:

cat /sys/class/net/em1/carrier 

Resultado:

1 cableado
0 no cableado
informatica/linux/comandes.1412335163.txt.gz · Last modified: 2015/04/13 20:19 (external edit)