From 8398975dafe39c0c14090d04b0c53fa3561593e0 Mon Sep 17 00:00:00 2001 From: "Diego Alvarez S." Date: Tue, 1 Oct 2024 12:34:38 -0300 Subject: [PATCH] Mamba WIP --- document/sections/1_working_env.typ | 80 +++++++++++++++++++++-------- 1 file changed, 58 insertions(+), 22 deletions(-) diff --git a/document/sections/1_working_env.typ b/document/sections/1_working_env.typ index 2a1519a..fc76cc0 100644 --- a/document/sections/1_working_env.typ +++ b/document/sections/1_working_env.typ @@ -24,13 +24,12 @@ Los #cmd(``) suelen ser archivos de entrada y salida, mientras que l Para ejecutar herramientas desde la terminal, es necesario saber cómo encontrar y manipular archivos. A continuación, se presentan algunos de los comandos más básicos para interactuar con archivos en Linux. - #heading([#cmd(`ls`) -- Listar archivos y directorios], depth: 3, numbering: none) ```sh -ls # Muestra los archivos en el directorio actual -ls -l # Muestra detalles de los archivos -ls -a # Incluye archivos ocultos en la lista +ls # Muestra los archivos en el directorio actual +ls -l # Muestra detalles de los archivos +ls -a # Incluye archivos ocultos en la lista ``` #heading([#cmd(`pwd`) -- Imprimir el directorio actual], depth: 3, numbering: none) @@ -40,41 +39,41 @@ pwd #heading([#cmd(`cd`) -- Cambiar de directorio], depth: 3, numbering: none) ```sh -cd data # Entra a la carpeta indicada -cd .. # Sube un nivel en el árbol de directorios -cd ../.. # Sube dos niveles -cd ~ # Regresa al directorio de inicio +cd data # Entra a la carpeta indicada +cd .. # Sube un nivel en el árbol de directorios +cd ../.. # Sube dos niveles +cd ~ # Regresa al directorio de inicio ``` #heading([#cmd(`cp`) -- Copiar archivos o directorios], depth: 3, numbering: none) ```sh -cp config.yaml analisis/ # Copia el archivo a la ubicación destino -cp -r results results_bak # Copia una carpeta y su contenido +cp config.yaml analisis/ # Copia el archivo a la ubicación destino +cp -r results results_bak # Copia una carpeta y su contenido ``` #heading([#cmd(`mv`) -- Mover o renombrar archivos], depth: 3, numbering: none) ```sh -mv sample01.fastq data/ # Mueve el archivo al destino -mv config.test.txt config.txt # Cambia el nombre del archivo +mv sample01.fastq data/ # Mueve el archivo al destino +mv config.test.txt config.txt # Cambia el nombre del archivo ``` #heading([#cmd(`rm`) -- Eliminar archivos o directorios], depth: 3, numbering: none) ```sh -rm test.txt # Elimina el archivo -rm -r tmp # Elimina una carpeta y su contenido +rm test.txt # Elimina el archivo +rm -r tmp # Elimina una carpeta y su contenido ``` #heading([#cmd(`mkdir`) -- Crear directorios], depth: 3, numbering: none) ```sh -mkdir data # Crea un directorio en la ubicación actual -mkdir -p analysis/quality # Crea directorios anidados +mkdir data # Crea un directorio en la ubicación actual +mkdir -p analysis/quality # Crea directorios anidados ``` #heading([#cmd(`head`) / #cmd(`tail`) / #cmd(`less`) -- Visualizar el contenido de archivos], depth: 3, numbering: none) ```sh -less sequences.fasta # Permite desplazarse por el contenido -head -n 10 sequences.fasta # Muestra las primeras 10 líneas -tail -n 5 sequences.fasta # Muestra las últimas 5 líneas +less sequences.fasta # Permite desplazarse por el contenido +head -n 10 sequences.fasta # Muestra las primeras 10 líneas +tail -n 5 sequences.fasta # Muestra las últimas 5 líneas ``` == Tipos de Archivos Comunes al Procesar Datos Bioinformáticos @@ -99,7 +98,44 @@ tail -n 5 sequences.fasta # Muestra las últimas 5 líneas #tip[ Es común encontrar comprimir los archivos para ahorrar espacio de almacenamiento. Los archivos comprimidos tienen la extensión adicional #cmd(`.gz`). Para descomprimirlos, debes utilizar el comando #cmd(`gunzip`). ```sh - gunzip sequences.fastq.gz # Descomprime el archivo - head sequences.fastq # Visualiza las primeras líneas del archivo descomprimido + gunzip sequences.fastq.gz # Descomprime el archivo + head sequences.fastq # Visualiza las primeras líneas del archivo descomprimido ``` -] \ No newline at end of file +] + +== Gestión de Entorno de Trabajo con Mamba + +Mamba es un gestor de paquetes que facilita la instalación y gestión de paquetes de Python y R, además de posibilitar la instalación de herramientas bioinformáticas. +Estas herramientas y paquetes se instalan en "ambientes", que permiten aislar las dependencias de proyectos específicos y obtener un entorno de trabajo reproducible. Estos entornos pueden activarse y desactivarse según sea necesario. + +#heading([Crear ambientes], depth: 3, numbering: none) +```sh +mamba create -n qc # Crea un ambiente llamado 'qc' +mamba create -n analysis python=3.12 # Crea el ambiente `qc`, incluyendo Python 3.12 +``` + +#heading([Listar ambientes], depth: 3, numbering: none) +```sh +mamba env list +``` + +#heading([Activar y desactivar ambientes], depth: 3, numbering: none) +```sh +mamba activate qc # Activa el ambiente 'qc' +mamba deactivate # Desactiva el ambiente activo +``` + +#heading([Gestión de paquetes], depth: 3, numbering: none) +```sh +mamba install bioconda::samtools # Instala el paquete 'samtools' en el ambiente activo +mamba install bioconda::nanoq=0.9.0 # Instala una versión específica del paquete 'nanoq' +mamba update nanoq # Actualiza el paquete 'nanoq' +mamba remove samtools # Desinstala el paquete 'samtools' +mamba list # Lista los paquetes instalados en el ambiente activo +``` + +#heading([Exportar e importar ambientes], depth: 3, numbering: none) +```sh +mamba env export -n qc > qc.yaml # Exporta el ambiente 'qc' a un archivo YAML +mamba env create -f qc.yaml # Crea un ambiente a partir del archivo YAML +```