Overzicht
csh is een shell die eind jaren zeventig werd ontwikkeld. In tegenstelling tot de Bourne shell (sh) biedt het besturingsstructuren (if, while, foreach, etc.) die vergelijkbaar zijn met de C-taal. Hoewel het gebruiksvriendelijke functies en krachtige scriptingmogelijkheden heeft, kan het bij het schrijven van complexe functies of scripts complexer zijn of onverwacht gedrag vertonen in vergelijking met Bourne shell-varianten (bash, zsh).
Belangrijkste kenmerken
- Syntaxis vergelijkbaar met C-taal
- Commando-geschiedenis en alias-functie
- Ondersteuning voor taakbeheer (job control)
- Omgevingsvariabelenbeheer (set, setenv)
Belangrijkste opties
Dit zijn de belangrijkste opties die u kunt gebruiken bij het uitvoeren van het csh-commando.
Uitvoering en debugging
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`csh` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Dit zijn verschillende voorbeelden van het gebruik van het csh-commando.
Interactieve C shell starten
csh
Start een nieuwe interactieve C shell-sessie.
Enkel C shell commando uitvoeren
csh -c 'echo "Hello from Csh!"'
Voert een specifiek commando uit met csh en sluit de shell af.
C shell script uitvoeren
csh my_script.csh
Voert het bestand my_script.csh uit als een C shell script. (Het scriptbestand moet uitvoeringsrechten hebben.)
Script uitvoeren in gedetailleerde modus
csh -v my_script.csh
Elk commando wordt naar standaardfout weergegeven voordat het script wordt uitgevoerd, wat nuttig is voor debugging.
Script uitvoeren in commando echo-modus
csh -x my_script.csh
Elk commando in het script wordt weergegeven voordat het in uitgebreide vorm wordt uitgevoerd.
Installatie
csh is standaard geïnstalleerd op veel Unix- en Linux-systemen, maar op sommige minimale installaties moet het mogelijk handmatig worden geïnstalleerd. Hier leest u hoe u csh installeert op de belangrijkste distributies.
Debian/Ubuntu-gebaseerde systemen
sudo apt update
sudo apt install csh
Installeer csh met de apt-pakketbeheerder.
Red Hat/CentOS/Fedora-gebaseerde systemen
sudo yum install csh # of sudo dnf install csh
Installeer csh met de yum- of dnf-pakketbeheerder.
Tips & Aandachtspunten
Dit zijn nuttige tips en aandachtspunten bij het gebruik van csh.
Verschillen met Bourne shell
csh heeft veel syntactische verschillen met Bourne shell-varianten zoals bash, sh en zsh. Vooral de manier van variabele declaratie en toegang, voorwaardelijke statements en lusstructuren verschillen aanzienlijk, dus wees voorzichtig bij het schrijven van scripts.
- Variabele instellen: csh: `set var = value`, `setenv VAR value` Bourne shell: `var=value`, `export VAR=value`
- Voorwaardelijke statements: csh: `if (condition) then ... endif` Bourne shell: `if [ condition ]; then ... fi`
- Arrays: csh gebruikt 1-gebaseerde indexering voor arrays.
Gebruik van tcsh aanbevolen
csh wordt niet meer actief ontwikkeld. Op de meeste moderne systemen wordt het gebruik van tcsh (TENEX C Shell), een verbeterde versie van csh, aanbevolen. tcsh bevat alle functies van csh en biedt extra functies zoals opdrachtregelbewerking, verbeterd geschiedenisbeheer en programmeerbare voltooiingsfuncties.
Meer voor interactieve shells dan voor scripting
Hoewel csh uitstekend is als interactieve shell, worden Bourne shell-varianten (bash, zsh) over het algemeen de voorkeur gegeven voor het schrijven van complexe scripts, omdat ze krachtiger, flexibeler zijn en minder onverwacht gedrag vertonen. csh-scripts kunnen compatibiliteitsproblemen veroorzaken of bugs introduceren in specifieke situaties.