Download CLI - quieroaprender.mx

Document related concepts
Transcript
[Año]
Universidad Veracruzana
Erick Javier Reyes Reyes
[CLI WINDOWS/UNIX/MAC OS X]
CLI de Windows
La Línea de Comandos de Windows es una implementación de la consola MS-DOS para la interfaz
gráfica de las diversas versiones Microsoft Windows.
Los sistemas operativos Windows XP y Vista, al encontrarse basados en el núcleo de Windows NT,
no se basa en un intérprete de comandos en modo texto (MS-DOS), por lo cual la línea de
comandos no es un elemento esencial para el sistema operativo. Aun así, la línea de comandos se
sigue incluyendo como un accesorio del sistema.
El símbolo del sistema (en inglés, Command prompt, también conocido como cmd.exe o cmd) es el
intérprete de comandos en OS/2 y sistemas basados en Windows NT (incluyendo Windows 2000,
Windows XP, Windows Server 2003, Windows Vista , Windows 7 , Windows 8 , Windows 8.1 y
Windows 10). Es el equivalente de command.com en MS-DOS y sistemas de la familia Windows 9x.
A diferencia de su antecesor (command.com), este programa es tan solo una aplicación, no es una
parte del sistema operativo y no posee la función de cargar la configuración al arrancar el sistema.
Muchas funciones que se realizan desde la interfaz gráfica de algún sistema operativo son
enviadas al cmd que es el encargado de ejecutarlas. Esto no es del todo cierto en Windows debido
a que hay muchas más opciones realizables que no son enviadas al cmd (command) se ejecutan
mediante scripts.
https://es.wikipedia.org/wiki/L%C3%ADnea_de_comandos_de_Windows
CLI de Unix
Una Shell de Unix o también shell, es el término usado en informática para referirse a un
intérprete de comandos, el cual consiste en la interfaz de usuario tradicional de los sistemas
operativos basados en Unix y similares como GNU/Linux.
Mediante las instrucciones que aporta el intérprete, el usuario puede comunicarse con el núcleo y
por extensión, ejecutar dichas órdenes, así como herramientas que le permiten controlar el
funcionamiento de la computadora.
Los usuarios de Unix y similares, pueden elegir entre distintos shells (programa que se debería
ejecutar cuando inician la sesión, véase bash, ash, csh, Zsh, ksh, tcsh). Las interfaces de usuario
gráficas para Unix, como son GNOME, KDE y Xfce pueden ser llamadas shells visuales o shells
gráficas. Por sí mismo, el término shell es asociado usualmente con la línea de comandos. En Unix,
cualquier programa puede ser un shell de usuario. Los usuarios que desean utilizar una sintaxis
diferente para redactar comandos, pueden especificar un intérprete diferente como su shell de
usuario.
El término shell también hace referencia a un programa particular, tal como el Bourne shell, sh. El
Bourne shell fue el shell usado en las primeras versiones de Unix y se convirtió en un estándar de
facto; todos los sistemas similares a Unix tienen al menos un shell compatible con el Bourne shell.
El programa Bourne shell se encuentra dentro de la jerarquía de archivos de Unix en /bin/sh. En
algunos sistemas, tal como BSD, /bin/sh es un Bourne shell o un equivalente, pero en otros
sistemas como muchas distribuciones de Linux, /bin/sh es un enlace simbólico a un shell
compatible con más características (como Bash). POSIX especifica su shell estándar como un
subconjunto estricto del Korn shell.
Categorías de shell
Pueden dividirse en cuatro categorías: tipo Bourne, tipo consola C, no tradicional e
histórica.
Compatibles con Bourne shell






Bourne shell (sh) -- Escrita por Steve Bourne, cuando estaba en Bell Labs. Se distribuyó por
primera vez con la Version 7 Unix, en 1978, y se mejoró con los años.
Almquist shell (ash) -- Se escribió como reemplazo de la shell Bourne con licencia BSD; la
sh de FreeBSD, NetBSD (y sus derivados) están basados en ash y se han mejorado
conforme a POSIX para la ocasión.
Bourne-Again shell (bash) -- Se escribió como parte del proyecto GNU para proveerlo de
un superconjunto de funcionalidad con la shell Bourne.
Debian Almquist shell (dash) -- Dash es un reemplazo moderno de ash en Debian.
Korn shell (ksh) -- Escrita por David Korn, miestras estuvo en Bell Labs.
Z shell (zsh) -- Considerada como la más completa: es lo más cercano que existe en abarcar
un superconjunto de sh, ash, bash, csh, ksh, y tcsh.
Compatibles con la shell de C


