viernes, 6 de mayo de 2011

Script


¿Qué es un script?

Un script es una serie de instrucciones los cuales conforman a los programas escritos en unix.

Es una lista de comandos en un archivo, y que se pueden ejecutar todos de una sola vez, sólo invocando el nombre del archivo

Estructura de un script:

Comentarios. Sirven para guiar, e sdecir, saber que se esta realizando en esa instrucción.

En un script todo lo que venga después del símbolo # y hasta el próximo caracter nueva línea se toma como comentario y no se ejecuta.

Ejemplo:

echo Hola todos # comentario hasta fin de línea

sólo imprime "Hola todos".

# cat /etc/passwd

no ejecuta nada, pues el símbolo # convierte toda la línea en comentario.

Los scripts suelen encabezarse con comentarios que indican el nombre de archivo y lo que hace el script. Se colocan comentarios de documentación en diferentes partes del script para mejorar la comprensión y facilitar el mantenimiento

Ejemplo:

# Script que nos muestra por pantalla la #fecha, la hora, la

#maquina en que estamos, nuestro username, #nuestro numero

#identificador de usuario y de grupo, quien #esta conectado

# a la maquina y el directorio en que estamos

echo " "

echo " "

echo "la fecha de hoy es `date`"

echo "La maquina en que estas trabajando es: $HOST"

echo ""

echo -n "Tu user name es: "

whoami

echo ""

echo "En la maquina estan conectadas las siguientes personas "

who

echo "Estas en el directorio `pwd`"

Instrucciones que es necesario realizar para la practica:

  1. Abre el editor de texto nano (en terminal)

  2. Copia el código de ejemplo que se mostró arriba

  3. Guarda el archivo con el nombre de sc_apellido_num_lista (por ejemplo sc_chavez_15) con Ctrl y X, Y, nombre

  4. Sal de nano

  5. Copia el archivo al escritorio

  6. Pasa al directorio desktop

  7. Cambia los permisos del archivo a 777

  8. Observa como cambia el icono

  9. Ejecuta el archivo de la forma siguiente:

    ./nombre_del_archivo

  10. La salida debe ser parecido a:


    10. Teclea el comando cat seguido de nombre_del_ archivo

martes, 29 de marzo de 2011

Comandos Terminal :D

  cd        Change Directory •   chmod     Change access permissions
chmod xxx negar o aceptar permisos, segun convenga
chmod xxx-xxx-xxx negar o aceptar los permisos , segun convenga
  cp        Copy one or more files to another location 
 echo      Display message on screen •
  ls        List information about file(s)   man       Help manual   mkdir     Create new folder(s)   mv        Move or rename files or directories   passwd    Modify a user password   paste     Merge lines of files   pwd       Print Working Directory •   rcp       Copy files between machines   read      Read one line from standard input •   readonly  Mark a variable or function as read-only •   return    Exit a function •   rm        Remove files   rmdir     Remove folder(s)   say       Convert text to audible speech   write     Send a message to another user   yes       Print a string until interrupted
ls -l muestra los archioçvos recientemente usados y por quien
ls -F muestra carpetas del home
ls -a muestra TODOS los archivos, incluso los ocultos
cd x llegar al lugar deseado
cal calendario del mes
cal fecha año calendario preciso de la fecha establecida
cal -y calendario del año
 cal [-jy] [[month] year]      cal [-j] -m month [year]      ncal [-jJpwy] [-s country_code] [[month] year]      ncal [-Jeo] [year] 
cd ../ usuarios

2. Indica cuál es el comando de unix para:

Obtener la fecha del sistema

-Date

Saber cuanto tiempo lleva encendido el sistema

-uptime

Conocer cuántos archivos o carpetas están el escritorio

-ls

Copiar un archivo llamado recursos.txt que se encuentra en el home y se desea enviar la información a un directorio llamado practicas que esta dentro de otro directorio llamado clase2 y este a su ve esta dentro de otra carpeta llamado curso y que esa carpeta se encuentra en Documentos

cd, mv recursos.txt documentos/cursos/clase2/Practicas

viernes, 14 de enero de 2011

Sistema Operativo de Software libre (Linux)

