Difference between revisions of "Bash"

From Teknologisk videncenter
Jump to: navigation, search
m
m (Filer)
Line 16: Line 16:
 
*'''$HOME/.inputrc'''
 
*'''$HOME/.inputrc'''
 
**Denne fil indeholder opstartskommandoer til '''bash'''. Anvendes til for eksempel at ændre tastatur genveje.
 
**Denne fil indeholder opstartskommandoer til '''bash'''. Anvendes til for eksempel at ændre tastatur genveje.
 +
== Online bash hjælp ==
 +
*On line manualen: '''man bash'''
 +
*indbygget bash hjælp: '''help'''
 +
*hjælp til bash indbyggede kommandoer: '''help while''' (eksempel)
 +
== bash tilpasning med set kommandoen ==
 +
Hvis du ønsker at ændre bash måde at fungere på kan '''set''' kommandoen anvendes. Dette er normalt ikke nødvendigt.
 +
*Kommandoer
 +
**help set
 +
=== debugging scripts ===
 +
Det kan være svært at debugge scripts og se hvor problemet er. Her kan bash sættes i enten ''verbose'' eller '''trace''' mode. '''Verbose''' eller '''trace''' mode kan slås til og fra efter behag i dit script.
 +
<source lang=bash>
 +
#!/usr/bin/bash
 +
 +
...
 +
#Kode her er OK
 +
...
 +
 +
set -x    #bash trace mode slået til og alle kommandoer udført vises på skærmen
 +
 +
...
 +
#mistænkelig kode her
 +
...
 +
 +
set +x  #bash trace mode slået fra og bash fungerer normalt
 +
 +
...
 +
#kode her er ok
 +
...
 +
</source>
 +
==
  
 
== Eksterne henvisninger ==
 
== Eksterne henvisninger ==

Revision as of 07:55, 21 August 2009

bash - eller Bourne Again Shell - er den mest benyttede shell eller kommandofortolker til Unix og Linux systemer i dag. Der findes andre shells end bash. For eksempel csh (C-Shell), ksh (Korn-Shell) og bsh (Bourne-Shell).

Bash kaldes ofte i engelsk litteratur for en CLI - Command Line Interpreter eller kommandofortolker på dansk.

Filer

Selve programmet bash kan være installeret i forskellige biblioteker på forskellige systemer men findes oftest i /usr/bin biblioteket. På BSD Unix varianter findes bash ofte i /usr/local/bin. Hvis du ikke ved hvor din lokale bash findes kan den findes med whereis bash kommandoen.

  • /etc/profile
    • Opstartsfil som bash udfører for alle brugere på maskinen. Udføres før den personlige opstartsfil.
  • $HOME/.bash_profile
    • Denne fil er din personlige opstartsfil og vil blive udført når du logger ind på systemet, og indeholder typisk opstartskommandoer, velkomst... Hvis .bash_profile ikke eksister i dit hjemmebibliotek vil bash kigge efter filen .bash_login og udføre den. Hvis denne heller ikke eksister kigger bash efter filen .profile og udfører kommandoerne i den. Bemærk kun en af disse filer vil blive udført i rækkefølgen: 1: .bash_profile 2: .bash_login eller 3: .profile
  • $HOME/.bashrc
    • Denne fil er personlig og vil blive udført hvergang der startes en sub-shell, det vil sige hvergang bash starter en ny bash
  • $HOME/.bash_logout
    • Denne fil er din personlig afslutningsfil og udføres når der logges ud.
  • $HOME/.inputrc
    • Denne fil indeholder opstartskommandoer til bash. Anvendes til for eksempel at ændre tastatur genveje.

Online bash hjælp

  • On line manualen: man bash
  • indbygget bash hjælp: help
  • hjælp til bash indbyggede kommandoer: help while (eksempel)

bash tilpasning med set kommandoen

Hvis du ønsker at ændre bash måde at fungere på kan set kommandoen anvendes. Dette er normalt ikke nødvendigt.

  • Kommandoer
    • help set

debugging scripts

Det kan være svært at debugge scripts og se hvor problemet er. Her kan bash sættes i enten verbose eller trace mode. Verbose eller trace mode kan slås til og fra efter behag i dit script.

#!/usr/bin/bash

...
#Kode her er OK
...

set -x    #bash trace mode slået til og alle kommandoer udført vises på skærmen

...
#mistænkelig kode her
...

set +x   #bash trace mode slået fra og bash fungerer normalt

...
#kode her er ok
...

==

Eksterne henvisninger