Manipulando archivos y directorios

3/21
Recursos

Aportes 360

Preguntas 183

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Regístrate o inicia sesión para participar.

¿Y para qué me sirve correrlo como interactivo?

Si te preguntaste esto es porque seguramente aún no te has dado cuenta de lo peligroso que es eliminar algo. Cuando tú eliminas algo desde la terminal, este archivo/carpeta se elimina… PARA SIEMPRE *chan, chan chan*.
.
Con esto me refiero a que ese archivo que eliminaste NO se va a mover al basurero, sino que directamente se va a eliminar, y la única forma de recuerarlo podría ser con algún programa que lea sector por sector de tu disco duro.
.
He visto por ahí cuando alguien pregunta por cómo eliminar una carpeta, el comando que más comparten es rm -rf carpeta sin saber exactamente qué es lo que hace, ahora ya saben que poner esa “f” como parámetro es muy peligroso. Con poner “r” basta, esto porque el borrado es recursivo básicamente recorrerá cada subcarperta/archivo y las irá borrando uno por uno.
.
#################################

DANGER ZONE

#################################
.
Ahora quiero explicarte por qué este comando es peligroso, tanto que puedes llegar a eliminar tu sistema operativo, NO CORRAS ESTE COMANDO POR NADA DEL MUNDO.
.
Imagina que quieres eliminar alguna carpeta de tu computadora usando la terminal, y por alguna razón decides usar una ruta absoluta:

rm -rf / home/tuUsuario/carpetaAEliminar/

Todo bien… ¿verdad? Bien, si ejecutaras este comando todo tu sistema operativo desaparecería, ¿por qué? quiero que te fijes cómo entre el / y la palabra home hay un espacio… ¿recuerdas qué significaba esa /? Ya lo vimos 👀… Así es, la carpeta raíz, la carpeta donde vive todo tu sistema operativo, y le estás diciendo que la elimine a la fuerza, ese espacio indica que la a eliminar dos carpetas, primero eliminará / y luego eliminará home/tuUsuario/carpetaAEliminar/.
.
El comando correcto que deberíamos usar es:

rm -rf /home/tuUsuario/carpetaAEliminar/

Aquí ese espacio no existe, por lo que todo iría bien, quiero que te fijes cómo con un pequeño error, puedes eliminar todo. Por esom siempre ten cuidado al usar este comando, y de preferencia… ¡Usa el modo interactivo! 😄

Hola. Si a alguno de ustedes no les funciona el comando ‘tree’ puede que no lo tengan instalado. Primero deben checar si lo tienen con el siguiente comando:

$  tree --version 

Si no les da ninguna versión de tree, entonces no lo tienen. Para instalarlo deben de escribir los siguientes comandos en la terminal como sudo:

$   sudo apt-get install tree

Después de la instalación, debemos ingresar la siguiente linea para asegurarnos que tenemos la ultima versión:

$   sudo apt-get update

Y ahora para checar que tienen instalado tree y la versión mas reciente que es la v1.8.0, hay que ingresar de nuevo:

$   tree --version

Espero le haya servido a alguien 😃

Mostrar información del directorio:
ls :Lista el contenido de los directorios (por defecto ordena la salida alfabéticamente).

Alguna de sus opciones (argumentos) más útiles son:

-a :todos los archivos, incluso los que comienzan con punto (.).

-A :Lista todos los ficheros en los directorios, excepto los que comienzan con punto . (.) y los que comienzan con doble punto (…).

-F :indica tipo: / directorio, * ejecutable, @ enlace simbólico.

-h :indicará el tamaño en KB, MB, etc.

-l :listado en formato largo (o detallado).

-S :clasifica los contenidos de los directorios por tamaños, con los ficheros más grandes en primer lugar.

-r :invierte el orden de la salida.

-R :Lista recursivamente los subdirectorios encontrados.

-t :ordenar por fecha de última modificación.

-u :ordenar por fecha de último acceso.

-x :presenta los ficheros por columnas.

-i :precede la salida con el número de i-node

ejemplos:

ls -lt :muestra los archivos del mas actual al mas antiguo

ls -ltr :muestra los archivos del mas antiguo al mas actual

ls -lh :muestra de forma mas legible el tamaño de los archivos

ls -lhS :muestra de forma ordenada los archivos por su tamaño

ls -la :muestra los atributos de los archivos y los archivos ocultos

Manipular archivos

  • mkdir <nombre_directorio>: crea un directorio también puedes añadir la ruta

  • touch: crea un archivo, si no indicas la extension por defecto sera .txt

  • cp <archivo> <ruta>: nos permite duplicar archivos, para duplicar directorios con su contenido añadir el modificador -r que indica recursividad

  • mv <archivo> <ruta> : mover un archivo hacia un directorio. También se usa para renombrar archivos mv <archivo> <nuevo nombre> no olvidar la extension del archivo
    Para mover directorios añadir el modificador -r

  • rm: elimina archivos, con -i indica un mensaje de confirmación en consola para tener mas control sobre la elección de que archivos queremos eliminar. Para eliminar un directorio añadir -r y -ri para usar el mensaje de confirmación

Un consejo para mayor seguridad y siempre ejecutar el comando iterativo de rm es agregarlo como alias a .bashrc

alias rm = 'rm -i'

Reinicias tu terminal y al hacer rm siempre será en modo iterativo.