Entre las distribuciones Linux más populares se incluyen:

  • Arch Linux, una distribución basada en el principio KISS con un sistema de desarrollo continuo entre cada versión (no es necesario volver a instalar todo el sistema para actualizarlo).
  • CentOS, una distribución creada a partir del mismo código del sistema Red Hat pero mantenida por una comunidad de desarrolladores voluntarios.
  • Debian, una distribución mantenida por una red de desarrolladores voluntarios con un gran compromiso por los principios del software libre.
  • Fedora, una distribución lanzada por Red Hat para la comunidad.
  • Gentoo, una distribución orientada a usuarios avanzados, conocida por la similitud en su sistema de paquetes con el FreeBSD Ports, un sistema que automatiza la compilación de aplicaciones desde su código fuente.
  • gOS, una distribución basada en Ubuntu para netbooks.
  • Knoppix, la primera distribución live en correr completamente desde un medio extraíble. Está basada en Debian.
  • Kubuntu, la versión en KDE de Ubuntu.
  • Linux Mint, una popular distribución derivada de Ubuntu.
  • Mandriva, mantenida por la compañía francesa del mismo nombre, es un sistema popular en Francia y Brasil. Está basada en Red Hat.
  • openSUSE, originalmente basada en Slackware es patrocinada actualmente por la compañía Novell.
  • PCLinuxOS, derivada de Mandriva, paso de ser un pequeño proyecto a una popular distribución con una gran comunidad de desarrolladores.
  • Puppy Linux,version para pc's antiguas o con pocos recuersos que pesa 130 mb.
  • Red Hat Enterprise Linux, derivada de Fedora, es mantenida y soportada comercialmente por Red Hat.
  • Slackware, una de las primeras distribuciones Linux y la más antigua en funcionamiento. Fue fundada en 1993 y desde entonces ha sido mantenida activamente por Patrick J. Volkerding.
  • Slax, es un sistema Linux pequeño, moderno, rápido y portable orientado a la modularidad. Está basado en Slackware.
  • Ubuntu, una popular distribución para escritorio basada en Debian y mantenida por Canonical.
  • Dragora y Trisquel GNU/Linux, que van adquiriendo importancia entre las distribuciones que sólo contienen software libre.
  • Canaima (distribución Linux), es un proyecto socio-tecnológico abierto, construido de forma colaborativa, desarrollado en Venezuela basado en Debian.

El sitio web DistroWatch ofrece una lista de las distribuciones más populares; la lista está basada principalmente en el número de visitas, por lo que no ofrece resultados muy confiables acerca de la popularidad de las distribuciones.

Sistema Operativo

Un sistema operativo (SO) según la Real Académia Española es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones1 .

Un sistema operativo (SO) es el software base compuesto de aplicaciones, bibliotecas, herramientas de programación y un núcleo que permiten a un usuario utilizar un computador.

Nótese que es un error común muy extendido denominar al núcleo sistema operativo, el núcleo por si solo no es un Sistema operativo. Uno de los más prominentes ejemplos de esta diferencia, es el núcleo Linux, el cual es el núcleo del sistema operativo GNU, del cual existen las llamadas distribuciones GNU .

Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores2 se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de gestionar.3 (Véase AmigaOS, beOS o MacOS como los pioneros4 de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters5por su capacidad para la Edición de vídeo en entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D.

Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (teléfonos móviles, reproductores de DVD, computadoras, radios, etc.)

Copyleft

Copyleft es una característica de algunas licencias utilizadas para regular las restricciones impuestas por el derecho de autor de obras o trabajos, tales como programas informáticos, arte, cultura yciencia, es decir prácticamente casi cualquier tipo de producción creativa.

El nombre surge como oposición al copyright tradicional. Se considera que una licencia es copyleft cuando además de otorgar permisos de copia, modificación y redistribución de la obra protegida, contiene una cláusula que impone la misma licencia a las copias y a las obras derivadas.

Sus partidarios la proponen como alternativa a las restricciones que imponen las normas planteadas en los derechos de autor, a la hora de hacer, modificar y distribuir copias de una obra determinada. Se pretende garantizar así una mayor libertad para que cada receptor de una copia, o una versión derivada de un trabajo, pueda, a su vez, usar, modificar y redistribuir tanto el propio trabajo como las versiones derivadas del mismo.

Software Semilibre

El software semilibre (semi-free en inglés), es una categoría de programas informáticos que no son libres, pero que vienen con autorización de uso, copia, modificación y redistribución (incluso de versiones modificadas) sin fines de lucro (PGPsería un ejemplo de un programa semilibre).

Según la la Fundación para el Software Libre (FSF), el software semilibre es mucho mejor que el software no libre, pero aún plantea problemas y no podría ser usado en un sistema operativo libre. Esto se debe a la imposibilidad de incluirlo en un sistema de ese tipo, ya que los «términos de distribución para el sistema operativo libre como un todo es la conjunción de los términos de distribución de todos los programas en él» y al agregar un programa semilibre haría que el sistema fuera un todo sólo semilibre.