Csh

caparazón C
Tipo de Consola de comandos UNIX
Autor Bill alegría
Desarrollador Bill alegría
Escrito en xi
Sistema operativo BSD , UNIX , Linux , Mac OS X
Primera edición 1978 ( 1978 )
ultima versión 6.20.00 ( 24 de noviembre de 2016 [1] )
Licencia licencia BSD

El shell C ( csh ) es un shell UNIX con un lenguaje de secuencias de comandos incrustado desarrollado en 1979 por Bill Joy , desarrollador activo de BSD UNIX y creador del editor vi , en 1979 .

Basado en el código del intérprete de comandos de la sexta versión de UNIX . El lenguaje de secuencias de comandos no es inferior al shell de Bourne en términos de potencia, pero difiere en la sintaxis. Mientras que Bourne copió todos los operadores básicos de Algol 68 , Bill Joy usó C como diseño , probablemente basado en sus propias preferencias y las de otros usuarios de BSD UNIX.

A principios de la década de 1990, el shell C fue criticado por su ambigüedad y su intérprete lacónico que detiene la ejecución del script pero no brinda ningún detalle sobre lo que realmente sucedió. A veces, los scripts csh no funcionaban como esperaba el usuario. También hubo situaciones en las que el intérprete rechazó líneas de código aparentemente coherentes.

El shell C se envió con 4.1BSD y sigue siendo una parte central de todos sus descendientes, incluidos FreeBSD y OpenBSD .

Comparación con la concha de Bourne

Condición

concha de bourne

#!/bin/sh if [ $days -gt 365 ] then echo Esto es más de un año. fi

caparazón C

#!/bin/csh if ( $days > 365 ) then echo Esto es más de un año. terminara si

Bucle con condición previa

concha de bourne

#!/bin/sh i = 2 j = 1 while [ $j -le 10 ] do echo '2 **' $j = $i i = ` expr $i '*' 2 ` j = ` expr $j + 1 ` hecho

caparazón C

#!/bin/csh establece i = 2 establece j = 1 while ( $j < = 10 ) echo '2 **' $j = $i @ i * = 2 @j++ final

Bucle con contador

concha de bourne

#!/bin/sh para i en d* ¿ caso $i en d? ) echo $i es corto ;; * ) echo $i es largo ;; esac hecho

caparazón C

#!/bin/csh foreach i ( d* ) switch ( $i ) case d?: echo $i es un descanso corto por defecto : echo $i es un final largow end

Notas

  1. Zoulas, Christos (24 de noviembre de 2016), ¡tcsh-6.20.00 ya está disponible! , < http://mx.gw.com/pipermail/tcsh/2016-November/005021.html > . Consultado el 24 de noviembre de 2016. Archivado el 25 de noviembre de 2016 en Wayback Machine . 

Véase también