Notas 😄
Manipulando archivos y directorios.

  • Todo lo que hacemos normalmente en una interfaz gráfica, lo podemos hacer en la terminal 👀.
  • ls: Algunas variantes:
    • ls -la: Nos muestra todo, incluso los ocultos.
    • ls -lS: Los ordena por tamaño.
    • ls -lr: Los muestra en reversa.
  • tree: Nos muestra todo, lo que hay dentro de cada carpeta, en forma de arbol 🌲. Podemos elegir el nivel de profundidad con tree -L <numero de niveles>
  • mkdir <nombre de directorio>: Para crear un directorio nuevo 📁. No es buena idea en general poner espacios en el nombre de los directorios. Si lo quieres hacer, usa comillas "Nombre con espacios".
  • touch <nombre de archivo>: Para crear archivos vacíos. Puedes crear varios con un solo comando 📄.
  • cp <archivo a copiar> <nuevo archivo>: Para copiar un archivo. Si no se pone una ruta en el nombre del nuevo, se va a copiar en el directorio donde estés 🖨️.
  • mv <archivo> <archivo con nueva ruta>: Para mover archivos a otra ruta. También te sirve para renombrarlos 💫, funciona con directorios y con archivos.
  • rm <archivo>: Elimina archivos. Hay una opción muy útil que es rm -i <archivo>(interactivo) que te pregunta explícitamente si en verdad si quiere borrarlo 😟. Funciona de manera directa para directorios vacíos, pero si hay archivos dentro, debes usar la opción recursiva rm -r <directorio>, que lo que hace es ir borrando todo lo que hay dentro y al final borra el directorio 🔫. Te va preguntando por cada cosa.
  • Ojo: Lo que borras desde la terminal se borra para siempre 😟.

Corre el comando tree en la carpeta home