C shell (csh) escrita por Bill Joy, mientras estuvo en la University of California, Berkeley. Se
distribuyó por primera vez con BSD en 1979.
TENEX C shell (tcsh).
Otros o exóticos






fish, una shell amigable e interctiva, lanzada por primera vez en 2005.
mudsh, una shell inteligente al estilo de los videojuegos que opera como un MUD.
zoidberg, una shell modular escrita en Perl, configurada y de operación completamente en
Perl.
rc, el shell por defecto de Plan 9 from Bell Labs y Version 10 de Unix escrita por Tom Duff.
Se han hecho ports para Inferno y para sistemas operativos basados en Unix.
es shell (es), una shell compatible con RC escrita a mediados de los 90.
scsh (Scheme Shell)
Archivos de configuración para shells
Un shell lee archivos de configuración en múltiples circunstancias bajo diferentes
dependencias de la shell. Esta tabla muestra los achivos de configuración de las shells más
populares:
sh
ksh csh tcsh bash
zsh
/etc/.login
no
no login login
no
no
/etc/csh.cshrc
no
no
no
no
no
/etc/csh.login
no
no
no login
no
no
~/.tcshrc
no
no
no
yes
no
no
~/.cshrc
no
no
yes yes
no
no
~/.login
no
no login login
no
no
~/.logout
no
no login login
no
no
yes
/etc/profile
login login no
no i.login no
~/.profile
login login no
no
login
no
~/.bash_profile no
no
no
no
login
no
~/.bash_login
no
no
no
no
login
no
~/.bashrc
no
no
no
no n/login no
/etc/zshenv
no
no
no
no
no
yes
/etc/zprofile
no
no
no
no
no
login
/etc/zshrc
no
no
no
no
no
int.
/etc/zlogin
no
no
no
no
no
login
/etc/zlogout
no
no
no
no
no
login
~/.zshenv
no
no
no
no
no
yes
~/.zprofile
no
no
no
no
no
login
~/.zshrc
no
no
no
no
no
int.
~/.zlogin
no
no
no
no
no
login
~/.zlogout
no
no
no
no
no
login
Explicación:






"no" significa que la shell no leerá el archivo en absoluto.
"yes" significa que el archivo es siempre leído por el shell.
"login" significa que el archivo es leído si la shell es una shell de sesión (loging shell).
"n/login" significa que el archivo es leído si la shell no es una shell de sesión.
"int." significa que un archivo es leído si es un shell interactivo.
"i.login" significa que un archivo es leído si la shell es de sesión interactiva.
https://es.wikipedia.org/wiki/Shell_de_Unix
CLI de Mac OS X
Mac OS X, como un tipo de UNIX que es también dispone de un terminal. El shell es el programa
que controla el terminal y que permite ejecutar otros programas.
En los sistemas UNIX no hay un shell, sino muchos. Los shells más conocidos son:
Shell
sh
bash
csh
tcsh
chs
ksh
Descripción
(bourne SHell) Es el shell original de UNIX, es el más simple de todos, con lo que casi
nadie lo utiliza. Sin embargo si que lo utilizan muchas veces los programas de
instalación, ya que por ser el mínimo común divisor de todos los shells, sus comandos
ejecutan bien en todos los shells.
(Bourne Again SHell) El shell de GNU. Es el que utiliza por defecto Mac OS X y Linux.
(C SHell) Es un shell desarrollado en la Universidad de Berkeley con una sintaxis más
parecida a la de el lenguaje C.
(Tenex C SHell) es un csh mejorado. Fue usado por Mac OS X hasta la versión 10.2
(Ch Shell) Posiblemente el shell más completo y potente que existe. Tiene un lenguaje
de script con sintaxis muy parecida a la de C++. Por desgracia está poco extendido.
(Korn SHell) Un shell usado en sistemas UNIX como AIX de IBM.
El shell que ejecuta Mac OS X por defecto es bash.
http://www.macprogramadores.org/?q=content/terminal