###### tags: `UAX` `Estudiantes` # Seminario Introducción a Linux Tema 1: Introducción a la Bioinformática - Grado en Biotecnología (Universidad Alfonso X el Sabio) :woman: Autora: Laura Judith Marcos Zambrano ## Acceder al terminal: Puedes buscar en <<Aplicaciones>> o acceder a tarvés del teclado con la steclas **Ctrl+Alt+T** ![](https://i.imgur.com/dXXwrti.png) ## Comandos básicos: * El comando `echo` muestra en la terminal lo que escribes: ```bash=s echo "hola" ``` * Comando `pwd` Print Working Directory muestra el directorio actual ```bash=s pwd ``` * Comando `mkdir`Makes Directory: Crea una carpeta nueva ```bash=s mkdir laura ``` * Comando `cd` Changes Directory: Cambia de directorio. Movimiento entre carpetas (La tecla TAB ayuda a autocompletar) ```bash=s cd laura cd .. ``` * Comando `rm` Remove Directory: Elimina una carpeta. ```bash=s rmdir laura ``` > :warning: Una órden es una órden... El terminal no te pregunta si estas seguro de borrar una carpeta... Así que ¡cuidado! * comando `ls` List-directory Muestra el contenido del directorio ```bash=s ls # Lista completa ls -l # Ordenada por fecha de creación/edición ls -lt # Orden reverso order de creación/edición ls -ltr ``` :notebook: Siempre lee el manual de instrucciones, si no estas seguro de como actua un comando o quieres más información. ``` man ls man echo ``` * Crear un archivo vacío `touch` ```bash=s touch file1 ``` * Copiar un archivo o carpeta con el comando `cp`(Copy files) ```bash=s # Copiar archivo cp file1 file2 # Crear una carpeta nueva mkdir newFolder1 # Copiar newFolder1 newFolder2 cp -r newFolder1 newFolder2 ``` > :warning: -r significa recursive... es decir copia/mueve/borra la carpeta y todo el contenido. * Standard output el comando `>` permite guardar el output de cualquier comando en un archivo. ```bash=s # output en la pantalla ls -ltr # Output en un archivo de texto, ls -ltr > fileList.txt # El comando `nano` permite ver archivos de texto nano fileList.txt # Para que añada el output a un archivo existente sin sobreescribirlo ls -ltr >> fileList.txt ``` ## Actividad práctica Para esta actividad vamos a crear una carpeta compartida en nuestra máquina virtual y manejar archivos usando la línea de comandos. ### Crear carpeta compartida. 1. Crear la carpeta compartida en ambas máquinas. 1.1 Crear una carpeta nueva en nuestro escritorio de windows/Mac y llamarla `compartida` ![](https://i.imgur.com/X7GnTAe.png) :warning: Descargar los archivos: [secuencia1](https://drive.google.com/file/d/1rJLjfOmkzLUhVWbvGWrE3rBnoq7YgOgQ/view?usp=sharing) y [secuencia2](https://drive.google.com/file/d/1xiSq3M5M5xg-RhQK3cHG4TVY82ZV_L-q/view?usp=sharing) y guardalos en la carpeta de Windows/Mac. 1.2 Crear una carpeta con la línea de comandos en la máquina virtual en ubuntu y llamarla `compartida`. ```bash=1 mkdir compartida ``` 2. En la máquina virtual hacer click derecho en el icono de la carpeta abajo en la derecha <<Preferencias de Carpeta compartida>> ![](https://i.imgur.com/dAsez2e.jpg) 3. Hacer click en el botón <<Añadir nueva carpeta compartida>> ![](https://i.imgur.com/I0RV9NK.png) 4. Señalar la ruta de la carpeta: `/Escritorio/compartida` nombre de la carpeta: "compartida" y directorio en la máquina virtual `/home/$user/compartida` >La ruta de la carpeta creada la puedes ver con el comando `pwd` ![](https://i.imgur.com/ODLj7M8.png) 5. En el terminal de Ubuntu en la máquina virtual escribir la siguiente línea de código para que la carpeta esté montada con los permisos requeridos: ```bash=s sudo mount -t vboxsf compartida /home/$user/compartida ``` > Donde "compartida" es el nombre que le hemos dado a la carpeta en nuestro ordenador, y `/home/$user/compartida`corresponde al punto de montaje (El directorio en ubuntu) ## Ver archivos compartidos y usar algunos comandos para manipular secuencias ````bash=s # Ir a la carpeta compartida: cd compartida # Leer el archivo less sequence.fasta # Ver sólo las primeras diez líneas head sequence.fasta # Ver sólo las primeras 50 líneas head -n 50 sequence.fasta #Seleccionar una línea concreta de un fichero head -numLinea fichero | tail -1 #Seleccionar línea numero 43 del fichero sequence.fasta head -43 | tail -1 # Ver sólo las últimas diez líneas tail sequence.fasta # Ver varios archivos cat sequence.fasta sequence2.fasta # Unir varios archivos en un archivo final cat sequence.fasta sequence2.fasta > merged.fasta # Ver el resultado less merged.fasta # 'q' para salir # Contar las palabras con `wc` wc sequence.fasta # Ver el número de líneas de un archivo wc -l sequence.fasta # Bucar patrones específicos con el comando `grep` # Todas las líneas que contengan ">" grep ">" merged.fasta # Que cuente las coincidencias grep -c ">" merged.fasta # Invertido # Que empiece con "A"... grep "^A" merged.fasta #Si queremos que el contenido que estamos buscando se guarde en un archivo nuevo usar ">" grep ">" merged.fasta > resultado.txt