En este post iré poniendo comandos básicos pero siempre múy útiles para usar la consola de linux (en mi caso Ubuntu).
Si sos usuario de alguna distribución de Linux aca dejo un post sobre los comandos básicos para usar el terminal. Estos comandos como bien digo son básicos, pero en mi caso siempre es necesario recordar el uso de alguno, así que acá los iré poniendo.
Moverse entre directorios
Para movernos entre directorios debemos utilizar cd [directorio], el cual cambiará al directorio elegido. Si no se escribe ningún directorio nos llevará a la HOME del usuario en uso, y si utilizamos cd .. nos subirá un nivel en el nivel de directorios.
root@mylinux:~$ cd /var/www //nos llevará al directorio www dentro de var.
root@mylinux:/var/www$ cd .. //nos sube un nivel, por lo tanto, nos encontramos en var.
Imprimir el directorio actual
Para imprimir el directorio actual de trabajo debemos tipear pwd.
Listar el contenido de los directorios
Si utilizamos el comando ls [opciones..] [directorio/archivo] este nos listará el comtenido del directorio. Si se utiliza el comando ls sin opciones lista el contenido del actual directorio; la opción más utilizada es -l, la cual muestra información más detallada del directorio y los archivos. La opción -R realiza un listado recursivo.
root@mylinux:~$ ls -l
drwxr-xr-x 2 user user 4096 2010-03-10 00:03:45 Desktop
drwxr-xr-x 2 user user 4096 2010-01-19 22:33:05 Documents
Visualizar la documentación de un comando
Uno de los comandos más utilies para mi es man [opciones] página, este comando muestra la documentación de un comando determinado. Por ejemplo, man ls nos dará la documentación del comando ls con todas sus opciones. A cada documento se lo denomina 'página', y las páginas pueden estar divididas en 'secciones'.
En algunas ocasiones se encuentran páginas con varias secciones y para definir qué sección visualizar se utiliza el número de la sección como argumento man 2 ls. Si se desea realizar una búsqueda en el manual se utiliza el argumento -k, por ejemplo, man -k ls mostrará un listado resumido de todas las páginas donde aparezca ls en la descripción corta; con un número entre paréntesis que indica en que sección se encuentra.
Mostrar el contenido de un fichero
El comando cat [opciones...] [ficheros...] muestra el contenido de los ficheros por la salida estándar; en caso de no especificar ficheros, el comando lee la entrada estándar.
root@mylinux:~$ cat hola.txt
Hola mundo.!!
root@mylinux:~$
En este caso se muestra el contenido de un archivo de texto (hola.txt) que solo contiene el típico saludo.
Redirecciones de entradas y salidas
Cada comando en Linux/Unix tienen asociado una "entrada estándar" (comunmente el teclado), una "salida estándar"
(comunmente la consola ó pantalla) y una "salida estándar de error" (comunmente la misma pantalla o consola). Con los comandos "<", ">" y "|" es posible redireccionar esas entradas y salidas hacia un fichero o directamente a otro comando. Por ejemplo:
root@mylinux:~$ ls -l > salida.txt
Esto redireccionará la salida del comando ls visto anteriormente a un archivo llamado salida.txt.
El comando "|" (tubería o pipe) nos permite "entubar" las salidas a entradas de otros proceso evitando el uso de ficheros temporales. La concatenación de comandos es muy útil y potente, y es algo muy típico de sistemas Unix/Linux. Por ejemplo:
root@mylinux:~$ cat fichero1 fichero2 | grep palabra | sort | uniq
Enviar de la salida como argumentos.
La salida también puede ser enviada de un proceso hacia otro, pero en vez de hacerlo a la entrada estándar del proceso lo hace como argumentos, esto se hace con la comilla simple invertida "`". Se utiliza en el lugar donde se especifican los argumentos de los comandos:
root@mylinux:~$ ls -l `which ls`
Lo cual significa que primero se ejecutará which ls y su salida será considerada como argumento de ls -l.
Copiar ficheros
El comando cp origen destino nos permite copiar un archivo o varios archivos, o directorios a otro directorio; uno de los argumentos más utilizados es -r con el cual se copian recursivamente archivos o directorios a otro directorio.
root@mylinux:~$ cp /home/user/index.php /var/www/
Mover ficheros
El comando mv origen destino se utiliza para mover archivos o directorios hacia un directorio destino:
root@mylinux:~$ mv /home/user/index.php /home/index.php
Lo cual movera el archivo index.php un directorio para arriba. Además, también es utilizado para renombrar archivos:
root@mylinux:~$ mv /var/www/index.php /var/www/default.php
De este modo el fichero que se llamaba index.php ahora se llama default.php.
Crear un directorio
Para crear un nuevo directorio debemos utilizar el comando mkdir [opciones...] nombre_directorio.
Borrar un directorio
Para borrar uno o más directorios utilizamos el comando rmdir [opciones...] directorio1 directorio2. Cabe destacar que para poder eliminarlos los directorios deben estar vacios.
Borrar ficheros
Para borrar ficheros utilizamos el comando rm [opciones...] ficheros. Las opciones más comunes son "-f" para forzar el borrado sin preguntarle al usuario, "-i" hace lo contrario, y "-r" para borrar recursivamente.
Crear enlaces simbólicos (symlink)
Para crear enlaces simbólicos, los cuales son múy útiles en entornos Unix, utilizaremos el comando ln -s destino [nuevo_alias]. Con este comando se creará una carpeta de nombre [nuevo_alias] que apunta a la carpeta física llamada destino.
Ordenar lexicográficamente
Al utilizar el comando sort [opciones...] [ficheros...], imprimiremos la concatenación ordenada lexicográficamente de los ficheros o entrada estándar. La opción "-n" ordena númericamente, "-r" ordena a la inversa, y la opción "--field-separator=@" hace que el caracter "@" sea el separador de campos.
Eliminar lineas consecutivas duplicadas
El comando uniq [opciones...] [ficheros...] elimina las lineas consecutivas duplicadas.
Mostrar las primeras lineas de un archivo
El comando head [opciones...] [ficheros...] muestra las primeras 10 lineas de un fichero o de la entrada estándar. Si se desea mostrar más de 10 lineas se debe usar la opción -[numero] por ejemplo:
root@mylinux:~$ head -50 archivo.txt
mostrará las primeras 50 lineas del archivo.
Mostrar las últimas lineas de un archivo
Para obtener la funcionalidad inversa del comando head y mostrar las últimas lineas de un archivo se debe usar el comando tail [opciones...] [ficheros...]. Una de las opciones más habituales es "-f" con lo cual el comando se queda verificando si el fichero sigue incrementando su contenido y va mostrando las nuevas lineas.
Contar la cantidad de caracteres, palabras o lineas
El comando wc [opciones...] [ficheros] cuenta las palabras, caracteres o lineas del archivo indicado. Con la opción "-l" muestra solo las lineas, con "-w" solo las palabras, "-m" solo los caracteres y la opción "-c" cuenta los bytes.
Información detallada de los ficheros
Para obtener información más detallada de los ficheros podemos utilizar el comando file [opciones...] [ficheros...].
Mostrar el pathname de un comando
El comando which [-a] comandos... muestra el pathname (nombre completo) de los comandos especificados. Si no se específica la opción "-a" muestra el primer path solamente, indicando esta opción se mostrarán todos los path que existan para cada comado.
Bueno espero que les sirva como ayuda memoria y también a los principiantes en Linux, en el breve tiempo iré agregando más comandos, y si quieren alguno en especial dejen el comentario.


3 Comentarios:
Dario:
01 de Octubre de 2010 a las 18:37:21Hola, muy buen aporte este,pero como instalas en archivo .exe, por ejemplo el borland.exe....usas wine o lo haces desde la terminar o synaptic...!?
hasheado:
01 de Octubre de 2010 a las 19:31:32@Dario: los archivos .exe son ejecutables de Windows, para instalarlos en un Linux lo podes hacer como bien decis con Wine. Otra alternativa sería que tengas instalado un windows a traves de VirtualBox, saludos
DArio:
01 de Octubre de 2010 a las 21:56:10Si, ya lo hice con wine, tenia un problema al instalar el .exe, no creaba el disco C virtual que por defecto te crea el wine con el comando winecfg desde la terminal.... Saludos ... Solo que ahora no encuentro el lugar donde me instalo el Borland.....jeje...Saludos y gracias