Activa JavaScript para disfrutar de los vídeos de la Mediateca.
02-PowerShell - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Vamos a continuar con el comando getChillItem, y os recuerdo que era para ver el contenido que había dentro de una carpeta, para ver todos los ficheros y vimos el otro día cómo podíamos ver de forma recursiva o con un cierto nivel de profundidad.
00:00:00
Entonces, para seguir con los ejemplos, nos vamos a meter, por ejemplo, vamos a poner set location y le vamos a poner, por ejemplo, en e2.escañaberal y almacén, ¿vale?
00:00:23
Nos vamos a meter ahí y vamos a coger, espérate que voy a poner un pelín más grande y si os recuerdo que si yo quiero ver el contenido utilizamos get, chip item, si yo no pongo nada me muestra el contenido de la carpeta actual, ¿vale?
00:00:40
vimos que poner esto y por ejemplo imaginaros que yo quiero ver la carpeta que se llama alumnos 2020
00:01:01
entonces poníamos en este caso el pad y le decíamos de forma relativa
00:01:09
alumnos 2020-2021, le estábamos diciendo que quiero que me muestre el contenido de esa carpeta
00:01:15
de manera relativa y me muestra el contenido de dicha carpeta, de acuerdo
00:01:24
Si yo quiero decirle de forma recursiva para que se vaya metiendo en el contenido de la carpeta y en todas las carpetas que haya por debajo, recuerdo que era el control, perdón, el guión recurse, ¿de acuerdo?
00:01:29
Pero vamos a ver las siguientes opciones que nos quedaba. Imaginaros que yo quiero decirle hay una carpeta que va a ser la carpeta almacén, de forma que le digo el path y le digo la carpeta datos. Esto es lo que contiene la carpeta datos, ¿vale?
00:01:45
os recuerdo que si yo solamente quiero poner la ruta
00:02:11
no hace falta que pongáis el path, me va a poner lo mismo
00:02:15
y me dice que tengo tres carpetas
00:02:17
si yo me voy al modo gráfico, quiero que veáis que si me voy
00:02:19
esto lo borro, si me voy al IES Cañaveral
00:02:24
me voy a almacén y me voy a la carpeta datos
00:02:27
tengo aquí los tres ficheros, uno, dos y tres
00:02:29
imaginaros que yo cojo en este municipio
00:02:32
le digo botón derecho, me voy aquí a propiedades
00:02:36
y veis aquí abajo que puedo seleccionar que este fichero es oculto, lo vamos a ocultar, lo voy a ocultar y le voy a dar a aceptar, ¿sí?
00:02:40
Fijaros que ahora se me ha puesto un poco tenue este de aquí, de municipios, ¿y por qué se me sigue viendo?
00:02:56
Porque yo tengo puesto aquí arriba que quiero ver los elementos ocultos, si yo quito que quiero ver los elementos ocultos, ese ficherito ya no me aparece, ¿de acuerdo?
00:03:02
Entonces, imaginaos que hay ficheros de sistemas que un usuario normal no lo tiene que ver, pues esta es una de las opciones. ¿Qué pasa si yo me voy ahora aquí y le digo que me diga qué es lo que hay dentro de datos? ¿Qué me dice? Pues que solamente hay dos ficheros, es decir, por defecto no muestra los ficheros ocultos.
00:03:12
¿Qué pasa si quiero decirle que me muestre también los ocultos?
00:03:27
Pues tenéis la opción que se llama force
00:03:30
¿Vale? Force
00:03:32
Si yo le doy, fijaros que ahora sí me dice que me muestra este fichero
00:03:33
Aun cuando es oculto
00:03:39
¿Por qué es que es oculto?
00:03:41
¿Veis que me pone aquí una H de hidden?
00:03:43
Pues quiere decir que me está mostrando incluidos los ocultos
00:03:45
Entonces tengo la opción guión force
00:03:48
¿Sí?
00:03:50
Más opciones que podemos nosotros utilizar
00:03:51
Le voy a quitar otra vez el oculto por si acaso luego lo tenemos que utilizar
00:03:54
Me voy a propiedades y le quito el oculto, ¿de acuerdo?
00:04:01
Luego ya veremos cómo podemos hacerlo en modo comando
00:04:06
¿Qué pasa si yo quiero decir lo siguiente?
00:04:09
Quiero mostrar el contenido de la carpeta alumnos curso 2020
00:04:12
Es decir, todos, y le digo asterisco, todos los ficheros
00:04:17
Pues fijaros que me muestra todo el contenido de esa carpeta
00:04:21
Pero imaginaros que yo no quiero que me muestre todo el contenido
00:04:26
Sino que quiero que me muestre todo el contenido
00:04:29
Excepto, por ejemplo, los ficheros que tienen asterisco.txt
00:04:31
¿Vale? Es decir, todo esto que me pone txt, txt, txt, txt, txt
00:04:36
Es decir, no quiero que me lo muestre
00:04:41
¿Cómo lo puedo decir?
00:04:43
Pues le digo, oye, quiero que me muestre todos los ficheros de ese ficherito
00:04:45
excepto, y le digo, y quiero que me excluyas los que yo te diga
00:04:49
¿cuál quiero excluir? pues le digo asterisco.txt
00:04:53
de forma que si le damos, fijaros que me está mostrando
00:04:56
todos los ficheros excepto, ¿vale? excluyendo, quitándome
00:05:01
los que son asterisco.txt, es decir, aquí ya no hay ninguno
00:05:05
pero ¿y qué pasa si además no quiero que me muestre los que son
00:05:09
por ejemplo, con extensión htm? pues yo puedo poner
00:05:13
una coma y le puedo decir
00:05:17
oye, además, quiero excluir
00:05:19
también los que son asterisco.htm
00:05:21
si yo ahora le doy al enter
00:05:24
me va a mostrar todos
00:05:26
excluyéndome
00:05:28
estos dos de aquí que le he dicho
00:05:30
fijaros que ahora lo único que me muestra
00:05:32
son los que yo le he dicho
00:05:34
¿de acuerdo?
00:05:37
pero esto, si yo solamente
00:05:40
quiero esto, que es decir
00:05:41
oye, quiero que me muestre todos los ficheros con extensión
00:05:43
svg
00:05:45
Yo esto directamente lo puedo borrar y decirle asterisco.svg, ¿vale? Que en este caso sería lo mismo, ¿sí? Pero si tenéis mucha información y queréis excluir cierto conjunto de ficheros, tenéis la opción guión excluir, ¿sí?
00:05:46
nos queda otra opción que hay a veces que es útil
00:06:03
¿vale? imaginaros
00:06:07
bueno, este de aquí mismo, si es que me da igual
00:06:09
imaginaros que yo le digo
00:06:10
que me muestre todos los ficheros
00:06:12
perdón, svg
00:06:14
svg
00:06:16
¿vale? pero solo quiero que me muestres el nombre
00:06:18
pues si yo le pongo guion name
00:06:20
solo me va a mostrar el nombre
00:06:22
no me muestra toda la información
00:06:24
fijaros que si yo no quito, si quito el name
00:06:26
me muestra más información ¿vale?
00:06:28
como sus atributos en la primera columna
00:06:30
que es esta de aquí, me muestra la fecha
00:06:32
y hora de última modificación o acceso
00:06:36
me muestra el tamaño
00:06:38
y me muestra el nombre de los documentos
00:06:41
si yo solamente quiero que me muestre el nombre
00:06:45
pues pongo guión name y solamente me muestra
00:06:48
el nombre correspondiente, ¿de acuerdo?
00:06:51
entonces ya hemos visto la opción guión path
00:06:54
guión recurso, guión name
00:06:56
guión force, guión exclude
00:06:59
y luego para decirle con el nivel de profundidad
00:07:02
utilizamos el guion def
00:07:05
y diciéndome el número de profundidad
00:07:06
con esto vamos que chuta
00:07:08
dentro del comando correspondiente
00:07:10
vamos a ver más opciones
00:07:12
que es un alias
00:07:14
dentro del PowerShell o dentro
00:07:16
de cualquier sistema porque
00:07:18
en todo sirve lo mismo
00:07:20
entonces yo puedo poner un nombre alternativo
00:07:21
a un comando, a un cmdlet
00:07:24
dentro de PowerShell
00:07:27
de forma que yo puedo utilizar
00:07:28
ese alias
00:07:30
En lugar del comando de PowerShell
00:07:31
Por ejemplo, en lugar de a mí decirme
00:07:34
Oye, que soy Fernando Herrero
00:07:38
Pues me podéis poner un alias, ¿vale?
00:07:40
Que es profesor, ¿vale?
00:07:43
Quiere decir que me habéis puesto el alias de profesor
00:07:44
Y yo voy a responder como si fuese Fernando Herrero
00:07:47
¿Cómo puedo ver los alias que tenemos asignado a un PowerShell?
00:07:50
Pues yo tengo varias opciones
00:07:54
Por ejemplo, no sé si os acordáis de este comando
00:07:55
Que yo le digo, oye, quiero que me digas
00:07:59
los comandos
00:08:01
y le digo cuyo tipo
00:08:02
es un alias
00:08:05
si yo le doy
00:08:07
fijaros que me está devolviendo
00:08:09
todos los alias que tenemos establecidos
00:08:10
¿vale? porque le he dicho con el
00:08:13
comand type que me diga todos los alias
00:08:15
y fijaros que aquí
00:08:16
en la segunda columna es el alias que tengo
00:08:19
asignado y fijaros
00:08:21
que me dice como se llama el alias
00:08:23
y después de
00:08:25
el guion raya me pone
00:08:27
Que comando me está ejecutando
00:08:29
¿Vale? Es decir que si yo pongo te
00:08:32
Está ejecutando el comando te oye
00:08:34
Si yo ejecuto el comando
00:08:36
Type
00:08:38
Me está ejecutando el cmdelete
00:08:38
GetContent
00:08:41
¿Sí? ¿De acuerdo?
00:08:42
Yo también puedo utilizar
00:08:46
Este comando, en lugar de
00:08:48
Get-comand-type
00:08:49
Alias
00:08:52
Puedo decirle directamente
00:08:53
Get
00:08:55
alias y me devuelve exactamente lo mismo
00:08:56
mucho más cómodo
00:08:59
¿de acuerdo?
00:09:01
entonces vamos a ver cómo podemos gestionar los alias
00:09:02
cómo podemos crear, cómo podemos modificar
00:09:04
cómo podemos eliminar
00:09:07
¿sí? primeramente
00:09:08
hemos dicho que si yo utilizo el get alias
00:09:10
me devuelve todos los alias que tenemos
00:09:13
establecidos, pero yo esto
00:09:15
lo puedo filtrar
00:09:17
yo puedo poner, oye, quiero que me muestre
00:09:18
los alias y le pongo
00:09:21
cuyo nombre, pues yo que sé, empieza por
00:09:22
w y le pongo w asterisco y me muestra los alias cuyo nombre empieza por w si también le puedo
00:09:25
decir igual que utilizamos en el get chill item le puedo decir oye quiero que me excluyas de este
00:09:35
por ejemplo los que terminan por una e digo pues que terminan asterisco punto e entonces fijaros
00:09:43
que nosotros le hemos dicho aquí que empiece por una W, es decir, inicialmente nos devolvería
00:09:50
todo esto. Pero como le hemos dicho que nos quite, que nos excluya los que terminan por
00:09:57
una E, es decir, este de aquí y este de aquí que termina en una E, pues aquí abajo no
00:10:04
está. Por eso de aquí solamente los que empiezan por una W y que no terminan por una
00:10:09
Entonces yo aquí puedo filtrar para decirle qué es lo que quiero que me muestre
00:10:18
¿De acuerdo?
00:10:22
Entonces es muy fácil de averiguar en este caso
00:10:24
Oye, todos los alias que empiezan en este caso por una F
00:10:28
Pues perfecto, ¿sí?
00:10:31
Vale, ¿cómo podemos nosotros crear un alias o cómo podemos modificar un alias?
00:10:33
Pues vamos a crear nuestros primeros alias
00:10:39
Por ejemplo, si yo quiero crear un alias vamos a utilizar el comando que se llama set alias
00:10:40
Y para crear un alias, nosotros le vamos a tener que poner, en este caso, un nombre
00:10:47
Pues le digo, oye, guion name
00:10:52
Estoy poniendo bien
00:10:54
Aquí, guion name
00:11:02
Y le vamos a poner nuestro alias
00:11:09
Pues vamos a poner hoy, por ejemplo
00:11:11
Hoy que es domingo, le decimos domingo guion
00:11:14
Y le pongo 01, por ejemplo, ¿sí?
00:11:19
Obviamente hay que poner un alias que sea cómodo de utilizar para nosotros
00:11:24
Pero como nosotros estamos haciendo aquí los ejercicios, voy a poner este nombre porque luego veremos por qué.
00:11:27
Porque luego vamos a exportar todos los alias que empiezan por Domingo.
00:11:33
Entonces voy a hacer un alias Domingos1 y ahora le tengo que poner cuál es, en este caso, el comando que va a ejecutar.
00:11:36
Cuando yo escriba Domingo-01, ¿cuál va a ser el comando de PowerShell que queremos ejecutar?
00:11:47
Por ejemplo, vamos a utilizar uno muy sencillo que va a ser el que me borre la pantalla.
00:11:52
Y ahora opcionalmente le puedo poner en este caso una descripción
00:11:57
Y le digo alias que borra la pantalla
00:12:03
Entonces repito lo que le hemos tenido que decir
00:12:10
Le decimos el nombre del alias
00:12:17
importante
00:12:21
y importante
00:12:23
que comando queremos que ejecute
00:12:25
cuando yo escriba domingo-01
00:12:28
de forma que cuando yo ejecute
00:12:30
el comando, entre comillas
00:12:32
domingo-01, ¿qué es lo que me va a ejecutar?
00:12:33
pues el cmdlet
00:12:37
el comando clear host
00:12:38
¿sí? entonces le damos
00:12:40
al enter
00:12:42
¿vale? parece
00:12:42
que no me ha hecho nada
00:12:48
¿qué pasa si yo le digo, oye, muéstrame
00:12:48
todos los alias por favor
00:12:51
que empiezan por domingo
00:12:53
domingo asterisco
00:12:55
si
00:12:57
vale, si veis que me aparece
00:13:05
en el alias domingo
00:13:10
1 y no me pone que comando
00:13:12
ejecuta, vale, es porque
00:13:14
se está refrescando mal
00:13:16
entonces fijaros que si yo pongo ahora
00:13:18
domingo 01, le doy al enter
00:13:20
os acordáis que le hemos
00:13:22
dicho que lo que
00:13:24
quiero es que cuando yo ejecute este comando
00:13:26
lo que me va a hacer es ejecutar este comando de aquí, ¿de acuerdo?
00:13:28
uy, perdón, este comando de aquí, entonces si yo ahora le doy
00:13:32
al enter, lo que me va a hacer es borrarme la pantalla, ¿sí?
00:13:36
vale, para que se ponga bien, vamos a
00:13:41
porque este es un poco tiquismiqui, ¿vale? entonces como lo hemos escrito sin
00:13:44
utilizar el tabulador, pues digamos que me lo está refrescando mal en la pantalla
00:13:48
entonces, ¿cómo podemos borrar el alias que nosotros tenemos creado? porque os recuerdo
00:13:52
que si le decimos aquí que alias domingo lo tengo ahí qué pasa si yo lo quiero eliminar pues yo no
00:13:57
sé si os acordáis que uno de los proveedores que nosotros teníamos eran los alias de forma que si
00:14:06
yo ejecuto remove guión y tengo yo quiero eliminar un objeto vale un ítem y ahora qué objeto queréis
00:14:12
eliminar pues del proveedor alias dos puntos y ahora le tengo que decir el nombre que quiero
00:14:21
borrar entonces con esto que lo que está haciendo borrarme el alias si yo ahora le digo que me diga
00:14:28
que alias empiezan por domingo me dice que no hay ninguno vamos a crearlo otra vez y le decimos set
00:14:33
alias le decimos uy perdón guión name le estoy dando el tabulador para que me lo ponga bien y
00:14:40
le vamos a poner domingo todo junto vale domingo 01 espacio guión tabulador y me pongo y perdonarme
00:14:50
y me pongo el value espacio y le decíamos clear y le vamos a poner con el tabulador clear host
00:15:00
Guión, tabulador, descripción
00:15:10
Borra
00:15:15
Pantalla
00:15:17
Exactamente lo mismo que hemos hecho antes
00:15:19
Lo que pasa es que aquí poniendo los nombres
00:15:22
Que él me está poniendo haciendo con el tabulador
00:15:24
Le damos al enter
00:15:26
Y le volvemos a decir que nos diga
00:15:27
Cuál es el domingo
00:15:30
Y fijaros que
00:15:31
Esto es lo que quería que viéseis
00:15:32
Me dice, oye, tengo un alias
00:15:35
Que le he llamado domingo
00:15:36
que va a ejecutar este comando
00:15:38
¿de acuerdo?
00:15:41
¿sí?
00:15:43
entonces vamos a hacer varios alias
00:15:44
vamos a hacer otro alias
00:15:46
que se va a llamar
00:15:49
en este caso domingo02
00:15:51
y aquí
00:15:54
este va a ser por ejemplo
00:15:57
que me va a decir los alias
00:15:59
y vamos a poner
00:16:01
get
00:16:03
alias
00:16:05
vamos a crear otro
00:16:06
Que es el domingo 3
00:16:16
Que va a ser
00:16:18
El que hemos visto anteriormente
00:16:20
Para mostrar, vale
00:16:25
Muestra
00:16:26
Contenido carpeta
00:16:29
Y vamos a crear uno más
00:16:31
Que va a ser
00:16:38
Ir al
00:16:39
Cambiar carpeta
00:16:44
Que si recordáis
00:16:51
Es el set
00:16:54
Location, de acuerdo
00:16:56
Y fijaros que la acabo de cagar
00:17:01
¿Por qué?
00:17:07
Porque quiero que veáis que es lo que he hecho
00:17:08
Hasta ahora tenemos aquí
00:17:10
Uno que es domingo 1
00:17:12
Que me hace un clear host
00:17:16
Perfecto
00:17:18
Uno que es domingo 2
00:17:19
Que me hace un get alias
00:17:21
Uno que es domingo 3
00:17:23
Que habíamos dicho que nos hace
00:17:26
Un get chill itrem
00:17:28
Pero luego en el de aquí abajo
00:17:29
Fijaros que
00:17:32
no hemos cambiado el nombre
00:17:34
y le hemos dicho, oye
00:17:36
domingo 3 y le hemos
00:17:38
puesto aquí el
00:17:40
value, que es lo que está haciendo este
00:17:42
comando de aquí
00:17:44
pues este lo que está haciendo es modificar
00:17:45
el alias domingo
00:17:50
3 y ahora en lugar de ser
00:17:52
get location, es decir
00:17:54
en lugar de ser este de aquí
00:17:56
pues ahora lo vamos a poner por
00:17:58
set location, es decir antes era
00:18:00
get, perdón que lo he dicho mal, antes
00:18:02
era get guión chill item
00:18:04
y ahora lo que va a hacer es un set locatio
00:18:06
si yo le digo ahora
00:18:08
que me diga, oye, dime los alias
00:18:10
de domingo
00:18:12
fijaros que
00:18:19
el domingo 3
00:18:20
no es get
00:18:23
chill item, sino lo que acabamos de hacer
00:18:27
es modificar, entonces el comando
00:18:29
set me permite crear
00:18:31
y si lo que hago es darle
00:18:33
un alias que ya está creado
00:18:35
lo que hace es modificarlo
00:18:37
Entonces vamos a hacerlo bien
00:18:39
Vamos a ponerle
00:18:41
Que el domingo 3
00:18:43
Es este de aquí
00:18:46
Es decir, otra vez lo estoy modificando
00:18:48
De forma que si yo le digo get alias
00:18:50
Ahora sí que me dice
00:18:54
Que obviamente domingo 3
00:18:56
Es el git item
00:18:58
Y ahora vamos a coger el set location
00:19:00
Que quería que fuese el 4
00:19:02
Domingo 04
00:19:04
y va a ser el set location
00:19:05
de forma que si yo le digo los domingos
00:19:09
lo tenemos así, que así es como quiero que sea el ejemplo
00:19:11
¿vale? tenemos cuatro alias
00:19:13
domingo1, domingo2, domingo3 y domingo4
00:19:15
vale
00:19:17
vamos a probar cada uno de ellos
00:19:19
si yo pongo domingo01
00:19:21
me hace un clear host
00:19:23
un alias, perfecto
00:19:25
si yo hago en este caso un domingo02
00:19:27
domingo 02, que es lo que me va a hacer
00:19:32
un get alias, me va a mostrar todos los alias, perfecto
00:19:35
¿qué pasa si yo le digo un domingo 03? estoy en la carpeta
00:19:39
almacén, pues si yo le digo domingo 03
00:19:44
pues me hace un get chill item
00:19:47
si yo le digo en este caso un
00:19:50
domingo 04, quiero que veáis que es lo que hace
00:19:55
Es un setlocation, si yo le doy al enter
00:19:59
No me ha hecho nada, ¿verdad?
00:20:01
Pero yo sí que le puedo decir setlocation
00:20:05
Y le digo aquí, oye, quiero que te vayas, en este caso, al write
00:20:07
Y que es lo que ha hecho
00:20:12
Entonces, ¿qué es lo que tenemos que saber de los alias?
00:20:13
Yo no puedo asignar un alias, ¿vale?
00:20:20
A un comando y sus argumentos
00:20:23
Fijaros que lo único que estamos haciendo es asignar un alias a un comando
00:20:24
No sus argumentos
00:20:28
Porque sus argumentos, luego yo ya
00:20:29
Lo que hago es utilizarlos aquí
00:20:31
Entonces, si yo quiero cambiar otra vez
00:20:32
Le digo domingo 04
00:20:36
Y le digo aquí
00:20:37
Que quiero irme a
00:20:39
Y es cañabral y almacén
00:20:41
Y ya cambiamos, ¿vale?
00:20:44
O yo le puedo decir aquí
00:20:46
No sé si os acordáis de lo del pass-through
00:20:47
Para que me diga qué es lo que va a hacer
00:20:49
¿Sí? Uy, perdón
00:20:51
No está encontrando la ruta
00:20:53
Porque he puesto mal la ruta
00:21:01
a ver si lo hacemos bien
00:21:02
la ruta bien
00:21:03
¿de acuerdo?
00:21:06
porque estaba poniendo una ruta relativa
00:21:08
entonces me dice que desde donde estoy no existe
00:21:10
un directorio que se llame
00:21:12
y es cañabral
00:21:14
aunque parezcan estos errores que tú dices
00:21:15
que se acaba el mundo
00:21:18
simplemente leer ¿de acuerdo?
00:21:19
porque simplemente te está diciendo que no se
00:21:22
encuentra la ruta de acceso, es decir
00:21:24
estoy poniendo mal la ruta
00:21:26
¿de acuerdo? entonces yo cuando
00:21:27
aplico un alias es a un comando no a sus con el comando y sus argumentos vale ya sabemos crear
00:21:30
y modificar qué pasa si yo quiero directamente crear uno nuevo pues además del comando set alias
00:21:37
que es el que yo suelo utilizar siempre que sepáis que tenéis este comando new alias que hace
00:21:44
exactamente lo mismo que el set alias lo que pasa que este comando no me permite modificar solamente
00:21:52
crea uno nuevo es decir si yo ahora le digo guión name y le pongo domingo cuantos teníamos de talias
00:21:58
domingo asterisco vale si yo le digo que quiero crear un nuevo alias y le digo que el nombre es
00:22:09
domingo 05 y le digo que el valor es pues por ejemplo que tú lo que tío que
00:22:19
lo que hicieron vale y le pongo aquí la descripción si queréis vale esto si
00:22:29
quiere la descripción al ver dónde estoy si esto me ha creado en este caso
00:22:38
uno nuevo, lo he puesto bien
00:22:48
joder
00:22:49
ay, que lo he escrito mal
00:22:52
utilizamos el, imaginaros que lo quiero
00:22:55
cambiar, y yo pongo new
00:22:58
digo, mira, no es domingo
00:22:59
o por ejemplo, imaginaros que quiero cambiar
00:23:05
y le digo, no es get locatio, sino es
00:23:08
get
00:23:10
chilite
00:23:11
si yo le doy
00:23:14
¿vale? fijaros que me dice que no puede
00:23:15
¿por qué? porque este comando
00:23:17
solamente me permite crear un alias, no modificarlo
00:23:19
como yo lo que quiero es modificarlo
00:23:23
yo tendría que utilizar el set alias
00:23:26
pero como lo que he puesto mal es el nombre
00:23:30
lo que vamos a hacer es eliminarlo
00:23:33
porque veis que he puesto domingo
00:23:34
y es domingo, pues vamos a eliminarlo
00:23:36
¿cómo lo borramos?
00:23:39
le decimos remove-item
00:23:40
y le decimos, oye, de los alias dos puntos
00:23:43
Y quiero que me borres el que se llama domingo05
00:23:49
Ya lo tenemos eliminado
00:23:54
Vamos a crearlo bien
00:23:56
Pues le decimos el new alias
00:23:57
Y le decimos domingo
00:24:01
Que ya no es ser ni escribir
00:24:05
Name domingo05
00:24:07
Value geolocation
00:24:08
De acuerdo
00:24:11
Si yo ahora le digo que me diga los alias
00:24:12
Le digo get alias domingo
00:24:15
Tenemos ahí los cinco
00:24:17
Entonces el new alias y el setAtiel funcionan igual, lo que pasa es que el setAtiel, setAlias, además de crear, me permite modificar
00:24:18
Pues que sepáis que, imaginaros que estos alias lo queréis utilizar en otro ordenador y ya lo tenéis currado
00:24:27
Porque esto, dependiendo de vuestro trabajo, os vais a estar acostumbrados a utilizar una serie de comandos
00:24:34
Y vais a querer tener vuestros propios alias
00:24:40
Pues yo puedo exportar los alias, igual que vosotros exportáis los contactos y los ponéis en otro ordenador o en otro móvil, pues yo aquí puedo exportar.
00:24:44
¿Cómo puedo exportar los alias? Pues si yo pongo export alias, le digo simplemente dónde lo quiero guardar, pues vamos a guardarlo por ejemplo en E y se va a llamar mis alias, por ejemplo .txt.
00:24:52
¿Sí? Y yo, si le digo esto, me va a exportar todos los alias.
00:25:06
Entonces, lo ideal sería que yo le diga, oye, solamente quiero que me exportes los que empiezan por domingo.
00:25:13
Entonces, si yo le doy, ¿qué es lo que le hemos dicho aquí?
00:25:20
Quiero exportar todos mis alias.
00:25:25
Lo voy a guardar en este ficherito, le voy a decir ruta absoluta.
00:25:28
Y quiero no todos, sino que solamente los que empiezan por domingo.
00:25:31
Si nosotros nos vamos aquí a datos.e, fijaros que me ha creado aquí mis alias
00:25:35
Si yo le abro, quiero que veáis que es lo que me ha puesto
00:25:42
Fijaros que me pone el nombre del alias, que cmdl va a ejecutar, la descripción
00:25:46
Y en este caso es el ámbito donde se van a funcionar estos alias
00:25:59
Aquí no voy a entrar, ¿vale?
00:26:08
Pero quiero que veáis que aquí tengo todos mis alias
00:26:10
¿Sí?
00:26:12
¿Qué pasa si yo quiero borrar todos mis alias?
00:26:14
Si yo me voy por aquí
00:26:17
¿Os acordáis que yo puedo utilizar
00:26:18
Remove item
00:26:20
Y le digo alias
00:26:23
Y le puedo decir aquí
00:26:26
Oye
00:26:29
Domingo
00:26:29
Joder, madre mía
00:26:32
Domingo asterisco
00:26:33
¿Qué le hemos dicho?
00:26:37
Oye, quiero que borre todos los alias que empiezan por domingo
00:26:39
Si yo le digo que me muestre
00:26:41
Todos los alias
00:26:43
Que empiezan por domingo
00:26:45
Ya no tengo ningún alias
00:26:48
Ya he borrado todos mis alias
00:26:50
Suponer
00:26:52
¿Qué es lo que hace esto?
00:26:54
Si yo en lugar de esto le digo esto
00:26:57
¿Qué es lo que me hace esto?
00:26:59
Me está borrando todos los alias
00:27:03
¿Vale?
00:27:05
¿Y por qué me sale en este caso
00:27:06
que todo esto en rojo
00:27:07
porque fijaros que aquí me está diciendo
00:27:09
lo pongo en otro color para que lo veáis
00:27:12
me dice que hay una serie
00:27:14
de alias que no se pueden
00:27:16
eliminar, estos alias que no se pueden
00:27:17
eliminar son los que tienen en este caso
00:27:19
de solo lectura o que tienen en este
00:27:21
caso la constante que se llama constante
00:27:24
es decir el
00:27:25
no me sale
00:27:26
el valor constant
00:27:29
que es el que me pone ahí constante
00:27:33
es decir cuando hay una serie de opciones
00:27:34
que tienen los alias
00:27:37
Pues si es constante o es de solo lectura
00:27:39
No me los borra
00:27:41
¿De acuerdo?
00:27:42
Vale
00:27:44
Entonces, ¿qué pasa si yo quiero
00:27:44
Coger todos los alias que tenemos
00:27:48
Porque los quiero volver a utilizar?
00:27:51
Entonces, ¿os acordáis que en lugar de
00:27:54
Que antes utilizábamos el sport alias?
00:27:55
Pues para hacer lo contrario
00:27:58
Para importar
00:28:00
Pues vamos a utilizar import-alias
00:28:01
Y le tengo que decir exactamente lo mismo
00:28:04
Le digo, oye
00:28:06
¿Dónde tengo?
00:28:07
Uy, perdón
00:28:08
¿Dónde tengo el fichero?
00:28:09
Pues lo tengo dentro de
00:28:12
Y se llama
00:28:13
No me acuerdo como se llamaba
00:28:14
Misales, ¿de acuerdo? He utilizado el tabulador
00:28:16
¿Sí?
00:28:19
Entonces no le tengo que decir nada más
00:28:22
Le doy al intro
00:28:24
Y si yo ahora le digo
00:28:24
Oye, dime los alias que tengo
00:28:27
Que empiezan por
00:28:29
Domingo, y ahí los tengo
00:28:30
¿Sí?
00:28:32
Entonces ya sabemos manejar
00:28:37
Todos los alias
00:28:39
Hemos dicho como podemos borrar también los alias
00:28:40
Que es utilizando removeItem
00:28:43
Que sepáis que cuando yo le digo removeItem
00:28:45
Le puedo pasar directamente el path
00:28:51
Y le digo oye alias dos puntos
00:28:54
Y le digo domingo cero uno
00:28:57
O le puedo quitar el path porque por defecto es como si yo pusiese el path
00:28:59
Y le digo alias y le digo domingo cero dos
00:29:03
¿Sí?
00:29:05
Pues que sepáis que también
00:29:06
Además de removeItem
00:29:11
Tenéis el que se llama
00:29:13
ClearItem
00:29:14
¿Sí?
00:29:17
Podéis utilizar lo que queráis
00:29:19
Y le digo, oye, quiero que me borres los alias
00:29:21
Y le voy a decir en este caso
00:29:24
Domingo, pues por ejemplo el 03
00:29:25
De forma que si yo le digo
00:29:27
El getAlias
00:29:30
Pues me quedan esos dos
00:29:32
Entonces podéis utilizar tanto el removeItem
00:29:33
Como el clearItem
00:29:35
de acuerdo vale vamos a empezar con un poquito más de complicación y vamos a ver lo que son
00:29:38
los pipeline qué es eso de pailán pues vamos con ello primero debemos recordar que la salida de un
00:29:47
comando de un cmd led es un objeto vale no es un texto que sale por pantalla es un objeto y
00:29:56
ya vivimos ya vimos que un objeto tiene una serie de propiedades tiene una serie de métodos si además
00:30:02
El pipeline es uno de los métodos más utilizados cuando tenemos que hacer ciertas operaciones administrativas dentro de PowerShell.
00:30:08
Entonces, tener en cuenta que cada vez que se ejecuta un comando, ese comando se ejecuta en un pipeline.
00:30:15
De forma que yo puedo ejecutar un comando y el resultado de ese comando se lo puedo pasar mediante ese pipeline al siguiente comando.
00:30:23
Es decir, ¿para qué se suele utilizar esto? Para obtener la salida de un comando y pasársela directamente como entrada al siguiente comando.
00:30:34
Vamos a ver qué significa esto. Si yo ejecuto, por ejemplo, este comando, getService, le estoy diciendo que me diga todos los servicios que se están ejecutando en Windows.
00:30:45
Si yo ahora ejecuto otro, que son los procesos que se están ejecutando, que se llama getProcess, todos los procesos que se están ejecutando, estoy ejecutando dos tuberías.
00:31:00
Este, por un lado, y lo que me está devolviendo, vosotros pensáis que es texto que muestro en pantalla, no me está devolviendo en este caso texto, me está devolviendo un objeto.
00:31:22
vale y si yo ahora ejecutó el get process se me ejecuta en otro en otro país line diferente que
00:31:32
no es lo mismo que si yo le digo oye quiero que me ejecute este este comando y además punto y coma
00:31:40
le estoy diciendo que en la misma tubería le estoy diciendo que me ejecute en este caso get service
00:31:47
Entonces fijaros que me va a ejecutar uno y después el otro. Pero se están ejecutando los dos en la misma tubería. Vamos a verlo con un ejemplo para que me entendáis qué quiere decir esto.
00:31:56
Para que yo pueda, en este caso, conectar dos comandos, porque lo que hemos hecho antes es simplemente, en una misma tubería, ejecutar dos comandos.
00:32:10
Ya está. Totalmente independientes.
00:32:19
Pero lo bueno es que, ¿cómo le puedo pasar el resultado de un comando a otro comando, pero que ese segundo comando tome esos datos como entrada?
00:32:22
Vamos a hacer este ejemplo.
00:32:35
Yo quiero decirle que tengo por ejemplo
00:32:36
Que me dice mi ubicación
00:32:40
Que es location, os acordáis de este comando
00:32:43
Este comando me devuelve la localización
00:32:46
Pues para decirle que yo quiero que el resultado de este comando
00:32:49
Se lo quiero pasar a otro comando como si fuese entrada
00:32:54
Vamos a utilizar el pipeline
00:32:57
¿Cómo hacemos eso del pipeline?
00:32:59
¿Cómo podemos conectar en este caso dos comandos?
00:33:01
Pues utilizando la barra vertical
00:33:05
la que tenéis en al gr y en la tecla del 1 entonces yo con esto le puedo decir por ejemplo este
00:33:06
comando que simplemente lo que hace es mostrarnos la salida de un comando vale permite mostrar la
00:33:14
salida esto se suele utilizar cuando la salida es muy larga y yo quiero que la salida se me muestre
00:33:20
pantalla o pantalla ahora veremos las opciones entonces si yo le doy aquí al enter vale le estoy
00:33:26
diciendo oye quiero que me muestres el getlocation y vosotros podéis pensar pero si esto hace
00:33:32
exactamente lo mismo que poner getlocation pues realmente lo que hace esto es me ejecuta
00:33:37
este comando y lo que hace es la salida de este comando se la va a pasar como entrada
00:33:46
a este otro comando
00:33:57
a este otro comando
00:34:00
¿sí?
00:34:11
y este otro comando lo que va a hacer es
00:34:12
mostrarme en pantalla
00:34:14
¿vale? bueno, mostrarme en pantalla
00:34:16
para que vosotros lo entendáis, sí, mostrarme en pantalla
00:34:19
lo que él recibe como
00:34:21
entrada, por eso vosotros podéis
00:34:22
pensar, pero quiero que entendáis
00:34:24
que esto de aquí me está
00:34:26
devolviendo un objeto
00:34:28
es decir, este de aquí
00:34:29
lo que está haciendo es pasándole a este el objeto que me ha devuelto que es location y el ojos lo
00:34:32
que hace es ese objeto y mostrarme lo digamos que pantalla a pantalla me explico veis que yo antes
00:34:41
ejecutado este de aquí get proces que me devuelve todos los procesos que se están ejecutando veis
00:34:50
que esta pantalla me muestra un montonazo de cosas todo seguido pero yo puedo decirle que
00:35:00
la salida de este comando lo voy a poner para arriba la salida de este comando va a ser mostrada
00:35:06
en el host y quiero que veáis que lo que sale vale podéis pensar que sale exactamente lo mismo pero
00:35:15
quiero que veáis qué pasa si yo añado aquí esto que me pone oye quiero que me lo muestre es página
00:35:23
a página, y quiero que veáis la diferencia
00:35:31
fijaros que ahora me ha parado y me dice, oye
00:35:34
¿qué quieres hacer? ¿qué quieres hacer ahora? y te dice, mira
00:35:39
tienes el espacio, página siguiente, tienes
00:35:46
el intro, siguiente línea, o tienes la Q
00:35:50
de salir, entonces si yo voy pulsando por ejemplo el intro
00:35:53
intro, intro, intro, intro, si yo
00:35:58
pulso la barra espaciadora, siguiente página, siguiente página, siguiente página, si yo quiero salir pulso la Q, ¿vale? De salir, ¿sí?
00:36:01
Y esto que pensáis que ha sido un error, no, simplemente le he dicho que quiero pararlo, y me dice el usuario detuvo el comando.
00:36:15
Entonces, ¿qué es lo que ha hecho este comando? Lo que ha hecho este comando es, oye, quiero que me muestres los procesos.
00:36:21
procesos. Esto me va a devolver un objeto que contiene todos los procesos que se están
00:36:28
ejecutando. Y en lugar de mostrarlo por pantalla, pues se lo voy a pasar como entrada a este
00:36:33
comando. ¿Y qué es lo que hace este comando? Pues este comando lo que me va a hacer es
00:36:40
mostrarme página a página, que para eso hemos utilizado este argumento, la información
00:36:44
que él ha recibido como entrada. Entonces, ¿para eso qué hemos utilizado? Pues para
00:36:50
eso hemos utilizado el pipeline que es la barrita vertical de acuerdo yo puedo juntar tantos comandos
00:36:57
mediante pipeline como a mí me dé la gana vale luego vamos a hacer un par de ejemplos para que
00:37:07
lo entendáis pero no quiero que penséis que el get process lo que me devuelve es una serie de
00:37:11
caracteres dándome una serie de información no me devuelve un objeto que os quede clarísimo todo en
00:37:18
powers el todo son objetos si bien si yo ejecuto este de get process el get process me está
00:37:23
devolviendo un objeto sí y ese objeto se lo pasó al out host que este lo que sí que hace es enviarlo
00:37:31
por pantalla sí pero y cómo puedo ver todo lo toda la información que me devuelve get process
00:37:39
Porque yo he dicho que GetProcess es un objeto y yo al empezar en este caso estos vídeos he dicho que un objeto se compone de una serie de propiedades y una serie de métodos.
00:37:47
Y os puse el ejemplo de, por ejemplo, un monitor. Un monitor tiene unas propiedades, tiene un peso, tiene unas dimensiones, tiene una marca, tiene un color, ¿sí? Y tiene unas propiedades, perdón, y unos métodos, y unos métodos de encender, subir el brillo, subir el contraste, bajar el contraste, ¿vale?
00:38:00
Y os puse también el ejemplo de un coche. Un coche tiene una serie de propiedades y una serie de métodos, ¿vale? Como encender, acelerar, frenar, ¿sí? Pues, ¿cómo puedo ver toda esa información que me devuelve GetProcess? Pues, hay una serie de comandos que nos van a permitir. Uno de los que más se utiliza es el siguiente, es GetMember, ¿vale?
00:38:18
Vamos a hacerlo, por ejemplo, para seguir las transparencias, vamos a seguir con el getLocation.
00:38:42
Si yo se lo paso, ¿vale?
00:38:52
Al comando que se llama getMember, ¿sí?
00:38:55
Le estoy diciendo, oye, del comando getLocation, el resultado de ese comando, que es un objeto, se lo voy a pasar a getMember.
00:39:01
¿Y qué es lo que hace getMember?
00:39:09
Lo que hace es decirme toda la estructura que contiene que es Location, ¿vale?
00:39:11
Entonces, si yo ahora le doy al Enter, quiero que veáis que me devuelve.
00:39:22
Yo tengo por aquí... Uy, perdón.
00:39:31
Ahora, yo tengo por aquí tres columnas.
00:39:37
el nombre que le doy a la propiedad vale como por ejemplo el ejemplo que estábamos poniendo
00:39:41
del monitor nosotros en el monitor tenemos una propiedad que es el color pues aquí pondría color
00:39:48
tenemos otro que es el peso pues aquí pondría peso tenemos otro que es el modelo pues aquí tendría
00:39:54
otro que es el modelo en la segunda columna tenemos aquí que es si es una propiedad o si
00:40:01
es un método sí y luego me aparece información de lo que da ese método o esa propiedad la tercera
00:40:09
columna de acuerdo sí vale si yo me voy a arriba del todo quiero que veáis que get location me está
00:40:20
devolviendo un objeto y ahora ese objeto cuál es pues veis que me pone aquí tip 9 y que me pone
00:40:34
aquí que este es el objeto que devuelve es decir cuando yo ejecuto get location que me devuelve me
00:40:43
devuelve un objeto y de qué tipo es ese objeto pues de tipo paz info y qué características y
00:40:52
qué propiedades y métodos tiene ese objeto pues todas las que veis ahí todos los métodos y todas
00:41:00
las propiedades de acuerdo pues vamos a ver cómo podemos trabajar un poquito con él entonces si
00:41:06
nosotros por ejemplo ahora vamos a probar con otro ejemplo que nos da mucho juego para ver cómo
00:41:14
funciona hay un comando que es este que fijaros que me devuelve que estamos el domingo 22 a las
00:41:20
cinco y media sí pero si yo quiero yo os he dicho que eso no devuelve una cadena devuelve
00:41:29
un objeto como puedo saber qué objeto devuelve y toda la información de ese objeto pues si yo
00:41:36
le pongo gate date le pongo con el pay line y le digo oye dime todos los miembros por favor
00:41:42
que me ver fijaros todo lo que me devuelve y me dice mira lo que devuelve en este caso
00:41:49
gt es un objeto de tipo date time esto es lo que devuelve gt y ahora cuáles son los miembros que
00:42:03
tiene qué miembros hay qué miembros tiene get member pues tiene en este caso todos estos de
00:42:12
aquí vale todos hoy perdonarme que estoy poniendo mal aquí todos estos de aquí sí y aquí tenemos el
00:42:21
nombre primera columna segunda columna qué tipo es si son propiedades si son métodos vale y una
00:42:33
descripción de lo que hace si entonces fijaros todo lo que tiene pero veis que no me cabe en
00:42:40
una pantalla verdad pues quien me pide hace quien me impide hacer esto dice oye dime los miembros
00:42:47
pero como no me caben en una pantalla vuelvo a pasárselo al siguiente comando que el siguiente
00:42:52
comando que hemos dicho es house y luego página a página entonces que le estoy diciendo con esto
00:43:01
Oye, quiero que me ejecutes este comando
00:43:07
Quiero que la salida de este comando se la pases como entrada al siguiente comando
00:43:11
Que el siguiente comando lo que hace es mostrarme toda la estructura de lo que me ha devuelto el objeto anterior
00:43:17
Pero a su vez, la salida de este comando se la voy a pasar como entrada al siguiente comando
00:43:25
¿Qué es lo que hace el siguiente comando?
00:43:32
Pues lo que devuelve lo muestra en pantalla página a página
00:43:34
Entonces si yo le doy aquí al enter
00:43:37
Fijaros que me la está mostrando
00:43:40
Página a página
00:43:42
¿De acuerdo?
00:43:44
¿Sí?
00:43:47
Entonces yo puedo ver toda la información
00:43:49
Y yo puedo seguir concatenando
00:43:51
Todo lo que me dé la gana
00:43:53
O sea, hasta el infinito y más allá
00:43:54
¿De acuerdo?
00:43:57
¿Qué valores nos vamos a poder nosotros encontrar?
00:43:59
En este caso aquí
00:44:04
Cuando yo le doy a get member
00:44:05
quiero que veáis que aquí tengo el nombre y tengo en método vale el tipo de miembro qué tipo de
00:44:07
miembro podemos encontrar podemos encontrar un montonazo vale pero aquí lo nosotros nos vamos
00:44:17
a centrar en dos en los que son métodos y en los que son propiedades pero que sepáis que tenemos
00:44:22
en este caso alias property code property tenemos no de property script property property set y
00:44:28
tenemos code method script method parametric set property y member set y all simplemente
00:44:37
con suene vale pero aquí repito solamente vamos a ver property y medios vale es decir
00:44:46
métodos y propiedades si yo sigo bajando por aquí abajo tenemos en este caso
00:44:52
los métodos y las propiedades, ¿vale?
00:44:58
Este es uno de los que os he dicho de NotedProperty, ¿de acuerdo?
00:45:03
Entonces aquí, repito, solamente vamos a ver los métodos y las propiedades
00:45:07
para no marearnos mucho y no entrar mucho en profundidad.
00:45:11
Vale, si yo quiero ver solamente de toda esta información,
00:45:15
imaginaros que yo solo quiero ver las Properties, ¿cómo lo puedo hacer?
00:45:19
Voy a salir de aquí, Q, y ahora le vamos a decir, oye,
00:45:23
quiero de gate date quiero que me digan los miembros pero le digo ahora oye quiero que
00:45:28
solamente me muestre los miembros cuyo tipo es y aquí le digo por ejemplo property fijaros que si
00:45:39
le doy al tabulador me van saliendo todos property set para meterse perdón para meter property
00:45:46
properties property set para matriz del property sí porque le dicho ya con la p por eso me pone
00:45:53
más si yo aquí quito todo y empiezo con el tabulador me muestra todos absolutamente todos
00:46:01
de acuerdo tabulador tabulador tabulador entonces ahora el que me interesa a mí es solamente ver las
00:46:06
propiedades pues le digo oye properties si le doy al intro y quiero que veáis que solamente me ha
00:46:12
ha devuelto cuyo miembro son propiedades esto incluye al note property y script
00:46:18
property vale que en este caso no lo vamos a ver si qué pasa si yo quiero
00:46:24
decirle que quiero ver los métodos pues en lugar de decirle aquí que quiero los
00:46:29
properties le oye quiero mostrar en este caso los métodos y aquí solamente me
00:46:32
está mostrando los métodos
00:46:39
ahora vamos a trabajar con que cómo utilizar esto de los métodos y las
00:46:43
propiedades qué pasa si yo por ejemplo quiero acceder a uno de los miembros de un objeto
00:46:46
por ejemplo vamos a vamos a empezar con las propiedades imaginaros que yo tengo voy a quitar
00:46:56
aquí que se ha refrescado mal imaginaros que yo le digo que te y le digo oye por favor dime los
00:47:02
miembros pero solamente me vas a dar los de tipo properties vale sí y quiero que veáis qué
00:47:21
propiedades tiene el objeto que te vale que hay algunas que son muy fáciles pongo este ejemplo
00:47:32
porque creo que es muy fácil de entender yo le he dicho oye dime la fecha la fecha me va a devolver
00:47:39
un objeto de tipo date time y tiene una serie de propiedades si por ejemplo este se entiende muy
00:47:45
bien me dice tiene el día es decir hay una variable hay una propiedad que es el día hay
00:47:52
otra que es el día de la semana hay otra que es el día del año hay otra que es la hora hay otra
00:48:00
que son los milisegundos, los minutos, el mes, los segundos, ¿vale? El año, ¿vale?
00:48:07
Que son los más fáciles de entender, ¿vale? Fijaros que prácticamente entendemos todos,
00:48:17
¿vale? Porque esta es la fecha entera, ¿de acuerdo? ¿Cómo puedo yo acceder a esos objetos?
00:48:21
Pues fijaros, si yo le digo aquí getDate, y ahora voy a ponerlo entre paréntesis, y ahora le digo punto.
00:48:28
Y si yo ahora le digo, por ejemplo, que me diga el day, y le doy al enter, quiero que veáis que me he devuelto.
00:48:40
Voy a poner solamente getDate para que veáis en qué fecha estamos.
00:48:52
Quiero que veáis
00:48:56
Quiero que veáis que estamos
00:48:58
A domingo
00:49:03
Día 22
00:49:03
De noviembre
00:49:06
Del año 2020
00:49:08
Y estos son las horas
00:49:10
Los minutos
00:49:12
Y los segundos
00:49:14
Pues que le hemos dicho aquí en day
00:49:15
Le hemos dicho
00:49:19
Que por favor nos diga
00:49:21
En que día estamos que es el 22
00:49:23
Y esto es lo que me ha devuelto
00:49:25
Entonces fijaros que lo que le he dicho es el comando
00:49:26
Lo he puesto entre abre y cierra paréntesis
00:49:31
Hemos puesto un punto
00:49:34
Y ya le hemos dicho de todas las propiedades que queremos que nos devuelva
00:49:35
El nombre de ella
00:49:40
Y fijaros que he utilizado el tabulador
00:49:42
Yo voy utilizando el tabulador, repito lo que he hecho
00:49:44
Le digo, oye
00:49:46
Get day, si escribo, claro
00:49:48
getday, hemos puesto entre paréntesis
00:49:52
ya le digo punto y fijaros que pasa si le voy dando al tabulador
00:49:56
tabulador, tabulador, tabulador, tabulador, tabulador, tabulador, tabulador
00:50:00
y me va mostrando en este caso todas las propiedades
00:50:04
que yo puedo utilizar y todos los métodos que yo puedo utilizar
00:50:09
con este cmdlet, con este comando
00:50:12
por ejemplo, si yo le digo que me ponga
00:50:17
por ejemplo el domingo si yo le digo de ahí de la semana de ifo wii que me pone sonday si son
00:50:21
de si sabemos un poquito de inglés sabemos que soy de acuerdo qué pasa vamos a uno por uno hemos
00:50:34
obtenido r hemos obtenido este hemos
00:50:42
obtenido este vamos a ir uno por uno
00:50:50
vamos a obtener vamos a intentar
00:50:53
obtener el mes aunque sea el número el
00:50:55
año y luego las horas los minutos y los
00:51:02
segundos
00:51:06
vale hemos tenido el domingo vale como
00:51:07
tenemos en este caso el día le hemos dicho de no 22 perfecto que le vamos a decir ahora porque le
00:51:11
hemos dicho el día le hemos dicho el día de la semana le podemos decir que nos diga el día del
00:51:20
año entero en el que estamos la hora los milisegundos los minutos el mes los segundos
00:51:26
el tiempo del día que esto no me acuerdo que devuelva ahora vamos a probar para que devuelve
00:51:35
por un acuerdo que devuelve y el año entonces vamos a poner ahora el mes que he dicho que
00:51:39
aunque no me aparezca noviembre pero que nos aparezca el mes así que le ponemos aquí el
00:51:44
monte y estamos a 11 de noviembre el año pues punto y tenemos 2020 la hora pues si le decimos
00:51:48
las horas que son 17 si le decimos los minutos milisegundos minutos y 41 y si le decimos los
00:52:01
segundos pues y 21 y ya tenemos fijaros que toda la información si entonces estamos accediendo a
00:52:11
sus propiedades es como si yo lo estuviese diciendo oye quiero que del monitor punto
00:52:18
me digas el tamaño punto tamaño punto color punto marca punto precio punto y siempre va a ser ponemos
00:52:24
entre paréntesis y le decimos el nombre de la propiedad que queremos obtener de acuerdo y qué
00:52:34
pasa si quiero acceder a los métodos pues vamos a el get date y le vamos a decir que quiero los
00:52:41
miembros oye dime cuáles son sus miembros pero quiero que solamente me digas cuáles son los
00:52:50
métodos y me dice mira estos son los métodos vamos a alguno que podamos entender vale sin
00:52:56
tener mucha idea de cómo funciona esto le hemos dicho que el get date me devuelve este objeto
00:53:03
vale ya lo hemos dicho varias veces ahora cuáles son los métodos los métodos que me está devolviendo
00:53:11
son todos estos de aquí bien por ejemplo si yo cojo este de aquí vamos a coger este de aquí
00:53:18
digo yo quiero que añada días hay un método que lo que hace es añadir días a la fecha
00:53:28
hay otro método que lo que hace es añadir horas a la fecha hay otro que añade minutos hay otro
00:53:34
que añade en este caso meses otro que añade segundos es decir veis de qué va la cosa
00:53:42
entonces hay métodos que lo que me permiten es operar hacer una serie de operaciones otro que
00:53:49
me permite añadir pues yo tengo por aquí una serie de métodos con lo que yo puedo traer yo
00:53:55
puedo trabajar sí entonces vamos a probar por ejemplo lo de añadir días hace desde este de
00:54:02
aquí vamos a trabajar con él sí entonces por ejemplo si yo le digo oye
00:54:09
get day hoy es domingo vale pero si yo le digo igual que antes lo
00:54:16
pongo entre paréntesis le pongo un punto y le digo a dd y le digo días e
00:54:22
imaginaros que yo le digo que quiero añadir aquí tres días
00:54:29
qué pensáis que le estamos diciendo con esto le estamos diciendo oye quiero que
00:54:33
cojas la fecha que me has devuelto hoy y quiero que le añadas tres días
00:54:37
si yo ahora esto le doy al enter es lo que me ha pasado
00:54:43
fijaros que me dice esto es el get day y esto es el get days más 3 que es esto
00:54:51
de más 3 22 23 24 y 25 es decir 22 más 3 pues tenemos aquí que me ha añadido tres
00:54:58
días fijaros que es noviembre 2020 la misma fecha la misma hora los mismos vale esto porque como lo
00:55:10
ejecutado en un instante posterior pero tengo todos los valores pero lo que he hecho es añadir
00:55:18
tres días entendéis sí imaginaros que yo os pido que quiero añadir un año pues si yo le digo oye
00:55:24
getDate y en lugar de
00:55:36
addDays, digo
00:55:39
horas, milisegundos, minutos
00:55:40
meses, segundos
00:55:43
y le digo years
00:55:44
años, le quiero
00:55:46
añadir 5 años
00:55:49
si
00:55:50
si yo le doy al
00:55:52
enter, pues fijaros que en lugar
00:55:55
2020 me pone 2025
00:55:56
es decir
00:55:58
son una serie de métodos con los que
00:56:00
yo puedo trabajar en el objeto
00:56:02
que me devuelve
00:56:04
¿Me seguís?
00:56:05
¿Sí?
00:56:08
¿Y qué pensáis que hace si yo hago esto?
00:56:09
¿Qué hace esto?
00:56:19
Pues fijaros que le estoy diciendo
00:56:22
Quiero que me devuelvas la fecha actual
00:56:24
Quiero que le añadas 5 años
00:56:27
Y quiero que de eso me digas el día de la semana
00:56:30
Y solamente me ha devuelto el día de la semana
00:56:34
¿Sí?
00:56:38
Porque tened en cuenta que aquí todo son objetos
00:56:40
Cuando yo le he dicho que me suma 5 años, pues me va a devolver la fecha de hace 5 años.
00:56:43
Es decir, que si yo aquí le digo, oye, dime los miembros, getMember, pues me devuelve un objeto.
00:56:50
¿Qué objeto me ha devuelto? Pues un objeto de tipo datetime.
00:57:03
Es decir, todo esto me ha devuelto un objeto de este tipo.
00:57:09
Y por eso le estoy diciendo que me devuelva, en este caso, que cuáles son los miembros.
00:57:15
¿De acuerdo?
00:57:23
Entonces, fijaros que esto se puede aplicar a cualquier comando que nosotros hemos visto.
00:57:25
A cualquiera, a cualquier comando que nosotros hemos visto.
00:57:32
¿Sí?
00:57:37
Por último, que sepáis que también podemos hacer, porque prácticamente todos los objetos lo tienen,
00:57:39
Yo le digo, oye, quiero que me devuelvan la fecha.
00:57:48
Y esto me devuelve la fecha como un objeto, que me lo muestra en pantalla, ¿vale?
00:57:51
Porque si yo no le digo nada, directamente me lo muestra por pantalla, pero es un objeto.
00:57:56
Pero yo le puedo decir, igual que hemos visto antes, le digo, oye, getDate, y le digo, pues, prácticamente todos los objetos tienen un método que se llama toString.
00:58:00
Que lo que hace es convertirlo en una cadena, que es la que muestra por pantalla, ¿vale?
00:58:09
Entonces, esto sí que es una cadena de caracteres.
00:58:15
Pero he tenido que utilizar un método y sé que es un método porque es el nombre del método, abre y cierra paréntesis y con los argumentos con los que tiene que trabajar. Por ejemplo, cuando decíamos añadir días, entre paréntesis le poníamos el número de días que queríamos añadir. No sé si os acordáis.
00:58:17
¿Vale? Pues hasta ahora vamos bien pero nos queda solamente una cosa
00:58:38
¿Qué pasa si yo quiero mostrar la salida pero de diferente manera?
00:58:45
Entonces si yo quiero controlar el formato en el que quiero que se me muestre la salida
00:58:52
Pues se utiliza prácticamente siempre en este caso las tuberías, el pipeline
00:58:56
Y vamos a ver tres comandos que se suelen utilizar
00:59:03
Primer comando que se suele utilizar
00:59:06
Imaginaros que yo le digo
00:59:10
A ver
00:59:12
Vamos a hacer el ejemplo, por ejemplo, con
00:59:16
No sé si recordáis que teníamos el get alias
00:59:20
Y tenemos aquí todos los alias
00:59:24
Si yo le digo get alias
00:59:26
Y le digo, por ejemplo, gm
00:59:29
Le digo, oye, muéstrame el alias que se llama gm
00:59:32
Quiero que veáis que hay un alias
00:59:35
Que se llama gm
00:59:37
que va a ejecutar getMember
00:59:39
es decir, ya hay un alias creado
00:59:42
¿qué quiere decir esto?
00:59:44
que si yo le digo por ejemplo
00:59:45
getAlias.gm
00:59:47
y se lo paso al alias que se llama gm
00:59:48
fijaros que me está haciendo exactamente lo mismo
00:59:52
que esto
00:59:55
es exactamente lo mismo
00:59:56
porque es un alias
01:00:00
¿sí?
01:00:01
entonces vamos a trabajar con esto de aquí
01:00:03
con getAlias.gm
01:00:05
primeramente
01:00:06
¿Qué me devuelve esto? Esto me devuelve, get alias gm, me devuelve un objeto de tipo alias info, este de aquí, alias info, que tiene en este caso sus métodos y sus propiedades.
01:00:08
Pues yo puedo decirle cómo quiero que se me muestre la información y vamos a ver las tres maneras en las que yo puedo decirle que me muestre la información.
01:00:30
Primera manera, hay uno que es format list, que lo que hace es mostrarme el objeto pero en formato de lista
01:00:37
Si yo le doy al intro, fijaros que me muestra en formato la información de dicho objeto
01:00:49
Me dice, oye, que sepas que el nombre para mostrar es este de aquí
01:00:56
El tipo de comando es de tipo alias
01:01:01
la definición es getMember
01:01:05
la referencia del comando es getMember
01:01:08
y el comando que se resuelve en este caso va a ser también getMember
01:01:12
pero aquí me muestra una serie de elementos
01:01:17
si yo quiero ver todo lo que hay, es decir, que me muestre todas las propiedades
01:01:21
yo le puedo decir, oye, formarList
01:01:27
y le voy a decir, en este caso
01:01:29
Oye, quiero que las propiedades que quiero que me muestres sean todas
01:01:32
Y le pongo aquí un asterisco
01:01:37
Si yo le pongo aquí un asterisco, quiero que veáis que es lo que me hace
01:01:38
Me muestra en formato de lista
01:01:41
Y me va mostrando
01:01:45
Lo pongo un poquito más para arriba
01:01:47
¿Vale? Le he dicho, oye, quiero que me muestres en formato lista
01:01:48
Todas las propiedades
01:01:57
Y me dice, mira, hay una propiedad que es esta
01:01:59
Y esta es su valor
01:02:02
Hay otra propiedad que en este caso es este
01:02:03
¿Vale? Que es el proveedor, que es un alias
01:02:07
El proveedor correspondiente
01:02:09
Que es el Microsoft PowerPair
01:02:12
Colearias
01:02:13
Me dice otra propiedad y me dice su valor
01:02:14
Me dice otra propiedad y me dice su valor
01:02:17
Y me va mostrando
01:02:20
Todas las propiedades
01:02:21
¿Si?
01:02:23
Imaginaros que yo solamente quiero que me muestre
01:02:25
Por ejemplo
01:02:27
El nombre
01:02:28
Y yo que se
01:02:30
Y este de Optiums
01:02:33
Yo solamente quiero ver esas dos propiedades, name y options. ¿Cómo lo hacemos? Pues en lugar de decirle, en este caso, que quiero ver todas las propiedades, le digo, oye, quiero ver las propiedades name, y estoy utilizando el tabulador, coma, y le digo, option, y estoy utilizando el tabulador, tabulador, tabulador, tabulador.
01:02:35
Si yo como coma y voy poniendo más propiedades, todas las que yo quiera, separadas por coma.
01:03:00
Entonces, si yo le digo esto, ¿qué es lo único que le estoy diciendo?
01:03:06
Oye, quiero que me ejecutes este comando, pero quiero que el formato de salida solamente me muestres las propiedades nombre y opciones.
01:03:09
Pues me dice, mira, nombre y opciones.
01:03:21
¿Me entendéis?
01:03:25
¿Sí?
01:03:26
esto para decirle
01:03:27
que quiero, de que quiero
01:03:31
mostrar información, pues también
01:03:33
tenemos otro que es el mismo
01:03:35
pero en lugar de format list
01:03:37
format que se llama white
01:03:39
si, esto solo
01:03:41
lo que hace es mostrar una única
01:03:43
propiedad, si
01:03:45
todas las
01:03:47
todos los objetos tienen una propiedad
01:03:49
por defecto que es la que se muestra, si yo le doy
01:03:51
aquí a enter, me demuestra
01:03:53
el gm, que por defecto
01:03:55
en este objeto es el nombre si yo le digo aquí forma list y le digo que me muestre todos vamos
01:03:57
a ver que fijaros que el nombre es el que me debe ver el que me devuelve que es gm que fijaros que
01:04:08
lo que me ha vuelto arriba gm pero imaginaros que yo lo que quiero que me devuelva es por ejemplo
01:04:16
pues yo que sé, esto que me pone
01:04:22
gel uri
01:04:24
¿sí? quiero que me devuelva
01:04:25
solo ese objeto, esa propiedad
01:04:28
pues si yo le pongo
01:04:30
aquí, oye
01:04:32
get alias format
01:04:33
white y le digo
01:04:36
oye, quiero que la propiedad que quiero
01:04:38
que me devuelvas es la que
01:04:40
se llama gel uri, le doy al
01:04:42
intro y que es lo que me ha devuelto
01:04:44
únicamente esa propiedad
01:04:46
¿sí?
01:04:48
¿me entendéis?
01:04:53
Si yo le pongo getDate y le digo, oye, formatList y le digo asterisco y fijaros que me devuelve todas las propiedades con todos los valores, pues es otra manera de obtener los valores.
01:04:54
Digo, oye, formatList y le digo, quiero que me devuelvas la propiedad y por ejemplo quiero que me devuelvas el day of week.
01:05:14
Y me dice, oye, el Sunday
01:05:24
Pero se me devuelve el nombre de la propiedad
01:05:27
Y el valor correspondiente
01:05:30
¿Yo qué le puedo decir?
01:05:31
En lugar de formar list, le puedo decir
01:05:33
Forman wait
01:05:35
Si yo no le digo nada
01:05:37
Me devuelve el que tiene por defecto
01:05:39
Pero si yo le digo, oye, quiero que me devuelvas
01:05:42
La propiedad, por ejemplo
01:05:45
Day of week
01:05:47
Y te dice, pues Sunday
01:05:50
¿Sí? Son diferentes maneras
01:05:52
con la que nosotros podemos trabajar entonces si yo quiero cambiar el formato de salida pues
01:05:54
utilizo o el formar list o el formato white sí pues me queda uno si tenemos en este caso formato
01:06:01
en este caso de campo único formato de lista pues nos queda el formato de tabla entonces yo
01:06:10
Yo le puedo decir, oye, quiero que me devuelvas, por ejemplo, ya que estamos con el GetDate, en el GetDate y le digo Format y le digo Table.
01:06:16
Si yo le doy, fijaros que me ha devuelto en formato de tabla.
01:06:29
si me muestra la fecha en este caso el día del mes el día de la semana el día del año vale la
01:06:33
hora los milisegundos los minutos los meses pero qué pasa si quiero cambiar lo que me aparece en
01:06:43
la tabla yo no quiero que me aparezca estos valores por defecto dentro de dentro de esta
01:06:49
tabla yo también puedo utilizar decirle que quiero que me muestre todas las propiedades
01:06:56
vale y fijaros que me muestra y todas las propiedades pero lo ideal es que yo aquí en
01:07:01
property le diga que quiero que me aparezca por ejemplo le puedo decir que quiero que me aparezca
01:07:07
el day coma le digo el day o week coma le puedo decir que me aparezca la hora los minutos y los
01:07:13
segundos si yo le doy al enter justamente me devuelve en formato de tabla las propiedades
01:07:28
que yo le he dicho sí que sepáis que yo tengo estos valores uno que se llama el auto si te
01:07:35
que lo que hace es calcular automáticamente el ancho de las columnas por si acaso no me cabe
01:07:43
en pantalla me los ajusta y también tengo el parámetro que se llama hoy que se llama currar
01:07:49
vale w rap que lo que hace es forzar a las salidas que son muy largas para que se adapten a sus
01:08:03
columnas vale para que no quede todo en farragoso sí y por último aquí no vas a apreciar diferencia
01:08:09
porque como caben todo en una línea pero si yo hubiese puesto aquí por ejemplo como que aquí
01:08:16
no vais a ver diferencia pero si yo pongo aquí el asterisco lo que intenta hacer es yo no sé
01:08:21
si veis aquí arriba aquí no vais a notar diferencia pero bueno lo que hace es intentar ajustar para que
01:08:28
quepa todo tanto el forma cuanto tanto el ancho de las columnas para que quepa todo dentro de
01:08:34
las dimensiones de la ventana y me queda uno que es el grupo yo puedo decirle que me agrupe en este
01:08:39
caso los valores por un cierto campo por ejemplo si yo le digo con lo de los procesos yo le digo
01:08:46
yo quiero que me muestres los procesos que se están ejecutando sí fijaros porque aquí me
01:08:59
aparece un montonazo de procesos pues si yo le digo primeramente el formato de tabla vale que
01:09:07
es el que me muestra en este caso por defecto si yo me voy para aquí arriba fijaros que me está
01:09:20
mostrando aquí ciertos campos de acuerdo en formato de tablas y el nombre del proceso que
01:09:26
es este de aquí pues yo aquí en el formato de tabla yo le puedo decir lo que hemos visto antes
01:09:37
digo oye quiero que me cojas y que las salidas largas se adapten a su colina a su columna y lo
01:09:45
pongo rock quiero que se calcula automáticamente el ancho de las columnas pues autos y d y además
01:09:55
Quiero decirle que, por ejemplo, las propiedades que quiero ver, va a ser el nombre del proceso, su identificador de proceso, teoría pura y dura, y le digo que quiero que me agrupe, le digo group by, y le digo que, por ejemplo, que me agrupe por compañía.
01:10:03
y le digo
01:10:26
company
01:10:28
si yo le doy al enter
01:10:30
quiero que veáis que aparece
01:10:32
fijaros que me dice
01:10:34
compañía y me pone aquí
01:10:37
los procesos, compañía y me pone
01:10:39
los procesos asociados
01:10:42
si yo me voy por ejemplo
01:10:43
a uno que se vea
01:10:45
me voy aquí
01:10:48
que me parece que como tenemos
01:10:49
instalado el chrome
01:10:51
voy para arriba para que lo veáis claro
01:10:52
porque como no tenemos aquí prácticamente nada instalado
01:10:56
aquí, quiero que veáis
01:11:02
que me dice, mira, tú me has pedido
01:11:04
que yo agrupe por compañía
01:11:06
entonces te dice, mira, todos los procesos
01:11:08
que se están ejecutando
01:11:10
en este caso del Chrome, ¿vale?
01:11:12
y te dice, mira, todos estos
01:11:14
son los procesos que se están ejecutando
01:11:16
del Chrome
01:11:18
y me has pedido el nombre
01:11:18
y me has pedido el identificador
01:11:22
de proceso, porque esto es lo que me has pedido aquí
01:11:24
¿vale?
01:11:26
Le he dicho, oye, quiero que me digas todos los procesos que se están ejecutando. Ya tenemos que saber que es un proceso. Quiero que me lo muestres en formato de tabla. ¿Sí? Quiero que solamente me devuelvas el nombre y el ID. Pues esto es lo que me está devolviendo aquí, el nombre y el ID.
01:11:27
Y quiero que me lo organices, en este caso, por compañía. Pues me dice, vale, primera, compañía, lo de Google, y me aparecen todos los procesos de Google.
01:11:46
Compañía, dependiendo de qué se basa, aunque ponga aquí Microsoft Corporation, y aquí abajo también veréis, son diferentes tipos de agrupaciones.
01:11:57
Pero esto, por eso he querido que veáis el Google para que lo veáis más claro.
01:12:07
Si yo tuviese aquí de Adobe, pues me pondría, oye, compañía, Adobe, y me pondría todos los procesos que está ejecutando, en este caso, ese tipo de aplicación, ¿de acuerdo? Entonces yo puedo agrupar por qué quiero que me aparezca, ¿sí? Entonces, las tres maneras en las que nosotros podemos ver la información, ¿de acuerdo?
01:12:09
Vale, solamente una aclaración
01:12:32
Si yo pongo getAlias
01:12:36
Bien escrito, obviamente
01:12:37
Tenemos todos estos, ¿verdad?
01:12:39
Todos los alias
01:12:43
Si yo le digo getAlias y que me diga
01:12:44
F asterisco
01:12:47
Quiero que veáis aquí una cosita
01:12:50
Tengo un alias
01:12:51
Para formatList
01:12:54
Que como se llama
01:12:57
FL, las iniciales
01:12:58
Tengo un alias para formatTable
01:13:00
que como es
01:13:04
las iniciales ft
01:13:05
y tengo un alias para
01:13:07
format white
01:13:09
que es el alias fw
01:13:11
que estoy diciendo con esto
01:13:13
que si no queréis escribir
01:13:15
podéis utilizar el alias porque son alias
01:13:17
que ya están preestablecidos
01:13:19
es decir que si yo pongo get date
01:13:21
y le digo por ejemplo
01:13:23
fl
01:13:27
es lo mismo que poner format list
01:13:28
y le digo oye quiero
01:13:32
las properties y quiero por ejemplo
01:13:33
todas y me está haciendo exactamente
01:13:35
lo mismo
01:13:37
que yo le digo getDate y le digo
01:13:38
fw y le digo oye
01:13:41
quiero que me devuelvas el property year
01:13:43
pues es lo mismo
01:13:45
que format white
01:13:47
que yo quiero en este caso
01:13:49
format table ft
01:13:51
y le digo mira el año
01:13:53
el mes
01:13:55
y
01:13:57
el día y me lo dice
01:13:58
en formato de tabla
01:14:01
Entonces, fijaros que podemos utilizar los alias tranquilamente, ¿vale? Tanto para uno como para otro, ¿de acuerdo? Y ahora, solo para terminar esta parte, y ya con esto lo dejo, que ya tenemos aquí las dos horas de clase, hay otro comando que también se suele utilizar mucho.
01:14:03
Si yo utilizo el getDay, pero bien escrito, y le digo que me diga los miembros, me devuelve todos estos miembros.
01:14:25
Pues yo puedo utilizar un comando que se llama selectOject, que lo que nos va a permitir es seleccionar del objeto que hemos tenido tras ejecutar un comando, solamente aquellas propiedades que a nosotros nos interesen.
01:14:37
Lo hago con un ejemplo. Imaginaros que yo le digo getDate. Yo ahora le puedo decir, oye, quiero seleccionar, en este caso, solamente del objeto que me ha devuelto, quiero seleccionar las propiedades.
01:14:53
Y por ejemplo le digo el año, el mes y el día de la semana.
01:15:14
Entonces, ¿qué es lo que he hecho aquí?
01:15:25
Le he dicho, oye, quiero que me ejecutes este comando.
01:15:28
Este comando se lo voy a pasar al siguiente.
01:15:31
Este comando lo que hace es, de todo lo que me ha devuelto GetDate,
01:15:34
solamente me va a crear un nuevo objeto con estas propiedades.
01:15:38
Con año, mes y día.
01:15:42
¿Sí? Si yo ahora le digo a este, oye, por favor, dime cuáles son tus miembros, quiero que veáis que es lo que me devuelve. Fijaros que me dice, ¿cuáles son los miembros que me ha devuelto este de aquí? Pues me dice, mira, los miembros que me ha devuelto son año, mes y día.
01:15:44
¿Vale? Todo esto de aquí lo tienen todos los objetos, así que por ahora nos olvidamos. Pero fijaros que ahora esto de aquí, fijaros que el de arriba era mucha información, toda esta información, ahora lo único que me devuelve es una pequeña propiedades de ese objeto.
01:16:05
Es decir, acabamos de coger un objeto y hemos hecho otro objeto con un conjunto de propiedades muy limitadas.
01:16:27
Y yo con este le puedo decir, oye, en lugar de decirme los miembros, pues le digo, mira, muéstrame en este caso, getList,
01:16:35
ahí, perdón, formalList, tuyo empanado, y le digo, muéstrame todas las propiedades.
01:16:50
y solamente me muestra las que son
01:16:58
las tres que hemos cogido
01:17:00
el año, el mes y el día del mes
01:17:02
entonces yo ya he reducido
01:17:04
los datos con los que yo quiero
01:17:06
trabajar, ¿de acuerdo? entonces hay a veces
01:17:08
que resulta cómodo
01:17:10
¿sí?
01:17:11
vale, pues voy a dejarlo
01:17:15
por aquí, que es la primera introducción
01:17:17
en este caso a PowerShell y luego seguimos
01:17:19
venga, un saludo
01:17:22
- Idioma/s:
- Autor/es:
- Fernando Herrero Núñez
- Subido por:
- Fernando Jesús H.
- Licencia:
- Reconocimiento - No comercial - Sin obra derivada
- Visualizaciones:
- 39
- Fecha:
- 30 de diciembre de 2022 - 19:54
- Visibilidad:
- Público
- Centro:
- IES EL CAÑAVERAL
- Duración:
- 1h′ 17′ 25″
- Relación de aspecto:
- 2.03:1
- Resolución:
- 1920x948 píxeles
- Tamaño:
- 252.70 MBytes