Barra verticale
Da Wikipedia, l'enciclopedia libera.
Segni di punteggiatura |
---|
apostrofo ( ' ) ( ’ ) |
Altri segni tipografici |
ampersand o e commerciale (et) ( & ) |
Ortografia · Segno diacritico · modifica |
- Note: "broken bar" ed il simbolo "¦" ridirigono qui.
Il simbolo (|) viene denominato barra verticale od anche pipe (soprattutto nella comunità Unix), in Unicode ha codice U+007C .
La barra verticale interrotta o barra spezzata verticale (in inglese broken bar, ¦) è un carattere distinto e in Unicode ha codice U+00A6.
Nel layout di tastiera usato in Italia è presente la barra verticale come carattere di secondo livello (shift + \) ma non la barra verticale interrotta; in ogni caso anche se in alcuni font la barra verticale può essere rappresentata come una barra verticale interrotta e viceversa i due rimangono caratteri distinti.
Indice |
[modifica] Etimologia
Il nome pipe (in inglese significa tubo, canna o condotto) usato per il carattere "|" è una naturale conseguenza del suo uso nelle shell Unix, dove viene utilizzato per rappresentare il costrutto Unix pipeline.
[modifica] Utilizzo
[modifica] Matematica
La barra verticale è usata come simbolo matematico in
- valore assoluto: | x | , si legge "il valore assoluto di x".
- norma: , si legge "la norma di x con uno, x con due"; Unicode fornisce un simbolo speciale per la linea verticale doppia U+2016: ‖x‖
- definizione di insieme: {x | x < 2}, si legge "l'insieme degli x tali che x sia minore di due". In alcuni casi possono venir usati i due punti ':' invece della barra verticale.
- probabilità condizionata: P(X | Y), si legge "la probabilità di X dato Y".
- divisibilità: a | b, si legge "a è divisibile per b".
- La Sheffer stroke in logica: a | b, si legge "a nand b".
- calcolo: a + 3 | a = 4, si legge "a più 3 calcolato quando a è uguale 4", o 4 + 3 = 7.
[modifica] Backus-Naur form
In Backus-Naur form l'espressione consiste di sequenze di simboli e/o sequenze separate da '|', che indica una scelta, con cui può essere sostituito il simbolo alla sinistra.
- <nome proprio> ::= <nome> | <iniziale>
[modifica] Informatica
[modifica] Unix
Una pipe è un meccanismo di comunicazione interprocesso usato originariamente in Unix che permette all'output (lo standard output e, opzionalmente, lo standard error) di un processo di essere usato come input (standard input) di un altro. In questo modo una serie di comandi può venir collegata ("piped"). Questo caratteristica fornisce agli utenti avanzati la possibilità di creare procedure complesse rapidamente dalla linea di comando o come parte di script della shell UNIX (“batch”). In molte shell Unix (interpreti di comandi), questa caratteristica viene rappresentata dal carattere di barra verticale.
esempio di uso della pipe in UNIX: egrep -i 'blair' filename.log | more
Tradizionalmente la capacità di piping in UNIX viene fornita dalla caratteristica "fork and exec" dei sistemi operativi UNIX. Le shell UNIX creano una copia (forks off) di loro stesse per ogni comando, collegando l'input di ogni comando all'output del successivo. Quando vengono elaborati grandi quantità di dati tutti i processi della “pipeline” possono tipicamente essere attivi nello stesso momento (nei limiti del hardware usato). Usando il meccanismo di pipe UNIX un utente è in grado di creare facilmente un proprio programma composto da un numero (teoricamente) illimitato di piccole e specializzate utility.
[modifica] DOS/Windows
Questa caratteristica è presente nelle ultime versioni del DOS e in Microsoft Windows.
Esempio di uso della pipe in DOS: type *.txt | more
La caratteristica di questo di glifo di essere un operatore del DOS può causare problemi nel caso di applicazioni quali la SQL Server BCP utility (abbreviazione di "Bulk Copy Program"), nelle quali l'utente può voler passare il carattere "|" all'applicazione in maniera letterale. (Ad esempio, quando si prova a fare un copia massiccia di file che usano il carattere | come separatore di campo.) In questi casi il carattere ^ può venire usato per evitare l'uso del pipe. Esempio:
bcp tblImport in ImportFile.txt -c -t^|
[modifica] Espressioni regolari
Nella sintassi delle espressioni regolari, la barra verticale indica alternativa (come ad esempio l'OR logico). Ad esempio: il commando Unix grep -E 'foo|bar' identifica le stringhe che contengono 'foo' oppure 'bar'.
[modifica] Disgiunzione
In molti linguaggi di programmazione la barra viene usata per indicare l'operazione logica or, sia per l' or bitwise che per l'or logico or.
In particolare per il C e per i linguaggi che seguono le convenzioni di sintassi del C, come C++, Perl, Java e C#, (a | b) indica il bitwise or; invece la barra verticale doppia (a || b) indica l'or logico.
[modifica] Concatenazione
Nel PL/I ed in alcuni dialetti del SQL, l'operatore "||" indica una concatenazione di stringhe.
[modifica] Delimitatore
Anche se non è comune come l'uso della virgola o del tabulatore orizzontale la barra verticale può essere usato come delimitatore in un flat file. Un esempio di formato di dati standard delimitato dalla barra verticale è il LEDES 1998B.
[modifica] Operatore di esecuzione concorrente
Nei calcoli di comunicazione dei processi (come nel caso del Pi-calculus), la barra verticale è usata per indicare che i processi vengono eseguiti in parallelo.
[modifica] Fonetica e ortografia
Nelle lingue khoisan scritte con l'alfabeto fonetico internazionale, la barra verticale è un segno diacritico usato per indicare il clic dentale (ǀ). Una doppia barra verticale è usata per indicare il clic laterale alveolare (ǁ). Spesso barre verticali singole e doppia vertical sono usate per indicare i limiti prosodici nell'IPA.
[modifica] Codifica
Nonostante la barra verticale sia un carattere accessibile dalle tastiere italiana, inglese e nordamericana vi sono comunque dei casi in cui Web designers, Wiki editors, programmatori e altri utenti hanno bisogno di inserire questo carattere in forma codificata — in genere perché la barra verticale è un simbolo speciale nel loro codice sorgente ed hanno la necessità che sia visualizzata in quanto tale all'utente finale.
Creato nel 1963, l'American Standard Code for Information Interchange (ASCII-1963), uno delle prime mappe di caratteri ad essere usata in modo ampio, ha solo 69 caratteri visualizzabili ("stampabili"); A–Z e 0–9 occupano 36 dei caratteri disponibili. La barra verticale ("|") è il carattere dell'ASCII-1963 in posizione 124 (decimale). La barra verticale interrotta ("¦") non fa parte dell'insieme dei caratteri ASCII (in nessuna versione) ma come carattere separato comparve (insieme alla barra verticale) prima nella famiglia dei caratteri EBCDIC e venne copiata da questa nell'ISO 8859-1 e in Unicode. La tastiera tipicamente usata nel Regno Unito ha tasti separati per la "barra verticale" e per la "barra verticale interrotta"; in ogni caso molti driver per la tastiera inglese attualmente mappano entrambi i caratteri nel carattere ASCII "barra verticale", in quanto la "barra verticale interrotta" difficilmente trova qualche applicazione pratica.
[modifica] Nelle mappe di caratteri più comuni
esadecimale (base-16): 007C
esadecimale (base-16): 7C
decimale (base-10): 124, o esadecimale (base-16): 7C
- ISO/IEC 8859-1
esadecimale (base-16): 7C
- Shift-JIS Men-Ku-Ten
1-01-35
- EBCDIC (CCSID 500 variant)
esadecimale (base-16): BB