Ejemplos y ejercicios para Manipular archivos como un PRO:
https://linuxjourney.com/lesson/print-working-directory-pwd-command
![](

Para desplegar el contenido de un folder en específico con tree puedes hacer el siguiente comando:

$ tree folderName

✨ Los comandos que se dan a conocer son esenciales para gestionar archivos y directorios de nuestro computador.

Si usas “Windows Subsystem for Linux” sobre windows y la instrucción “tree” no te funciona, ejecuta las siguientes instrucciones:
1-Actualiza el listado de repositorios de linux con el comando “sudo apt update”.
2- Actualiza el sistema con “sudo apt upgrade”.
3- instala la instrucción “tree” con el comando “sudo apt install tree”.

Apuntes

Comandos

  • ls -la: Muestra todos los archivos, incluso archivos ocultos

  • ls -lS: Muestra los archivos ordenados por tamaños

  • ls -lr: Muestra los archivos en orden descente alphabeticamente

  • tree: Muestra todos los archivos en forma de arbol

  • tree -L 2: Muestra los archivos en forma de árbol, especificamente, dos niveles.

  • mkdir: Permite crear un directorio. Ejemplo: mkdir miDirectorio

    mkdir dir1 dir2 dir 3: ****Permite crear varios directorios

  • touch: Crear un archivo: Ejemplo: touch miArchivo

    touch file1 file2 file2: Permite crear varios archivos

  • cp: Permite copiar archivos. Ejemplo: cp file1 file_bk

  • mv: Permite mover un archivo. Ejemplo: mv file_bk …

    mv file_bk fileCopy: ****Te permite renombrar un archivo.

  • rm: Permite borrar un archivo, ejemplo: rm miArchivo

    rm -i miArchivo: Permite borrar un archivo de forma interactiva

  • rm -r: Borra de manera recursiva, ejemplo: rm -r dir1

    rm -ri dir1: Borra de manera recursiva e interactiva

  • rm -rf: Borra de manera recursiva y forzada

Diferencia entre file y document

💡Un archivo es una colección de información determinada por su contenido. Un document es un archivo de un determinado tipo creado por una aplicación en particular.

Genial me esta gustando mas que la version pasada
Tiene mejor forma de ensenar

Si el comando “tree” no funciona es porque no lo tiene instalado, para el caso de ubuntu o alganas de sus distrios deribadas pueden usar el comando:

sudo apt install tree

Resumen de la clase

Clase 3 – Manipulando archivos y directorios

¿Para qué nos sirve el comando ls -al?

  • Lista nuestros archivos y directorios incluidos los ocultos.

¿Cómo sabemos que un archivo o directorio es oculto?

  • Cuando tiene un punto (.) antes del nombre de dicho archivo o directorio:
    • .nombre-directorio o .nombre-archivo

¿Para qué nos sirve el comando ls -lS?
o Nos lista nuestros archivos y directorios del más pesado al más liviano.


¿Para qué sirve el comando ls -lr?

  • Para listar nuestros archivos y directorios de manera alfabética, pero de la Z a la A.

¿Para qué nos sirve el comando tree?

  • Nos despliega todos nuestros directorios con su contenido a manera de árbol.

¿En caso de no tener instalado el comando tree como lo puedo instalar?

  • $ sudo pacman -S tree # Arch Linux
  • $yum install tree -y #Centos y Fedora
  • $ sudo apt-get install tree # Ubuntu
  • $ sudo aptitude install tree # Debian
  • Omitir el numeral y el nombre de la distribución.

¿Para qué nos sirve el comando tree -L 2?

  • Esto nos permite desplegar nuestros directorios con su contenido, pero únicamente profundizando en 2 niveles.

¿Para qué nos sirve el comando mkdir?

  • Para crear directorios. El nombre del directorio va seguido del comando:
    • mkdir dir1

¿Se recomienda que creemos directorios en el que su nombre tenga espacios?

  • No.

¿Cómo podemos crear directorios que en su nombre contenga espacios?

  • Usamos el comando mkdir y el nombre de este lo encerramos en comillas dobles.

¿Por qué no se recomienda que creemos directorio que tengan en su nombre espacios?

  • Porque no podemos manipularnos de manera fácil.

¿Cómo podemos crear un archivo?

  • Con el comando touch y el nombre del archivo.

¿podemos crear múltiples archivos y directorios con una sola instrucción?

  • Si.

¿Para qué nos sirve el comando cp?

  • Para copiar archivos.

¿Cómo podemos usar el comando cp?

  • Luego de que escribamos el comando debemos escribir el nombre del archivo que queremos copiar y luego el nombre que tendrá el nuevo archivo copia:
    • cp archivo-original archivo-copia

¿Qué pasa si no escribimos una ruta cuando copiamos un archivo?

  • La copia se creará en el directorio en el que nos encontramos actualmente.

¿Para qué nos sirve el comando mv?
o Para mover archivos y directorios.


¿Cómo funciona el comando mv?

  • Luego de que escribamos el comando mv debemos escribir el nombre del directorio o archivo que queremos mover y seguido la ruta al lugar en donde queremos mover dicho archivo o directorio:
    • mv archivo-a-mover destino-a-mover

¿podemos renombrar archivos y directorios con el comando mv?

  • Escribiendo el comando mv seguido el archivo o directorio que queremos renombrar y seguido el nuevo nombre.

¿Para qué nos sirve el comando rm?

  • Para eliminar archivos.

¿Cómo funciona el comando rm?

  • Escribimos el comando rm seguido de este escribimos el nombre del archivo que queremos eliminar:
    • rm archivo-a-eliminar

¿Para qué nos sirve el comando rm -i archivo-a-eliminar?

  • Este comando nos permite eliminar archivos, pero agregándole una opción interactiva. Esta función hará que la Shell nos pregunte si de verdad queremos eliminar el archivo.

¿Cómo podemos confirmar la eliminación de un archivo con el comando rm -i archicho-a-eliminar?

  • Cuando se nos pregunte debemos escribir la letra “y”.

¿el comando rm funciona para eliminar directorios con archivos?

  • No.

¿Cómo podemos eliminar directorios que tengan elementos dentro de él?

  • Lo hacemos con el comando rm -r nombre-directorio.

¿Para qué nos sirve el comando rm -rf nombre-directorio?

  • Para borrar un directorio por la fuerza.
  • ls -al, muestra todos los archivos incluso los ocultos (son todos los que tienen un punto(.) al inicio).

  • ls -lS, muestra los archivos de manera ordenada por su tamaño de mayor a menor.

  • ls -lr, los muestra de manera ordenada pero de la Z a la A.

  • ls dir1, para listar todos los archivos dentro de un directorio sin entrar a el.

  • tree, para desplegar todo los archivos como un árbol.
    ○ tree -L n, muestra los archivos por niveles. Con n=1 es lo mismo que un ls.

  • mkdir nombre_directorio, para crear un directorio. Nota: para crear con espacios, se coloca entre comillas("") pero se hace mas difícil de manipular.

  • touch nombre_archivo, para crear archivos.
    ○ Tanto para directorios como para archivos podemos crear múltiples directorios archivos. Ej: mkdir dir1 dir2 dir3 (crear tres directorios al mismo tiempo) o touch archivo1.txt archivo2.txt archivo3.txt (crea tres archivos de tipo .txt)

  • cp file1 ruta_archivo_copiar, para copiar un archivo.

  • mv file_bk …, para mover el archivo a otro directorio.
    ○ mv file_bk fileCopy, para renombrar archivos, también funciona para los directorios.

  • rm fileCopy, para borrar un archivo.
    ○ rm -i archivo, para que salte un pregunta diciendo que si ¿queremos borrar el archivo seleccionado? Esta se responde con y(yes=si) para borrarlo y con n(no) para no hacerlo.
    ○ rm -ri directorio, para borrar los archivos dentro de un directorio y al final el directorio si mismo pero preguntándonos por cada uno de los archivos.

Me surgió la duda si cp permitía copiar carpetas también.
Y no, no lo permite.
Les dejo la prueba.

Recuerden no usar rm -rf para eliminar cosas :p

Para los que tienen problemas con el comando “tree” y les sale este mensaje:
"Command ‘tree’ not found, but can be installed with:
sudo apt install tree"
Ejecuten ese último comando que les sale en el mensaje “sudo apt install tree”.
Si después de eso les sale este otro mensaje de error:
"[email protected]:~$ sudo apt-get install tree
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package tree"
Ejecuten este otro comando: "sudo apt update"
Y después vuelvan a ejecutar: "sudo apt install tree"
Eso me sirvió para solucionar mi problema, espero que también les ayude a ustedes.

En la consola de Mac, para instalar tree el comando es:
brew install tree

Crear archivos en forma dinamicamente

x=1; while [ $x -le 10 ]; do touch file$((x++)).txt; done

Estoy usando WSL para Windows 10 y el comando tree no me funcionaba

Primero puse:

sudo apt update

luego

sudo apt install tree

y funcionó

Chicos, también les tocó instalar tree? pensé que no era necesario 😦

Comparto mis notas sobre manipular archivos y directorios en la terminal

  • Mostar

  • Ordenar

  • Desplegar en árbol

  • Crear directorios

  • Crear archivos

  • Copiar

  • Mover

  • Borrar

Comandos básicos

😄 🍎
MANIPULANDO ARCHIVOS Y DIRECTORIOS

📘🖊

Crear directorios o carpetas

mkdir

Crear archivos

touch

Copiar un archivo

cp file1 file1_copy

Mover en archivo al directorio anterior

mv fileA . .

Renombrar un archivo

mv fileA fileRenombrado:

Mover el un directorio dentro de otro

mv dir1 dir2

Retornar atrás

cd . .

Remover un archivo

rm -i

Remover un directorio

rm -r

En la terminal de Git Bash pueden lanzar el Tree con

<cmd //c tree> 

$ tree # Muestra directorios y ficheros
$ tree -d # Muestra sólo directorios
$ tree -L X # Muestra hasta X directorios de profundidad
$ tree -f # Muestra los archivos con su respectiva ruta
$ tree -a # Muestra todos los archivos, incluidos los ocultos.
$ tree / # Muestra un árbol de todo nuestro sistema
$ tree -ugh # Muestra los ficheros con su respectivo propietario (-u),
el grupo (-g) y el tamaño de cada archivo (-h)
$ tree -H . -o tudirectorio.html # Exporta tu árbol de directorio a un archivo

a pesar de que esta clase me tomo como 3 días por culpa de mi computadora, me encanto saber que lo logre y de que aprendí a moverme un poco por la terminal. ❤️

Si tienes macOS posiblemente no tengas el comando tree instalado. Si pasaste el prework puedes instalarlo con homebrew y el comando que debes usar es:

brew install tree

Si eres de los afortunados que tienen una M1 dependiendo de cómo hayas hecho la instalación podrías necesitar el siguiente comando:

arch -arm64 brew install tree

Hola!

Con todos los comandos podemos comprender mejor las opciones que tenemos de esta manera:

nombre del comando + --help

Saludos

Basico pero potente

Algunos otros ejemplos de tree

tree -L 2 -f -pug -h -D
tree -L 2 -f --duh

Comandos Esenciales y sus respectivos parámetros
ls: Lista los archivos
Atributos:
• -l Formato de lista
• -h Muestra el peso del archivo
• -a Muestra absolutamente todos los archivos incluyendo ocultos
• -S Ordena los archivos por tamaño
• -r Ordena los archivos en reversa

file: Muestra una descripción detallada de un archivo
pwd: Muestra la ruta en la que te encuentras

tree: Muestra un árbol de los archivos de una ruta
Atributos:
• -L (1, 2, 3 , 4 etc) Solo muestra los niveles que se le especifique

mkdir: Crea un directorio (Se puede crear múltiples simplemente colocando uno tras otro separados por un espacio )
touch: Crea un archivo (Se puede crear múltiples simplemente colocando uno tras otro separados por un espacio )
cp: Copia un archivo
mv: Mueve un archivo

rm: Borra un archivo
Atributos:
• -r Permite se borren directorios
• -f Fuerza una operación a realizarse

Ctrl + l: Borra lo que hay en pantalla sus derivados serian (clear, cls, clean)
Sudo apt install programa: Nos ayuda a instalar un software

Algunas opciones del comando “ls” es:

ls -a

Nos mostrara todos los archivos ocultos.

ls -lS

Nos ordenara todos los documentos por tamano.

ls -lr

Que nos ordena nuestros archivos y directorios al reves.

tree

Este comando nos deja ver todos los directorios como si fuera un directorio. Podemos darle la opcion -L que es de “Niveles” y le podemos asignar la cantidad de niveles que queremos que el comando profundice.

mkdir nombre

Este comando nos sirve para crear un directo, si queremos agregar espacios al nombre de la carpeta tenemos que poner el nombre del directorio en comillas.

touch nombre

Este comando es para crear archivos o ficheros. Si queremos crear varios ficheros o directorios al mismo tiempo, solo tenemos que escribir el mismo comando pero con los nombres por separado.

cp Original Nuevo

Este comando es para copiar un archivo y crear uno nuevo con los mismos datos.

mv archivo rutaQueQueremos

Es para mover un archivo a una ruta especifica que queramos. Igual sirve para cambiar el nombre de los ficheros, poniendo el nombre nuevo en vez de la ruta.

rm nombreArchivo

Este es el comando peligroso, es para eliminar ficheros. Si queremos que nos haga una pregunta de confirmacion, tenemos que utilizar la opcion -i. Este comando no nos deja eliminar directorios directamente a menos que esten vacios, pero podemos hacerlo con las opciones “-r” que hace que el comando sea recursivo y los ira borrando uno por uno. Hay una opcion muy peligrosa que forza y borra todo, que es “-f”.

  • ls -la muestra TODOS los archivos
  • ls -lS ordena los documentos del por tamaño de peso, el más pesado va arriba de todos
  • ls -lr ordena de menos pesado a más pesado
  • mkdir nombreCarpeta crea una carpeta con su nombre
  • touch nombreArchivo crea un archivo
  • cp nombreArchivo nombreNuevo copia un archivo y crea otro
  • mv archivo directorio mueve un archivo hacía el directorio indicado
  • mv nombreArchivo nombreArchivoNuevo reemplaza el nombre de un archivo por otro ``nombre
  • rm archivo COMANDO PELIGROSO borra totalmente de la existencia a un archivo
  • rm -i archivo Aquí nos hará una pregunta para confirmar si en verdad queremos eliminar un archivo
  • rm -ri Elimina directorio con sus archivos internos
  • rm -rf COMANDO SUPER PELIGROSO va a borrar TODO sin importar nada, NO SE RECOMIENDA USARLO

por error descubri que el comando “la” nos muestra directamente los archivos ocultos jajajajja

ls -la --> Te muestra todos los archivos, incluyendo los ocultos (los que tengan un puntos antes)
EJM “.blablabla”

ls -lS (long size) --> mostrará mis archivos con toda su información ordenados por tamaño

ls -lSh (long size human) --> Nos muestra los archivos con toda su información, ordenados por tamaño en lenguaje humano

ls -lr (long reverse) --> Me muestra la reversa de ls

tree --> Nos mostrara TODO en forma de árbol

tree -L(nivel de profundidad) --> Solo nos muestra los niveles que nosotros queramos
EJM: tree -L2 (aquí serían solo 2 niveles)

mkdir (make directory) --> Crear un directorio, pero no poner espacios
touch --> Crear un archivo
Tanto para crear directorios y archivos puedes crear varios al mismo tiempo

cp (copy) --> Copiar
EJM: cp file1 file_bk (Esto copia el archivo en el mismo directorio)

mv (move) --> Para mover un archivo
EJM: mv file_bk … (con esto lo movemos al directorio anterior)

mv file_bk fileCopy (Puedes usar esto para renombrar un archivo)

rm (remove)  para borrar un archivo
rm -r --> Para borrar directorios
rm -ri --> Borramos directorio pero de forma interactiva

HACERLO INTERACTIVO
Rm -i --> Esto te muestra un “Estás seguro que lo quieres eliminar?”

Yo creé un alias donde cada vez que haga rm, siempre sea rm -i, sin importar lo que esté borrando porque más vale prevenir que lamentar

Listando elementos:
ls -la Lista todos los elementos del directorio, incluidos los ocultos.
ls -lS Lista todos los elementos iniciando por los más pesados.
ls -lr Lista todos los elementos de forma inversa.
tree Despliega todos nuestros directorios como un árbol.
tree -L {#} Despliega los elementos que se encuentren en el nivel indicado.

Manipulación de elementos
mkdir {folder} Crea un nuevo directorio con el nombre indicado.
touch {file} Crea un nuevo archivo con el nombre indicado.
cp {original} {copia} Copia un archivo.
mv {file} {path} Mueve el archivo a la ubicación deseada.
mv {name} {new_name} Renombra el archivo o directorio.
rm {file} Elimina el archivo indicado.
rm -i {file} Pide confirmación antes de eliminar el archivo.
rm -r {folder} Elimina el directorio indicado.

Si no tienes el comando “tree” debes ejecutar:

sudo apt install tree

Si te sale el error: “E: Unable to locate package tree” realiza:

sudo apt update

Verifica la version con:

tree -version

Hola! Comparto unos comandos con su respectiva explicación…
Éxitos!!!

Hola gente 😊 les quería comentar algo, hace rato tenia el problema con el comando tree, primero estaba en el cmder y podía ejecutar el comando tree pero no la opción tree -L 1 (level 1). Aquí descubrí que hay comandos que no pueden ejecutar desde el cmder, utilicen la terminal de Windows con Ubunto que se supone instalaron en el curso de prework ( 🧐 aja te agarré, ve a hacer el curso de prework, es broma jaja). Una vez en la terminal de Windows no pude ejecutar nada tampoco porque me indicaba que no tenía el paquete tree instalado, procedo a instalarlo usando:

<sudo apt install tree> 

y me marca el siguiente error 😥:

Después de averiguar en internet mi problema era que primero ejecutar esta descarga:

<sudo apt update> 

esto ocurre porque el administrador de paquetes apt busca en el caché apt para obtener el paquete tree y la información de versión de nuestro ubuntu, y luego ahí lo descarga de sus repositorios a través de la red. Si el paquete no está en este caché, su sistema no podrá instalarlo. Cuando tienes un sistema Ubuntu recién instalado, el caché está vacío. Es por eso que debes ejecutar el comando de actualización apt.

Una vez instalado no debería haber problema alguno para instalar el paquete tree. Suerte gente, sigan aprendiendo 🤓

Para MacOS Big Sour esto funciona
brew install tree

Manipulando archivos
ls -la muestra todos los archivos incluyendo los ocultos
ls -lS muestra los archivos ordenando por tamaño.
ls -lr listar los archivos ordenados de forma descendente por nombre.
tree -L 2 => muestra el listado de archivos en forma de árbol profundizando en dos niveles.
(nota: si no le sirve el comando en la terminal puede instalarlo atraves del siguiente comando: Mac-> brew install tree)
mkdir dir1 => crea el directorio dir1 (carpeta)
mkdir dir1 dir2 => crea el directorio dir1 y dir2 (carpetas)
touch marchivo => crea un archivo.
cp file1 file_bk => copiai el archivo file1 colocándole el nombre file_bk (en el mismo directorio)
mv file1 … => mueve el archivo file1 al directorio anterior.
mv file1 file_bk => renombre el archivo file1 a file_bk
rm. file_bk => borra el archivo file_bk
rm -r dir1 => borra el dir1 juntamente con sus archivos.

utilidad del interactivo - i
la terminal preguntará: “¿[email protected] que quieres borrar esto?”

  • así tendrás control de lo que estás borrando

Que bueno que Platzi halla renovado este curso. Después de esta clase me doy cuenta que vale la pena repetirlo.

Ahora si espero convertirme en un super usuario del Sistema Operativo.

No en todas las distribuciones Linux viene instalado por defecto el comando tree: En Manjaro hay que instalarlo https://snapcraft.io/install/tree/manjaro

3. Manipulando archivos y directorios

Comandos que aprendimos en esta clase:

  1. ls -a: Lista los archivos incluido los ocultos.
  2. ls -ls: Lista los archivos mostrando los tamaños.
  3. ls -lr: Lista los archivos, pero en orden alfabético inverso.
  4. tree: Mostrar todos los directorios pero como un “árbol”,

Y aquí hago paréntesis, si así como a mí no les funcionó es porque no lo tienen instalado (yo uso zsh), así que simplemente lo instalan 😃.

sudo apt install tree

Luego de instalarlo ya podrán usarlo.

  1. tree -L 1: Mostrar todos los directorios pero como un “árbol” y con un solo nivel, se puede cambiar la cantidad de niveles.

  2. mkdir: Crear un directorio, viene del inglés make directory.

  3. touch index.html: Con este comando crearías un archivo llamado index con extensión html. Este comando permite crear varios archivos en una sola línea, solo separando con espacios de la siguiente manera (en este comando creo que archivos en una sola línea).

touch index.html file1.txt file2 style.css
  1. mv: El nombre de este comando viene del inglés move, para usarlo primero debes usar mv, luego el archivo que desees mover y finalmente el destino, de la siguiente manera:
mv foto.png ..

También permite renombar archivos, pones primero el archivo original, y luego pones el nuevo nombre de archivo:

mv textv1.txt texto1.txt
  1. rm: Borra un archivo, este es un ejemplo:
rm myfile.txt
  1. rm -i: Borra un archivo, de manera interactiva, es decir pregunta antes de borrar, este es un ejemplo:
rm -i myfile.txt
  1. rm -ri: Borra un directorio y archivos de manera recursiva e interactiva, ejemplo
rm -ri myfile.txt

Nota, cuidado con hacer rm -rf, esto puede traer efectos inesperados.

Utilizo como Sistema Operativo Ubuntu, y parece ser que el comando tree no viene instalado por defecto, sin embargo se puede instalar muy facilmente con el siguiente comando:

sudo apt install tree

Consejo:
El comando tree al ejecutar se mostraba un mensaje que no lo encontraba, lo que hice fue seguir el mismo consejo que te da la terminal

apt install tree

Les comparto mis apuntes, espero que les sirva. 😄

ls

ls -la

l: es de long.

Este comando muestra todos los archivos del directorio incluyendo los archivos ocultos.

Los archivos ocultos son aquellos que tienen un . como “prefijo”.

ls -lS

S: es de size o tamaño.

Nos va a mostrar y ordenar nuestros archivos y directorios por tamaños de forma decreciente.

ls -lr

La r lo que hace es que se liste el contenido del directorio cuyo orden es inverso al alfabeto, va de la Z a la A, y ocurre lo mismo con los números lo muestra de forma decreciente.

tree

$ tree directorio

Lo va a desplegar todos nuestros directorios y lo va a presentar como si fuese un árbol.

La -L es de niveles y luego ponemos hasta que nivel queremos que profundice.

$ tree -L profundidas-de-niveles directorios

Si no colocamos nada en directorios nos muestra el contenido del directorio en el que estamos parados.

mkdir o make directory

Sirve para poder crear directorios.

$ mkdir directorio-nuevo

Crear varios directorios a la vez

Para esto simplemente tenemos que separar los directorios con espacios.

$ mkdir directorio1 directorio2 directorio3 directorion

touch

Lo usamos para crear un archivo.

$ touch nombre-del-archivo.extensión

Crear varios archivos a la vez

Para esto simplemente tenemos que separar los archivos con espacios.

$ touch file1.extension file2.extension file3.extension filen.extension

cp o copy

Sirve para copiar archivos o directorios.

$ cp archivo directorio-destino

En caso de que no exista el directorio se va a crear uno con el nombre que hemos colocado.

mv o move

Este comando lo usamos para mover archivos o directorios.

$ mv archivo-o-directorio directorio-destino

Renombrar archivos

Con el comando mv podemos renombrar directorios o archivos, e incluso cambiar las extensiones de los archivos.

$ mv antiguo-nombre nuevo-nombre

rm o Remove

A este comando hay que tomarlo con pinzas, podemos borrar cosas importantes de nuestro sistema operativo y dejarlo inutilizable.

Este comando lo usamos para borrar archivos.

rm archivo

Al agregarle -i, nos da una opción interactiva para poder borrar un archivo.

rm -i archivo

Eliminar un directorio

Para esto vamos a utilizar el modificador -r de recursive o recursivo, a este también le podemos agragar una f que es de force, hay que usarlo con cuidado ya que elimina todo sin importar nada.

$ rm -r directorio  # Borra todo sin preguntar nada.
$ rm -rf directorio # Borra todo a la fuerza. No es recomendable usarla.
$ rm -ri directorio # Para tener más control al momento de borrar.

Si el comando tree no esta instalado lo pueden instalar con el siguiente comando sudo apt install tree
Puede que les pida clave

Si al instalar tree con el comando

sudo apt install tree

Aparece un error como

E: Unable to locate package tree

Lo que debemos hacer es ejecutar el comando

sudo apt update

Esto lo que hará es actualizar el repositorio de extensiones de linux.
Después de actualizar, podremos volver a ejecutar el comando de instalación de tree
En caso de dudas pueden visitar esta página

No conocía el -i, creo que al volver a preguntarnos, nos ahorra una mala pasada. ¡Genial!

Una forma de saber los parametros de ls es escribir:

ls --help

Nos devolvería todos los parámetros disponibles 😃

El comando tree no estaba instalado en Ubuntu 20.04 (WSL), nada que un sudo apt install tree no lo solucione.

Excelente clase, este curso me gusta mucho 😄.

Si estan tratando de correr el comando tree en MacOS pero no les funciona, traten de instalarlo primero, usando el comando

brew install tree

Despues para verificar que este instalado

tree --version

Clase 3
Manipulando archivos y directorios
https://platzi.com/clases/2292-terminal/37344-manipulando-archivos-y-directorios/

mkdir (directorio): Sirve para crear directorios. Si usamos “” podemos crear directorios con nombres que usen espacios “mi directorio”; aunque no se recomienda.
También se pueden crear múltiples directorios de una vez mkdir dir1 dir2 dir3 (intro)

touch (archivo): Crea archivos por defecto de texto. Aunque podemos ponerle la extensión también. Además, tiene la opción de crear varios archivos de una vez: touch file1 file2 file3 (intro)

cp (archivo a copiar/ ruta): Copia archivos. Si quiero copiar un archivo a la misma carpate donde estoy, obviamente debo poner un nuevo nombre a ese archivo.
Ej: Copio el archivo file1 al mismo directorio pero lo nombro file1_bk:
sintaxis: cp file1 file_bk (intro)

mv(archivo a mover/ ruta de destino): Mueve archivos. En el ejemplo anterior, quiero mover el archivo file1_bk al directorio anterior:
sintaxis: mv file_bk . . (intro)
Este comnado también sirve para renombrar un archivo:
sintaxis: mv file_bk fileCopy (intro)

rm (archivo): Remueve un archivo. Tiene además la opción -i, que sirve para confirmar el borrado del archivo.
Sintaxis: rm fileCopy (intro)
sintaxis: rm -i fileCopy (intro)
mensaje → rm: remove regular empty file ‘fileCopy’? y o n (intro)

rm -r (directorio) Remueve directorios.
La opción -rf, fuerza el borrado sin tomar en cuenta su contenido.
La opción rm -i pide confirmación de borrado.
mensaje: → rm: descend into directory ‘nombre del directorio’? y o n (int)
mensaje → rm: remove regular empty file ‘directorio y contenidos’ y o n (int)
mensaje → rm: remove directory ‘directorio’? y o n (int)

hola a todos, hay un aporte que les quiero hacer a todos, y es que instalen un software de virtualizacion (virtualbox por ejemplo) ya que aquí pueden practicar todos estos comandos directamente en el sistema operativo linux, esto lo recomiendo ya que pues soy nuevo y eh visto muchos comentarios de personas nuevas que tienen dificultades para ejecutar estos comandos ya que no cuentan con linux totalmente y esto podría afectar un poco la curva de aprendizaje.

yo, por ejemplo utilizo virtualbox y es muy sencilla su instalación, y con un par de vídeos de youtube podrán correr el sistema operativo que deseen (no solo linux).

Si no les funciona el comando tree , seguramente es porque no lo tienen instalado, para instalar utiliza los siguientes comandos

sudo apt install tree

Mis notas de la clase (practicando ingles):

	• Tree - recursive directory listing
		○ -L [number]: Levels - prints directories in a specific folder level
	• Mkdir [dir1 dir2 ..] - Make directory
	• Touch - updates the timestamps - if the file doesn't exists creates it
	• Cp [file] [directory] - copy files or directories 
		○ -r : recursive - this argument is used to copy directories
	• Mv - move  - it can also be used to rename a file 
	• Rm - remove a file
		○ -i : interactive
		○ -r : recursive - to remove a directory
		○ -f : force remove

Si crean un directorio y quieren que el nombre del directorio tenga espacios es importante poner comillas (dobles o simples), si no lo hacen crearan un directorio (carpeta) por cada palabra que escriban:

Para aclarar, algo. el comando “ls -a” es para mostrar todos los archivos. El comando “ls -la” es para mostrar la Lista de archivos. LA diferencia es que el primero sólo te muestra los archivos sin información, el segundo te muestra una lista con sus permisos, owners, fecha de creación, etc.

Por si no tienen el comando tree ingresen los siguientes comandos:
sudo apt-get install tree
apt-get install tree

Que miedo utilizar rm

Si por casualidad usas git bash en windows 7 y al ejecutar tree dice que no encuentra ese comando, puede hacer estos pasos:

  • Descargar tree.exe en está página: gnuwin32 .sourceforge .net / packages / tree.htm

  • Luego extraje el archivo tree.exe del archivo que descargaste

  • Ir a la ubicaión de git: C:\Program Files\Git\usr\bin y pegar ese el archivo tree.exe y funciona.

check el comando:

history
Comando Función
ls -l listar archivos con toda la información
ls -a listar archivos ocultos
ls -lS listar archivos ordenados por tamaño a-z
ls -lr listar archivos ordenados por tamaño z-a
tree desplegar todos los directorios como un árbol
mkdir (make directory) crear un directorio
touch crear un archivo
file1 file2 file3 touch1 touch2 touch3 crear varios archivos al mismo tiempo
cp archivoacopiar nombredearchivonuevo copiar un archivo
mv mover un archivo
rm borrar un archivo

Si están en wsl2 (windows), el OS trae el comando como

tree.com

Siento el poder de la terminal XD

Para borrar directorios vacios existe la opción de:

rmdir Dir1

Si en mac no tienes el comando tree, puedes instalarlo con brew install tree

que lastima que no tengan un curso para usuerios de win instale el WSL no funciono muchas gracias …

si estas trabajando en wls
tienes que instalar el tree con sudo apt install tree

  • ls -la (muestra todos los archivos)
  • ls -lS (Ordena los directorios o documentos por tamaño)
  • ls -lsh (Muestra los archivos y directorios por tamaño)
  • ls -lr (Muestra los archivos o directorios de forma alfabética)
  • tree (Muestra los directorios y archivos que contienen como un árbol)
  • tree -L# (Muestra los directorios y archivos de estos como un árbol con la profundidad especificada)
    -mkdir (Para crear un directorio)
  • touch (Para crear un archivo)
  • mv (mover un archivo)
  • rm (Para eliminar un archivo)
  • rm -ri (Para remover un directorio y confirmar si eliminar lo que tiene dentro)

por si alguien usa WSL y al hacer tree no les reconoce el comando solo deben instalarlos con sudo apt install tree y funciona

Este es un simulador de terminal de linux en linea

https://bellard.org/jslinux/vm.html?url=alpine-x86.cfg&mem=192

ls: Listado.
        -lr: lista al reves (list reverse).
    
    tree: Muestra nuestro directorio como si fuera un arbol.
        (SUdo apt install tree)
        -L [Long]: La profundidad de la ramas dependen de long.

    mkdir: Crea directorio.
        [nombreArchivo]
        dir1 dir2 dir3 --> Se pueden crear varios a la vez.

    touch: Crea archivo.
        [nombreArchivo]
        file1 file2 file3 --> Se pueden crear varios a la vez.

    cp: copia un archivo.
        [nombreArchivo] [nombreCopia]

    mv: Mover un archivo.
        [NombreArchivo][./ruta]
        [nombreArchivo].. --> Mueve a directorio anterior.
        [nombreArchivo][nombreNuevo] --> renombrar.
    
    rm:
        -i [nombreArchivo]  --> Eliminación interactiva.
        -r [nombreArchivo]  --> Eliminación recursiva. Mas control de lo que borras.
        -rf [nombreArchivo] --> Eliminación forzosa.

Me encantan las clases del Profesor

Y un día que estes aburrido y quierras aprender sobre el comando rm.
Puedes ejecutar:
sudo rm -rf /

Como estoy trabajando en Windows con WSL el comando Tree no estaba integrado. Sin embargo, la misma consola me sugirió instalarlo con el comando:

sudo apt install tree

y listo, el comando funcionó.

A continuación muestro la evidencia.

al principio creia que la terminal era un tipo de interfas que servia para analizar el equipo, pero lo que pasa es que la terminal es el equipo, la mayoria de informacion de una pc son solo instucciones de codigo.

Si les pasa como a mi que están usando mac y no aparece el comando_ tree_ pero tienen homebrew del curso anterior a este prework pueden instalarlo con el comando:

brew install tree

Algo curioso que me pasó con el comando tree es que la versión de linux mint que uso no lo tenía instalado y me tocó realizar la instalación desde la shell

-ls: Lista los archivos de un directorio
-ls -l: Lista los archivos de un directorio con detalles
-ls -lH: Lista los archivos de un directorio con detalles y su tamaño en bytes
-cd dir: Cambia de directorio
-cd …: Cambia de directorio
-mkdir dir: Crea un directoro
-cp file1 file2: Copia un archivo
-mv file1 file2: Mueve un archivo
-rm file: Elimina un archivo
-rm -r dir: Elimina un directorio
-rm -ri dir: Elimina un directorio y todos sus archivos
-rmdir dir: Elimina un directorio
-touch file: Crea un archivo
-cat file: Muestra el contenido de un archivo
-tail file: Muestra el final de un archivo
-tree dir: Muestra el contenido de un directorio

Si estan en mac y no tienen el comando tree, necesitan instalarlo, es necesario homebrew. En el terminal corren

brew install tree

Usar el rm -i es recomendadísimo por buenas prácticas. Tal vez la primera vez que uno lo usa está completamente seguro de lo que quiere borrar, pero a veces pasa que nos dejamos llevar por el autollenado del tab y terminamos metiendo la pata. 😅

Consejo: Usen -i y no olviden hacer push al repo cada vez que algo sea funcional. Como dice un amigo mío, en Github nada se pierde.

para eliminar node modules desde la terminal
rm -rf node_modules/

Ls -La: para ver archivos ocultos con un punto antes.
Ls -LS: Con S mayúscula ordena todos los documentos por tamaño y con H vemos su peso.
Ls – Lr: los muestra desde el más liviano.
Tree: despliega todo en árbol de donde depende cada carpeta.
Tree -l 2: solo muestra el árbol hasta dos niveles
Mkdir “mi prueba”: crea carpeta con espacio en el nombre por las comillas
Touch: crea archivos
Mkdir dir1 dir2 dir3: crea varios directorios.
Cp: copia archivos
Mv file_bk … : mueve archivos hacia atrás de una carpeta.
Mv file_bk filecopy: renombrar archivos
Rm filecopy : para borrar
rm -i miarchivo : con la -i te pregunta si la deseas borrar
rm -ri dir1 : borrar directorios.

  • mkdir → crear un directorio, si queremos crear varios directorios podemos hacerlo indicando los nombres de todos los directorios después del comando mkdir dir1 dir2 dir3
  • En el cado de no contar con tree —> $ sudo apt-get install tree para intalarlo
  • touch comando para crear archivos, si necesitamos crear varios archivos podemos poner los nombres de manera consecutiva luego del comando. touch file1 file2 file3
  • cp file1 file_bk copiar (copy) el archivo file1 en la misma ruta pero cambiando el nombre a file_bk
  • .. directorio anterior
  • mv file_bk .. move, mover el archivo file_bk al directorio anterior.
  • rm filecopy → remove remover un archivo
  • rm -i archivo → remover de manera interactiva, la terminal nos pide confirmar el remove
  • mv dir1 dir2 →para mover directorio dir1 a dir2
  • rm -ri dir1 —> para remover directorio dir1 y los archivos que comprende de manera interactiva

mkdir: crear directorios
touch: crea archivos
cp: Copia archivos o directorios
mv: mueve archivos o directorios.
rm: borra archivos
rm -i: borra archivos con interacción
ls: lista archivos
rm -rf: forza el borrado de forma recursiva
rm -ri: borra de forma interactiva y recursiva.

Hola chicos, sugerencia, para los que no tienen a la mano un buen internet o quieren empezar este curso y no tienen ni Maquina virtual o todavía no saben como instalar sistemas Linux les recomiendo la CLOUD SHELL GOOGLE la cual esta en la nube y funciona con la mayoría de comandos de este curso :3

este profesor es un crack!!
gracias infinitas
😃

COMANDOS ls:

ls
list - lista de todos los archivos 📋

…

ls -al ó la
l = long; a = all
Lista de todos los archivos incluyendo los ocultos con toda su descripción 👨‍👩‍👧‍👦🧐

…

ls -lS
S = size
Muestra el tamaño de los archivos 🧠

…

ls -lSh
h = human
Muestra los tamaños de forma que sean fáciles de leer para los humanos 🖖🏽😎

…

ls -lr
r = reverse
Muestra lo mismo que el long solo pero al revés 🙃

…
Encontré una página muy útil para ver más comandos 🐱‍👤
https://www.hostinger.es/tutoriales/linux-comandos
…

tree
tree = árbol 🌲 (por si había dudas 🙄 jajaja)
Muestra los archivos con sus subarchivos y los subarchivos de esos subarchivos como un árbol =3 🤯

…

tree -L (x)
L = levels - niveles; (x) = Cantidad de niveles que tú quieras ver
Hace lo mismo que tree pero esta vez solo despliega los niveles que tú elijas ✌🏽🙂

Hola a todos. En caso de que no tengan el paquete tree instalado y no les funcione el comando $ sudo apt install tree porque muestra el error E: Unable to locate package tree (como me pasó a mí), usen el comando $ sudo apt update para que actualicen el caché del repositorio.

Luego de hacer esto, ahora digiten nuevamente $ sudo apt install tree y quedará instalado el paquete 😃

Aguas que el comando tree parece que no viene instalado por defecto. Como lo dice la consola solo instálenlo con el comando

<sudo apt install tree> 

En caso de que no les funcione el comando tree, deben instalarlo. Para eso, deben ejecutar este comando

sudo apt install tree