Discussione:
Che cosa è una shell?
(troppo vecchio per rispondere)
\\#NonValid#/
2004-05-24 17:03:46 UTC
Permalink
Come da oggetto.
Ed una root?
Scusate la mia inesperienza.
Grazie mille!
orso
2004-05-24 17:22:53 UTC
Permalink
Post by \\#NonValid#/
Come da oggetto.
Ed una root?
Scusate la mia inesperienza.
Grazie mille!
adesso mi tiro addosso le orde dei puristi


una shell e' il programma base di linux
quella che ti permette di fare tutto (e meglio) da riga di comando
hai presente konsole? ecco.

root e' l'utente amministratore quello che ha il potere di fare tutto al
sistema e agli altri utenti

dare o togliere permessi (per intenderci) per l'uso del sistema

orso
Ikitt
2004-05-24 17:24:43 UTC
Permalink
Mon, 24 May 2004 19:03:46 +0200: [it.comp.os.linux.iniziare] "\#NonValid#/"
Post by \\#NonValid#/
Come da oggetto.
/bin/bash, /bin/sh, /bin/tcsh, probabilmente anche nautilus e konqueror.
In generale, la shell e` il programma (o componente software)
con cui l'utente interagisce col il sistema al fine di utilizzarlo.
La shell si pone in attesa di comandi dell'utente e li esegue.

Una spiegazione piu` approfondita, e probabilmente migliore, la trovi
sugli appunti di informatica libera.
Post by \\#NonValid#/
Ed una root?
Dipende dal contesto. In inglese "root" vuol dire "radice", ma in linux/unix
su applica almeno in due-tre contesti diversi.
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
\\#NonValid#/
2004-05-24 18:00:07 UTC
Permalink
GENTILISSIMI!!!!
Gian Uberto Lauri
2004-05-25 07:06:25 UTC
Permalink
Post by \\#NonValid#/
Long count = 12.19.11.5.8; tzolkin = 5 Lamat; haab = 11 Zip.
I get words from the Allmighty Great Gnus that
I> Mon, 24 May 2004 19:03:46 +0200: [it.comp.os.linux.iniziare] "\#NonValid#/"
Post by \\#NonValid#/
Come da oggetto.
I> /bin/bash, /bin/sh, /bin/tcsh, probabilmente anche nautilus e konqueror.

Gli ultimi due proprio no!

I> In generale, la shell e` il programma (o componente software)
I> con cui l'utente interagisce col il sistema al fine di utilizzarlo.
I> La shell si pone in attesa di comandi dell'utente e li esegue.

Ha questo nome perche' e` un guscio sopra il kernel. Molti comandi
non sono che una rimappatura in comandi shell di chiamate a sistema.
Post by \\#NonValid#/
Ed una root?
I> Dipende dal contesto. In inglese "root" vuol dire "radice", ma in linux/unix
I> su applica almeno in due-tre contesti diversi.

I file in Unix e Linux sono conservati in una gerarchia di directory
poste ad albero e le varie partizioni fisiche sono mascherate (non ci
sono c, d, e et similia).

root o / e` la directory posta in cima alla gerarchia.

Storicamente l'utente numericamente indicato da Userid 0 e gruppo 0
(che e` l'utente onnipotente del sistema) aveva la home directory in /
e da qui il nome root anche per l'utente.

Sotto X11 la root window e` invece lo sfondo in cui puoi comunque
avere output dinamico (e senza cazzabubbole come ActiveDesktop).
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-25 08:15:05 UTC
Permalink
25 May 2004 09:06:25 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
I> /bin/bash, /bin/sh, /bin/tcsh, probabilmente anche nautilus e konqueror.
Gli ultimi due proprio no!
Se prendiamo la definizione in senso lato, rischiano di rientrarci.
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-26 07:02:09 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.9; tzolkin = 6 Muluc; haab = 12 Zip.
I get words from the Allmighty Great Gnus that
I> 25 May 2004 09:06:25 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
I> on "Re: Che cosa è una shell?":
I> /bin/bash, /bin/sh, /bin/tcsh, probabilmente anche nautilus e konqueror.
Post by Gian Uberto Lauri
Gli ultimi due proprio no!
I> Se prendiamo la definizione in senso lato, rischiano di rientrarci.

Oddio, in senso microsoft. E se la prendo in senso abbastanza lato
anche il mio mestolo di cucina e` una shell :) :) :). L'informatica
NON e` terreno di sensi lati, e` il dominio dei linguaggi formali
privi di ambiguita`.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Nicholas Wieland
2004-05-26 08:30:33 UTC
Permalink
Post by Gian Uberto Lauri
I> Se prendiamo la definizione in senso lato, rischiano di rientrarci.
Oddio, in senso microsoft. E se la prendo in senso abbastanza lato
anche il mio mestolo di cucina e` una shell :) :) :). L'informatica
NON e` terreno di sensi lati, e` il dominio dei linguaggi formali
privi di ambiguita`.
I file manager sono a tutti gli effetti shell grafiche, c'e' poco da
definire in senso lato. Che poi il termine shell venga comunemente
associato alla linea di comando e' un altro par di maniche, ma di fatto
fanno la stessa identica cosa.

HTH,
ngw
Gian Uberto Lauri
2004-05-28 07:33:56 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.11; tzolkin = 8 Chuen; haab = 14 Zip.
I get words from the Allmighty Great Gnus that
NW> - Gian Uberto Lauri :
I> Se prendiamo la definizione in senso lato, rischiano di rientrarci.
Post by Gian Uberto Lauri
Oddio, in senso microsoft. E se la prendo in senso abbastanza lato
anche il mio mestolo di cucina e` una shell :) :) :). L'informatica
NON e` terreno di sensi lati, e` il dominio dei linguaggi formali
privi di ambiguita`.
NW> I file manager sono a tutti gli effetti shell grafiche, c'e' poco da
NW> definire in senso lato. Che poi il termine shell venga comunemente
NW> associato alla linea di comando e' un altro par di maniche, ma di fatto
NW> fanno la stessa identica cosa.

Peccato che la shell non faccia SOLO gestione di file. Un file manager
ha un sottoinsieme ridotto delle possibilita` di una vera shell (e dato
che il nome shell e` nato con Unix se non erro...) anche se questo non
vuole dire sia inutile.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Nicholas Wieland
2004-05-28 08:30:38 UTC
Permalink
Post by Gian Uberto Lauri
CUT
NW> I file manager sono a tutti gli effetti shell grafiche, c'e' poco da
NW> definire in senso lato. Che poi il termine shell venga comunemente
NW> associato alla linea di comando e' un altro par di maniche, ma di fatto
NW> fanno la stessa identica cosa.
Peccato che la shell non faccia SOLO gestione di file. Un file manager
ha un sottoinsieme ridotto delle possibilita` di una vera shell (e dato
che il nome shell e` nato con Unix se non erro...) anche se questo non
vuole dire sia inutile.
Qui c'e' una discreta confusione.
La definizione di shell e' abbastanza chiara, si tratta di un
semplicissimo "layer" sul sistema operativo, che non specifica in alcun
modo quale funzionalita' debba implementare se non in standard poco
seguiti, soprattutto quando si arriva alle varie shell (che prima o poi,
si dice, verranno cambiate ecc. ecc., ma che di fatto restano sempre
uguali). L'unica conforme alla lettera a POSIX.2 credo sia bash, con
l'apposita opzione --posix
Seguendoti alla lettera, si potrebbe dire che Nautilus/Konqueror
gestiscono i file in modo estremamente piu' efficente di /bin/sh, dato
che, ad esempio, con /bin/sh non puoi nemmeno listarli (hint: which ls).
Anche l'assunto per cui una shell per essere una shell deve fare le
stesse cose che fa /bin/sh e' errato, non e' specificato da nessuna
parte.
Visto che parlavi di Windows credo che nemmeno il classico command.com
implementi tutte le funzionalita' della Bourne Shell, cio' non significa
che non sia una shell.

HTH,
ngw
Gian Uberto Lauri
2004-05-28 18:03:08 UTC
Permalink
Post by Gian Uberto Lauri
CUT
NW> I file manager sono a tutti gli effetti shell grafiche, c'e' poco da
NW> definire in senso lato. Che poi il termine shell venga comunemente
NW> associato alla linea di comando e' un altro par di maniche, ma di fatto
NW> fanno la stessa identica cosa.
Post by Gian Uberto Lauri
Peccato che la shell non faccia SOLO gestione di file. Un file manager
ha un sottoinsieme ridotto delle possibilita` di una vera shell (e dato
che il nome shell e` nato con Unix se non erro...) anche se questo non
vuole dire sia inutile.
NW> Seguendoti alla lettera, si potrebbe dire che Nautilus/Konqueror
NW> gestiscono i file in modo estremamente piu' efficente di /bin/sh, dato
NW> che, ad esempio, con /bin/sh non puoi nemmeno listarli

Vabbe`. Un megagrammo di sofismi.


Verissimo che da sola /bin/sh non lista i file (bash si). Ma la bourne
shell ha il solo compito di interpretare sequenze di comandi. Fa poco
e` vero. Ma collaborando con tutto il resto si lascia dietro certi
pachidermi grafici di kilometri. L'unico caso dove un file manager e`
(per me) piu` comodo sono le directory strapiene di roba (i.e. la mia
home dopo un paio di anni).

E sopratutto un file manager usualmente non ti permette di automatiz-
zare le cose, come dice mia moglie "gli manca il for" (e` un semi-joke
ovviamente).

Ah, gestiscimi il bootstrap di una macchina con Konqueror.

NW> (hint: which ls).

Non e` l'unico, e` il piu` comodo.

NW> Anche l'assunto per cui una shell per essere una shell deve fare le
NW> stesse cose che fa /bin/sh e' errato, non e' specificato da nessuna
NW> parte.

Si. Nei sorgenti di shell. Prima di shell nessun programma di
interfaccia con il sistema si chiamava shell. La definizione di shell
come layer sul nucleo nasce proprio con Unix (famosa l'immagine delle
sfere concentriche).

NW> Visto che parlavi di Windows credo che nemmeno il classico command.com
NW> implementi tutte le funzionalita' della Bourne Shell, cio' non significa
NW> che non sia una shell.

command.com e` una shell, orrida. cmd.exe e` parimenti orrida anche se
gira su sistemi meno orridi.

Quella che Microsoft definisce la shell di Windows e` un'altra cosa.

E non e` una shell, nemmeno orrida.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-28 18:22:37 UTC
Permalink
28 May 2004 20:03:08 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
command.com e` una shell, orrida. cmd.exe e` parimenti orrida anche se
gira su sistemi meno orridi.
Quella che Microsoft definisce la shell di Windows e` un'altra cosa.
E non e` una shell, nemmeno orrida.
OK, dato che la programmabilita` non e` condizione necessaria per
essere una shell, cosa rende konqueror meno shell di command.com?
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Ikitt
2004-05-28 18:40:25 UTC
Permalink
Fri, 28 May 2004 18:22:37 GMT: [it.comp.os.linux.iniziare] "Ikitt"
Post by Ikitt
OK, dato che la programmabilita` non e` condizione necessaria per
essere una shell, cosa rende konqueror meno shell di command.com?
O, per amor di precisione,
"...essere una shell, cosa manca invece a konqueror che ha command.com?"
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-28 18:43:21 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.11; tzolkin = 8 Chuen; haab = 14 Zip.
I get words from the Allmighty Great Gnus that
I> 28 May 2004 20:03:08 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
command.com e` una shell, orrida. cmd.exe e` parimenti orrida anche se
gira su sistemi meno orridi.
Quella che Microsoft definisce la shell di Windows e` un'altra cosa.
E non e` una shell, nemmeno orrida.
I> OK, dato che la programmabilita` non e` condizione necessaria per
I> essere una shell

No, la programmabilita` e` fondamentale per essere una shell.

Ripeto, shell come termine per lo strato tra l'utente ed il sistema
nasce con Unix. Che se non ricordo male e` il primo sistema dove
sparisce la differenziazione tra programma utente e comando di
sisttema (che in Unix e` un programma utente).

E Linux e` un replacement per Unix.

i> , cosa rende konqueror meno shell di command.com?

Gli manca il for come direbbe mia moglie. Vedi sopra.

E ti ripeto. Gestiscimi il bootsrap con konqueror (che e` una imitazione
di Internet Explorer, che e` un browser web). Gli manca il for :), mi sa
che non ce la fai.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-28 19:03:14 UTC
Permalink
28 May 2004 20:43:21 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
Post by Gian Uberto Lauri
command.com e` una shell, orrida. cmd.exe e` parimenti orrida anche se
----^^^^^^^^^^^^^^^^^^^^^^^^^^
Post by Gian Uberto Lauri
I> OK, dato che la programmabilita` non e` condizione necessaria per
I> essere una shell
No, la programmabilita` e` fondamentale per essere una shell.
command.com era programmabile?
Apropos, mi daresti un puntatore alla definizione "ufficiale", che vorrei
rivedere alcune cose?
Post by Gian Uberto Lauri
E ti ripeto. Gestiscimi il bootsrap con konqueror
il processo di boot, ad ogni buon conto, non DEVE essere gestito per
forza con script di shell. E` una scelta implementativa come un'altra.
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-28 19:12:11 UTC
Permalink
Post by Gian Uberto Lauri
Post by Gian Uberto Lauri
Long count = 12.19.11.5.11; tzolkin = 8 Chuen; haab = 14 Zip.
I get words from the Allmighty Great Gnus that
I> 28 May 2004 20:43:21 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
Post by Gian Uberto Lauri
command.com e` una shell, orrida. cmd.exe e` parimenti orrida anche se
I> ----^^^^^^^^^^^^^^^^^^^^^^^^^^
I> OK, dato che la programmabilita` non e` condizione necessaria per
I> essere una shell
Post by Gian Uberto Lauri
No, la programmabilita` e` fondamentale per essere una shell.
I> command.com era programmabile?

Scusa, i batch file (.BAT) chi li interpretava ? Mel Gibson ?

I> Apropos, mi daresti un puntatore alla definizione "ufficiale", che vorrei
I> rivedere alcune cose?

Ti ripeto. Non ho visto un programma che permettesse di dare comandi ad
una macchina che si chiamasse shell prima di Unix (e sh deriva dal fatto
che in Unix hanno saggiamente scelto nomi molto corti). Ergo quella e` la
shell. Quella di Microsoft e` un abuso linguistico.
Post by Gian Uberto Lauri
E ti ripeto. Gestiscimi il bootsrap con konqueror
I> il processo di boot, ad ogni buon conto, non DEVE essere gestito per
I> forza con script di shell. E` una scelta implementativa come un'altra.

Non in Unix quindi non in Linux.

E' vero che e` una scelta implementativa (non tutti gli
S.O. gestiscono il boot in questo modo, anzi forse Unix e derivati
sono un caso anomalo), ma e` molto intelligente come scelta.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-28 19:22:01 UTC
Permalink
28 May 2004 21:12:11 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
I> command.com era programmabile?
Scusa, i batch file (.BAT) chi li interpretava ? Mel Gibson ?
OK, my fault, non ho ricordi molto vividi del dos.
Post by Gian Uberto Lauri
Ti ripeto. Non ho visto un programma che permettesse di dare comandi ad
una macchina che si chiamasse shell prima di Unix (e sh deriva dal fatto
che in Unix hanno saggiamente scelto nomi molto corti).
Ergo quella e` la shell. Quella di Microsoft e` un abuso linguistico.
E anche quello dei tizi di Enlightenment ("E17 will be a desktop shell",
piu` o meno, oltre che di quelli della gnome foundation, se ben ricordo.
Bien. Stavo/Stiamo cercando di astrarre i le caratteristiche che
definiscono la shell e rendono un programma idoneo ad essere una shell.
Per ora, abbiamo
- essere programmabile
- fare quel che faceva la prima shell di Unix (giusto?)
Manca qualcos'altro?
Post by Gian Uberto Lauri
E' vero che e` una scelta implementativa (non tutti gli
S.O. gestiscono il boot in questo modo, anzi forse Unix e derivati
sono un caso anomalo), ma e` molto intelligente come scelta.
Fuori discussione, questo :)
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Ikitt
2004-05-28 19:31:08 UTC
Permalink
Fri, 28 May 2004 19:22:01 GMT: [it.comp.os.linux.iniziare] "Ikitt"
on "Re: Che cosa è una shell?":

Manca un pezzo, stasera sono un po` fuori fase
Post by Ikitt
Per ora, abbiamo
- essere programmabile
- permettere di aggirarsi per il filesystem
Post by Ikitt
- fare quel che faceva la prima shell di Unix (giusto?)
^
`- in generale,
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-28 21:18:52 UTC
Permalink
Long count = 12.19.11.5.11; tzolkin = 8 Chuen; haab = 14 Zip.
I get words from the Allmighty Great Gnus that
I> E anche quello dei tizi di Enlightenment ("E17 will be a desktop shell",
I> piu` o meno, oltre che di quelli della gnome foundation, se ben ricordo.

Sinceramente non li ritengo pozzi di verita` infallibili. Anzi, temo
che anche loro siano vittime di quella "mutilazione mentale" che puo`
causare l'esposizione ad uno strumento/modo di fare/conoscienza non
corretta prima di aver appreso quella corretta. Un mio prof di un
esame piuttosto duro diceva che e` pericoloso studiare male la prima
volta. (il termine mutilazione viene invece dagli effetti che Dijkstra
attribuiva al BASIC).

I> Bien. Stavo/Stiamo cercando di astrarre i le caratteristiche che
I> definiscono la shell e rendono un programma idoneo ad essere una shell.

Una shell e` lo strumento indispensabile per una interazione totale
col sistema. Senza una shell il sistema non e` utilizzabile perche'
manca lo strato di interazione con l'utente e quindi e` inutile.

Le GUI non ce la fanno a svolgere questo compito completamente neanche
prese nella loro totalita`, figuriamoci se una componente di una GUI
da sola ce la fa.

D'altro canto c'era stata l'obiezione che ls non e` parte di /bin/sh.
Se per questo la prima shell non aveva nemmeno test, if, case, echo ed
una serie di altri programmi che poi sono stato inclusi nel binario di
bash diventando builtin.

Ciononostante if, for, test etc sono parte della shell di Unix si cui
sh e` la base (cercate da qualche parte l'esaurito Unix di Kernighan e
Pike, in inglese forse "The Unix Programming Environment" e` ancora
disponibile). E GNU/Linux e` un replacement di Unix proprio come primo
obiettivo.

Guardiamoci in faccia: Linux vive anche senza X e ci si puo` essere
produttivi anche senza X. X e` comodo e molto, ma non indispensabile
salvo per certe dockapp di WindowMaker che sono perfettamente inutili
e quindi assolutamente indispensabili.

Senza /bin/bash (o equivalente) Linux e` inservibile. E non solo
perche' non fa il boot. Perche' non riesci ad interagire col sistema
(e non tiratemi fuori i daemon da remoto, che senza shell in Linux non
tiri su nemmeno la rete).

Tra l'altro imparatevi ad usare la shell di Unix, fa bene alla mente.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Enrico Franchi
2004-05-28 22:30:16 UTC
Permalink
Post by Gian Uberto Lauri
Le GUI non ce la fanno a svolgere questo compito completamente neanche
prese nella loro totalita`, figuriamoci se una componente di una GUI
da sola ce la fa.
[snip]
Tra l'altro imparatevi ad usare la shell di Unix, fa bene alla mente.
credo che qua tutti sappiamo usare bash/csh [quello che vuoi].
il punto non e` nemmeno che se ne possa fare a meno.

<http://info.astrian.net/jargon/terms/s/shell.html>

sostanzialmente tu usi il significato (1), ma in base al significato (2)
un filemanager e` una shell. Non una Shell (se mi passate la case
sesitiveness per motivi di chiarezza), ma pur sempre una shell. Ovvero
un modo pratico e conveniente di accedere ad *una* risorsa, il
filesystem.

Detto questo se vogliamo intavolare una discussione se sia meglio Shell
o filemanager, personalmente voto Shell.
Insomma... la questione di prima, e` tutta una questione di
'significato' attribuito ai termini. E devo ammettere peraltro che (1)
e` di gran lunga piu` comune.
Penso che la maggior parte delle persone (che sappiano cosa e` unix)
quando sentono parlare di shell pensino ad (1).
--
Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are,
by definition, not smart enough to debug it.
- Brian W. Kernighan
Gian Uberto Lauri
2004-05-29 07:30:52 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.12; tzolkin = 9 Eb; haab = 15 Zip.
I get words from the Allmighty Great Gnus that
Le GUI non ce la fanno a svolgere questo compito completamente neanche
prese nella loro totalita`, figuriamoci se una componente di una GUI
da sola ce la fa.
[snip]
Tra l'altro imparatevi ad usare la shell di Unix, fa bene alla mente.
EF> credo che qua tutti sappiamo usare bash/csh [quello che vuoi].

Ahem....

EF> il punto non e` nemmeno che se ne possa fare a meno.

EF> <http://info.astrian.net/jargon/terms/s/shell.html>

Copia dell'HJF, presente nella R4.0.0, l'ultima prima che Raymond andasse
berserker. Interessante, e` nata con Multics. Azz, avrei dovuto leggere la
documentazione.

EF> sostanzialmente tu usi il significato (1), ma in base al significato (2)
EF> un filemanager e` una shell. Non una Shell (se mi passate la case
EF> sesitiveness per motivi di chiarezza), ma pur sempre una shell.

Per il significato 2 c'e` wrapper che e` piu` comune e fa perdere
ambiguita` (cosa assolutamente negativa nell'ambito informatico).

EF> E devo ammettere peraltro che (1)
EF> e` di gran lunga piu` comune.
EF> Penso che la maggior parte delle persone (che sappiano cosa e` unix)
EF> quando sentono parlare di shell pensino ad (1).

Diciamo che in un contesto Unix-GNU/Linux (quale i.c.o.l.i) (2) e`
"errato" e (3) antidiluviano. :)
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
ZeD
2004-05-29 12:41:17 UTC
Permalink
Ciao, Gian Uberto Lauri... come va?
Post by Gian Uberto Lauri
EF> <http://info.astrian.net/jargon/terms/s/shell.html>
Copia dell'HJF, presente nella R4.0.0, l'ultima prima che Raymond andasse
berserker.
erh... in che senso?!
--
§ ZeD §
§ Up da 50 minuti §
§ 29/05/2004 §
§ §
Gian Uberto Lauri
2004-05-29 16:13:10 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.12; tzolkin = 9 Eb; haab = 15 Zip.
I get words from the Allmighty Great Gnus that
Z> Ciao, Gian Uberto Lauri... come va?
EF> <http://info.astrian.net/jargon/terms/s/shell.html>
Post by Gian Uberto Lauri
Copia dell'HJF, presente nella R4.0.0, l'ultima prima che Raymond andasse
berserker.
Z> erh... in che senso?!

Principalmente ha cominciato a togliere entries che sebbene non piu`
in ampio uso rimangono nella storia. Ed a includere termini mainstream.

Il cambio di formato anche se modaiolo non e` una cosa malvagia in se.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-29 06:17:36 UTC
Permalink
28 May 2004 23:18:52 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
I> E anche quello dei tizi di Enlightenment ("E17 will be a desktop shell",
I> piu` o meno, oltre che di quelli della gnome foundation, se ben ricordo.
Sinceramente non li ritengo pozzi di verita` infallibili.
E neppure io, per inciso.
Volevo pero` mostrare che la "definizione allargata" non viene soltanto
dai lidi redmondiani.
Post by Gian Uberto Lauri
Una shell e` lo strumento indispensabile per una interazione totale
col sistema.
Perfetto.
Post by Gian Uberto Lauri
D'altro canto c'era stata l'obiezione che ls non e` parte di /bin/sh.
Se per questo la prima shell non aveva nemmeno test, if, case, echo ed
una serie di altri programmi che poi sono stato inclusi nel binario di
bash diventando builtin.
Ciononostante if, for, test etc sono parte della shell di Unix si cui
sh e` la base[...]
Da cui si dedurrebbe che la 'shell' e` in realta` un concetto che puo`
essere realizzato con piu` programmi separati;
In questo caso, effettivamente nautilus/konqueror non possono essere
considerati shell, ma tutto l'ambiente di cui fanno parte puo` esserlo
(Desktop shell). Se poi magari presento una patch con cui rendo
programmabile (in TCL, in Python, in PERL...) il suddetto insieme,
ecco che recupero anche la programmabilita`, rientrando quindi
nei canoni della shell sin qui delineati.
Post by Gian Uberto Lauri
Guardiamoci in faccia: Linux vive anche senza X e ci si puo` essere
produttivi anche senza X.
Perfettamente d'accordo.
Post by Gian Uberto Lauri
Senza /bin/bash (o equivalente) Linux e` inservibile.
Senza shell, e` inservibile, come da definizione di shell. :)
Se ne inserisco un'altra, grafica, testuale, vocale, quelchee`, ne
recupero la servibilita` (sto pensando a dispositivi embedded, per esempio).
Post by Gian Uberto Lauri
(e non tiratemi fuori i daemon da remoto, che senza shell in Linux non
tiri su nemmeno la rete).
Certo, ma mica e` esclusiva di ifconfig tirar su la rete, nulla vieta
di tirarla su in altro modo, utilizzando le stesse syscall...
Post by Gian Uberto Lauri
Tra l'altro imparatevi ad usare la shell di Unix, fa bene alla mente.
E chi ti dice che non lo stia gia` facendo? ;)
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-29 07:38:56 UTC
Permalink
Long count = 12.19.11.5.12; tzolkin = 9 Eb; haab = 15 Zip.
I get words from the Allmighty Great Gnus that
I> Volevo pero` mostrare che la "definizione allargata" non viene soltanto
I> dai lidi redmondiani.

Ma e` effetto di una cosa che a volte viene definita "mutilazione
mentale", l'effetto negativo di essere stati esposti prima ad una cosa
errata.

I> Da cui si dedurrebbe che la 'shell' e` in realta` un concetto che puo`
I> essere realizzato con piu` programmi separati;

Era cosi` in origine, per questioni di dimensioni. Con la bash alcuni
programmi sono divantati comandi builtin.

I> In questo caso, effettivamente nautilus/konqueror non possono essere
I> considerati shell, ma tutto l'ambiente di cui fanno parte puo` esserlo
I> (Desktop shell). Se poi magari presento una patch con cui rendo
I> programmabile (in TCL, in Python, in PERL...) il suddetto insieme,
I> ecco che recupero anche la programmabilita`, rientrando quindi
I> nei canoni della shell sin qui delineati.

Si, e non sarebbe male. Peccato che a sentire certi editoriali di
Pennington vadano nella direzione opposta.

I> Senza shell, e` inservibile, come da definizione di shell. :)

Ho detto bash o chi per lei apposta. In un sistema GNU (e GNU/Linux e`
un sistema GNU in quanto il kernel Linux usa tutta una serie di tool
GNU per diventare un OS completo) la shell di sistema e` la bash ma in
casi particolari (le microinstallazioni su floppy) si puo` usare
altro.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-29 10:23:52 UTC
Permalink
29 May 2004 09:38:56 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
Ma e` effetto di una cosa che a volte viene definita "mutilazione
mentale", l'effetto negativo di essere stati esposti prima ad una cosa
errata.
Mica sono tanto convinto di 'sta cosa.

(snip sul resto, pare si sia trovato un punto d'incontro)
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-29 16:09:02 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.12; tzolkin = 9 Eb; haab = 15 Zip.
I get words from the Allmighty Great Gnus that
I> 29 May 2004 09:38:56 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
Ma e` effetto di una cosa che a volte viene definita "mutilazione
mentale", l'effetto negativo di essere stati esposti prima ad una cosa
errata.
I> Mica sono tanto convinto di 'sta cosa.

Perche' probabilmente ti sei salvato usando la shell.

Ma c'e` e la vedi sopratutto quando vedi indicare una GUI verso il
sistema come assolutamente necessaria perche' l'interfaccia a linea di
comando e` troppo difficile ad esempio, con i conseguenti blocchi
degli utenti. Che poi son balle, che mia suocera Linux lo usa, e
conoscendo mio cognato, non lo usa con una replica dell'interfaccia di
Windows.

Una GUI ha una sua utilita`, ci sono N argomenti di carattere
psicologico a favore. Ma fintanto che rimane una interfaccia non
espandibile e non stravolgibile castra in partenza la potenzialita` di
sviluppo dell'utente che rimane convinto che "non ci siano altre
strade". Te lo dico perche' sono anni che in varie persone
indipendentemente notiamo il fenomeno.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-29 17:58:06 UTC
Permalink
29 May 2004 18:09:02 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
Ma c'e` e la vedi sopratutto quando vedi indicare una GUI verso il
sistema come assolutamente necessaria perche' l'interfaccia a linea di
comando e` troppo difficile ad esempio, con i conseguenti blocchi
degli utenti. Che poi son balle, che mia suocera Linux lo usa, e
conoscendo mio cognato, non lo usa con una replica dell'interfaccia di
Windows.
Guarda, sull'argomento CLI vs GUI sfondi una porta aperta, con
tanto di zerbino con su scritto "benvenuti". Ricordo ancora , ad esempio,
flame allucinanti (e, ovviamente in quanto flame, inconcludenti) in materia,
e stavo (e sto) dalla parte della CLI.

La potenza della bash con annessi & connessi non e` in discussione.

La ragion d'essere di questo (sotto)thread e` che, data la definzione
di shell, mi sembra(va) che anche determinate GUI vi potessero rientrare;
che programmi come nautilus/konqueror/explorer potessero essere definiti
dunque 'shell'. E da li e` partita la discussione, che, almeno dal mio
punto di vista, ha prodotto risultati interessanti.

Argomenti affini, quali, ad esempio, quale sia l'interfaccia migliore,
se la CLI possa essere usata con beneficio anche dai nuovi utenti e cosi`
via non li ritenevo interessanti ai fini del sottothread...
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-30 06:02:19 UTC
Permalink
Long count = 12.19.11.5.13; tzolkin = 10 Ben; haab = 16 Zip.
I get words from the Allmighty Great Gnus that
I> 29 May 2004 18:09:02 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
I> on "Re: Che cosa è una shell?":

I> di shell, mi sembra(va) che anche determinate GUI vi potessero rientrare;
I> che programmi come nautilus/konqueror/explorer potessero essere definiti
I> dunque 'shell'.

Io continuo a pensare che la risposta sia no perche' c'e` un programma
originario che si chiama shell e fa certe cose -che quei tool non
fanno-, chi si basa sulla definizione 2 dell'HJF dice "si".

i> E da li e` partita la discussione, che, almeno dal mio
I> punto di vista, ha prodotto risultati interessanti.

Indubbiamente.

I> Argomenti affini, quali, ad esempio, quale sia l'interfaccia migliore,
I> se la CLI possa essere usata con beneficio anche dai nuovi utenti e cosi`
I> via non li ritenevo interessanti ai fini del sottothread...

L'e` che sto lavorando sulla cosa...
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Ikitt
2004-05-30 09:32:43 UTC
Permalink
30 May 2004 08:02:19 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
I> Argomenti affini, quali, ad esempio, quale sia l'interfaccia migliore,
I> se la CLI possa essere usata con beneficio anche dai nuovi utenti e cosi`
I> via non li ritenevo interessanti ai fini del sottothread...
L'e` che sto lavorando sulla cosa...
Beh, argomento interessante, molto. Se pubblichi qualcosa (== anche una
pagina web riassuntiva, mica un paper per forza o cose cosi`.) mi piacerebbe
leggerlo.
Personalmente, tutte le volte che mi addentro nel campo rimbalzo sul muro
di gomma dell'inerzia mentale, e la cosa non e` granche` piacevole.
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-30 09:41:16 UTC
Permalink
I> 30 May 2004 08:02:19 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
I> on "Re: Che cosa è una shell?":
I> Argomenti affini, quali, ad esempio, quale sia l'interfaccia migliore,
I> se la CLI possa essere usata con beneficio anche dai nuovi utenti e cosi`
I> via non li ritenevo interessanti ai fini del sottothread...
Post by Gian Uberto Lauri
L'e` che sto lavorando sulla cosa...
I> Beh, argomento interessante, molto. Se pubblichi qualcosa

Se esce esce via web, e` un commento all'editoriale pubblicato da
Pennington e poi tradotto sul Pluto Journal. Se ti va di contattarmi
per e-mail il dominio e` eng dot it.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Nicholas Wieland
2004-06-02 13:04:51 UTC
Permalink
Post by Gian Uberto Lauri
I> di shell, mi sembra(va) che anche determinate GUI vi potessero rientrare;
I> che programmi come nautilus/konqueror/explorer potessero essere definiti
I> dunque 'shell'.
Io continuo a pensare che la risposta sia no perche' c'e` un programma
originario che si chiama shell e fa certe cose -che quei tool non
fanno-, chi si basa sulla definizione 2 dell'HJF dice "si".
Non si tratta di basarsi su questa o quella definizione (se proprio e'
il caso di basarsi su qualcosa bisogna farlo su POSIX.2), si tratta di
capire *cosa fa* una shell: avviare programmi.
Una shell non configura la rete (ifconfig e compagnia lo fanno, una
shell *avvia* ifconfig), non permette operazioni sui file (ls, touch,
more, less, mkdir, tutti esterni), non deve essere programmabile.
Command.com, ad esempio, non era affatto programmabile, i file batch non
erano script, erano "liste di eseguibili" *avviati* l'uno dietro
l'altro, ma la shell DOS non aveva alcuna struttura di controllo
(tant'e' che il boot del DOS era a tutti gli effetti "hardcoded" nel
sistema operativo, solo alla fine venivano richiamati i fottuti autoexec
e fuffa varia).
Nei casi in cui i comandi sono interni alla shell (cd, ad esempio) non
stiamo trattando con "proprieta'" generiche di una shell, ma con
dettagli implementativi.
Per il resto l'e' tutto un fork () ed exec ().
Il programma originario, tra l'altro, non e' affatto la Bourne Shell,
prima di Unix (naturalmente) sono esistiti altri sistemi, che abbastanza
palesemente dovevano fornire un modo per comunicare con il sistema
operativo. Le Lisp Machine, ad esempio, avevano come shell un interprete
Lisp. Il magico CBM64 (sigh!) aveva come shell un interprete BASIC.
Tra l'altro Nautilus *e'* programmabile, in piu' o meno qualsiasi
linguaggio che vuoi, incluso /bin/sh stesso.
Post by Gian Uberto Lauri
i> E da li e` partita la discussione, che, almeno dal mio
I> punto di vista, ha prodotto risultati interessanti.
Indubbiamente.
I> Argomenti affini, quali, ad esempio, quale sia l'interfaccia migliore,
I> se la CLI possa essere usata con beneficio anche dai nuovi utenti e cosi`
I> via non li ritenevo interessanti ai fini del sottothread...
L'e` che sto lavorando sulla cosa...
Concordo anch'io sul fatto che le shell testuali siano di qualche ordine
di magnitudine superiori a quelle grafiche sotto piu' o meno tutti gli
aspetti, era solo una precisazione. Le shell grafiche sono utili giusto
quando non vuoi togliere la mano dal mouse, anche per gestire la propria
home anche la classica Bourne Shell (che io ho nuda e cruda, voi presumo
un alias su /bin/bash) e' superiore, non fosse per il fatto che e'
possibile usare le varie wildcards, per non parlare di find (e che per
un uso effettivo di Nautilus la tastiera la devi comunque usare).
Non stavo mettendo in discussione quello, e tra l'altro ho poca
esperienza di Windows, se mi e' durato un anno e' tanto, uso Unix da
qualche anno di piu'.

HAND,
ngw
Gian Uberto Lauri
2004-06-02 15:25:33 UTC
Permalink
NW> - Gian Uberto Lauri :
I> di shell, mi sembra(va) che anche determinate GUI vi potessero rientrare;
I> che programmi come nautilus/konqueror/explorer potessero essere definiti
I> dunque 'shell'.
Post by Gian Uberto Lauri
Io continuo a pensare che la risposta sia no perche' c'e` un programma
originario che si chiama shell e fa certe cose -che quei tool non
fanno-, chi si basa sulla definizione 2 dell'HJF dice "si".
NW> Una shell non configura la rete (ifconfig e compagnia lo fanno, una
NW> shell *avvia* ifconfig), non permette operazioni sui file (ls, touch,
NW> more, less, mkdir, tutti esterni),

Menntre sulla prima potrei anche essere d'accordo, sulla seconda ti
dico che e` un puro esercizio retorico assolutamente assurdo.

Shell e` l'interprete e gli altri moduli sono stati messi all'esterno
semplicemente perche' era imbecille metterli all'interno dello stesso
eseguibile viste le dimensioni della ram. Hanno scelto invece (con
Unix) la strada dei programmi che cooperano...

NW> non deve essere programmabile.

Vorrei vedere quella di MULTICS che ha dato il via alla cosa cosa faceva.

In ogni caso e` una cosa che se la fai bene ci deve essere per il semplice
fatto che se non ti sogni l'automatizzazione delle operazione e di attuare
la cooperazione dei programmi se non al livello base della pipe.

E non hai mai trovato nella tua vita cose cosi` ovvie che la gente si e`
dimenticata di formalizzarle dandole per scontate ?

NW> Command.com, ad esempio, non era affatto programmabile, i file batch non
NW> erano script, erano "liste di eseguibili" *avviati* l'uno dietro
NW> l'altro, ma la shell DOS non aveva alcuna struttura di controllo

Non ne sono cosi` certo. Purtroppo non ho sottomano il bat che avvia
Emacs sotto Window 9x (command.com come interprete) ma mi pare chi
fossero delle strutture if.

NW> Le Lisp Machine, ad esempio, avevano come shell un interprete
NW> Lisp. Il magico CBM64 (sigh!) aveva come shell un interprete BASIC.

Occhio con certe affermazioni.

Le Lisp Machine erano macchine il cui HW era stato pensato per
eseguire efficentemente il LISP (e per alcune cose una JVM hardware di
oggi non penso sarebbe molto differente se non per il supporto alla
programmazione a oggetti come l'istruzione di chiamata a metodo
virtuale).

La Lisp Machine della Symbolics la conosco solo di nome e per un
programma che e` nato in quell'ambiente (ma che quando e` nato NON
usava LISP). Sicuramente il prodotto concorrente portato avanti da
Stallman aveva sotto ITS del PDP-10 e quella della Symbolics aveva
sotto un S.O. di supporto al LISP (e magari anche questa editor
esterni).

Quanto al 64 il basic non era una shell, era l'unico programma in
esecuzione ma non ti permetteva l'accesso totale al sistema. 3 comandi
in croce (load, save e run, vabbe`, mettiamoci sys e sono 4) non ti
danno l'interazione col sistema.

NW> Tra l'altro Nautilus *e'* programmabile, in piu' o meno qualsiasi
NW> linguaggio che vuoi, incluso /bin/sh stesso.

Ha una interfaccia che prende un programma scritto al volo e lo esegue ?

Continuo a pensare che come shell Emacs si lasci indietro Nautilus di
miglia :), per lo meno e` rispettoso dei programmi preesistenti che
incontra.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Nicholas Wieland
2004-06-03 07:45:53 UTC
Permalink
Post by Gian Uberto Lauri
Post by Gian Uberto Lauri
Io continuo a pensare che la risposta sia no perche' c'e` un programma
originario che si chiama shell e fa certe cose -che quei tool non
fanno-, chi si basa sulla definizione 2 dell'HJF dice "si".
NW> Una shell non configura la rete (ifconfig e compagnia lo fanno, una
NW> shell *avvia* ifconfig), non permette operazioni sui file (ls, touch,
NW> more, less, mkdir, tutti esterni),
Menntre sulla prima potrei anche essere d'accordo, sulla seconda ti
dico che e` un puro esercizio retorico assolutamente assurdo.
Il dato di fatto e' che sono comandi esterni alla shell.
Tra l'altro non si capisce bene perche' usare due pesi e due misure.
Post by Gian Uberto Lauri
Shell e` l'interprete e gli altri moduli sono stati messi all'esterno
semplicemente perche' era imbecille metterli all'interno dello stesso
eseguibile viste le dimensioni della ram. Hanno scelto invece (con
Unix) la strada dei programmi che cooperano...
E ti rispondi da solo. Tant'e' che una shell, come la intendi tu,
violerebbe pesantemente questa filosofia, sarebbe un software che tenta
di fare piu' o meno tutto. Non e' cosi', avvia programmi, che
naturalmente possono avere una interazione *decisamente* maggiore di
/bin/sh. mkdir e compagnia, tra l'altro, *non sono* parte della shell,
vengono proprio distribuiti a parte (binutils o simili da voi, da me
sono parte del core).
Post by Gian Uberto Lauri
NW> non deve essere programmabile.
Vorrei vedere quella di MULTICS che ha dato il via alla cosa cosa faceva.
Ai fini della discussione non e' granche' utile. Ha dato il nome "shell"
ma il concetto di shell c'e' da sempre.
Post by Gian Uberto Lauri
In ogni caso e` una cosa che se la fai bene ci deve essere per il semplice
fatto che se non ti sogni l'automatizzazione delle operazione e di attuare
la cooperazione dei programmi se non al livello base della pipe.
Esattamente come command.com, che le pipe le aveva. Tra l'altro DOS era
strautilizzato proprio perche' non richiedeve granche' di hardware,
figurati avere un interprete nella shell.
Post by Gian Uberto Lauri
CUT
NW> Command.com, ad esempio, non era affatto programmabile, i file batch non
NW> erano script, erano "liste di eseguibili" *avviati* l'uno dietro
NW> l'altro, ma la shell DOS non aveva alcuna struttura di controllo
Non ne sono cosi` certo. Purtroppo non ho sottomano il bat che avvia
Emacs sotto Window 9x (command.com come interprete) ma mi pare chi
fossero delle strutture if.
Ti pare male, command.com non era programmabile, da qui il nome "batch".
L'unica istruzione era tale SET. BTW, anche con delle istruzioni IF non
sarebbe stato "programmabile", la battuta sul for l'hai fatta tu no ?
Post by Gian Uberto Lauri
NW> Le Lisp Machine, ad esempio, avevano come shell un interprete
NW> Lisp. Il magico CBM64 (sigh!) aveva come shell un interprete BASIC.
Occhio con certe affermazioni.
Le Lisp Machine erano macchine il cui HW era stato pensato per
eseguire efficentemente il LISP (e per alcune cose una JVM hardware di
oggi non penso sarebbe molto differente se non per il supporto alla
programmazione a oggetti come l'istruzione di chiamata a metodo
virtuale).
La Lisp Machine della Symbolics la conosco solo di nome e per un
programma che e` nato in quell'ambiente (ma che quando e` nato NON
usava LISP). Sicuramente il prodotto concorrente portato avanti da
Stallman aveva sotto ITS del PDP-10 e quella della Symbolics aveva
sotto un S.O. di supporto al LISP (e magari anche questa editor
esterni).
Mi sfugge in che parte hai contestato la mia affermazione. Le Lisp
Machine erano sistemi come altri, soltanto poco evoluti, e che giravano
su hardware su cui ora non faresti girare vi. Le operazioni venivano
svolte interfacciandosi al sistema operativo in Lisp, che e' un
linguaggio come un altro, e una shell come un'altra, esattamente come
bash e tcsh o ksh.
Che poi sotto Lisp da un certo punto in poi sia spuntato un sistema
operativo e' ovvio, e' normalissima evoluzione.
Post by Gian Uberto Lauri
Quanto al 64 il basic non era una shell, era l'unico programma in
esecuzione ma non ti permetteva l'accesso totale al sistema. 3 comandi
in croce (load, save e run, vabbe`, mettiamoci sys e sono 4) non ti
danno l'interazione col sistema.
Da questo si deduce che il C64 non permetteva l'interazione con il
sistema, non aveva una shell del resto.
Non ti accorgi che la tua testi fa acqua da tutte le parti ?
L'interprete BASIC era naturalmente la shell, e potevi accedere a
*tutto*, io ci ho perso i giorni migliori della mia vita con quei
giornalini del piffero e i POKE per far cambiare colore allo schermo.
Il punto e' che il sistema operativo era tutto li :)
Tra l'altro avrebbe *piu'* requisiti di command.com secondo i tuoi
parametri, in quanto era anche programmabile.
Post by Gian Uberto Lauri
NW> Tra l'altro Nautilus *e'* programmabile, in piu' o meno qualsiasi
NW> linguaggio che vuoi, incluso /bin/sh stesso.
Ha una interfaccia che prende un programma scritto al volo e lo esegue ?
Naturalmente, dove interfaccia significa doppioclick. Non capisco il tuo
stupore, e' una funzionalita' abbastanza idiota e abbastanza ovvia.
Sai che gioia per i miei lusers trovarsi lo script zenity + shell come
python (e ora pure ruby, maniaco di merda che sono) da cliccare
piuttosto che aprire il terribile terminale ?
Post by Gian Uberto Lauri
Continuo a pensare che come shell Emacs si lasci indietro Nautilus di
miglia :), per lo meno e` rispettoso dei programmi preesistenti che
incontra.
Tant'e' che per farlo girare su X decentemente l'hanno dovuto forkare :)
Non so questa cosa di X e Nautilus, la vuoi spiegare ?

HAND,
ngw
Gian Uberto Lauri
2004-06-04 23:48:33 UTC
Permalink
Post by Gian Uberto Lauri
Shell e` l'interprete e gli altri moduli sono stati messi all'esterno
semplicemente perche' era imbecille metterli all'interno dello stesso
eseguibile viste le dimensioni della ram. Hanno scelto invece (con
Unix) la strada dei programmi che cooperano...
NW> E ti rispondi da solo.

C'e` la possibilita` che mi esprima male, ma c'e` la possibilita` che
tu non legga cio` che non vuoi leggere.

NW> Tant'e' che una shell, come la intendi tu,
NW> violerebbe pesantemente questa filosofia, sarebbe un software che tenta
NW> di fare piu' o meno tutto.

Fa parte di un sistema che puo` fare piu` o meno tutto e che e` stato
pensato come un insieme organico. Vedi oltre.

NW> Non e' cosi', avvia programmi, che

E interpreta script. Nei quali si usano funzioni, programmi o altri
script. E programmi e script si differenziano solo per il
funzionamento interno, ma all'esterno sono tutti "con pari dignita`"
di comandi.

Per la cronaca, avendo builtin if, for
NW> naturalmente possono avere una interazione *decisamente* maggiore di
NW> /bin/sh. mkdir e compagnia, tra l'altro, *non sono* parte della shell,
NW> vengono proprio distribuiti a parte (binutils o simili da voi, da me
NW> sono parte del core).

Cosa ne sai cosa e` da me :) ?

Qui occorre un ripasso di storia.

Unix nasce con una shell organica e la cosa guardacaso si riflette
nelle incarnazioni attuali della Berkeley Software Distribution. In
tutti questi casi c'e` stato il massimo dello "sviluppo a cattedrale"
con lo sviluppo di tutto il sistema da parte di un team.

Le binutils sono separate da bash per come e` nato GNU.

Varia gente, indipendentemente, ha cominciato a creare vari rimpiazzi
per le varie componenti di Unix e a donare il codice alla FSF. Per
molto tempo prima della comparsa del kernel Linux la gente ha usato
tranquilla solo le parti di GNU che servivano, quindi GCC quando il
l'uso di cc divenne problematico (versioni ridotte o con licenze d'uso
restrittive), la bash al posto di sh, ksh o csh. Le binutils non
venivano installate spesso sotto Unix e sono state sviluppate in tempi
diversi, al contrario di Unix e BSD in cui tutto va avanti insieme.


NW> non deve essere programmabile.
Post by Gian Uberto Lauri
Vorrei vedere quella di MULTICS che ha dato il via alla cosa cosa faceva.
NW> Ai fini della discussione non e' granche' utile. Ha dato il nome "shell"
NW> ma il concetto di shell c'e' da sempre.

No. Mai usato un IBM4341 ?

NW> Esattamente come command.com, che le pipe le aveva.

Aveva una cosa che assomigliava alle pipe perche' usavi il carattere "|".

Ma non era una pipe. Era uno shortcut verso un file temporaneo in cui
il programma A versava l'output che al suo termine veniva preso dal
programma B.

NW> Tra l'altro DOS era
NW> strautilizzato proprio perche' non richiedeve granche' di hardware,
NW> figurati avere un interprete nella shell.

Altro errore. Il DOS era strautilizzato perche` era il programma di
controllo dell'HW strautilizzato. Il DOS di MS ha rimpiazzato Apple
DOS di Apple ][ esattamente come il PC ha rimpiazzato Apple ][ come
architettura aperta e clonabile.

NW> Ti pare male, command.com non era programmabile, da qui il nome "batch".
NW> L'unica istruzione era tale SET. BTW, anche con delle istruzioni IF non
NW> sarebbe stato "programmabile", la battuta sul for l'hai fatta tu no ?

No l'ha fatta mia moglie. Ma con if e GOTO che c'erano non hai
necessariamente bisogno del for.

Un'esempio di if lo ho trovato dove pensavo di trovarlo (bat di avvio
di Emacs sotto Windows 9x)

set HOME_SAVE=%HOME%
set HOME_EXISTS=yes
set HOME_DEFAULT=\\mercurio_115\saint
set HOME=
if "%HOME%" == "%HOME_SAVE%" set HOME_EXISTS=no
if "%HOME_EXISTS%" == "yes" set HOME=%HOME_SAVE%
if "%HOME_EXISTS%" == "no" set HOME=%HOME_DEFAULT%
if "%HOME_EXISTS%" == "no" echo HOME is not set! Using %HOME% as a default...


Ah, batch non implica non programmabile. Tutt'altro. Indicava ori-
ginariamente un meccanismo di scedulazione dei programmi noto anche
come schedulazione a lotti, utilizzato principalmente sulle macchine
che ancora si programmavano con le schede. Dato che a quei temi
l'elaborazione avveniva consegnando i pacchi di schede (tra cui quelle
di controllo dei job) al "clero" e tornando poi a prelevare i
risultati, la cosa e` stata applicata anche alle esecuzioni di serie
di programmi avviate in automatico.

NW> Le Lisp Machine, ad esempio, avevano come shell un interprete
NW> Lisp. Il magico CBM64 (sigh!) aveva come shell un interprete BASIC.

NW> Mi sfugge in che parte hai contestato la mia affermazione.

Il fatto che LISP fosse la "shell" della LM. La cosa mi suona strana
almeno per le prime versioni che erano fortemente imparentate
all'ambiente che girava sotto ITS sul PDP-10 del MIT.

NW> Le Lisp
NW> Machine erano sistemi come altri, soltanto poco evoluti, e che giravano
NW> su hardware su cui ora non faresti girare vi.

Non corretto. L'hardware non era affatto poco evoluto e ci giravano
programmi piu` tosti di vi. Molte funzioni indispensabili per una Lisp
Machine erano svolte in hardware. E' questo che ha dato il nome.

NW> Le operazioni venivano
NW> svolte interfacciandosi al sistema operativo in Lisp, che e' un
NW> linguaggio come un altro, e una shell come un'altra, esattamente come
NW> bash e tcsh o ksh.

Ci sono alcuni errori.

Lisp e` profondamente diverso da bash e altre. E non solo perche' e`
funzionale, ma per la ricchezza e la potenza che *adesso* cominci a
vedere nei linguaggi piu` moderni.

Poi Lisp era un linguaggio che veniva attivato dal sistema che almeno
nelle prime versioni mi sa era in linguaggio macchina (e parte penso
che abbia continuato a non essere scritto in LISP, che so, i gestori
degli interrupt per l'I/O verso disco o rete. Lisp e` interpretato dal
sorgente o dal byte code, non penso riesca ad avere i tempi di
risposta richiesti. L'ultima, di cui si trova notizia trova sul Web
aveva un S.O. in Object Lisp.

Lisp machine, come Pascal Machine piu` tardi, erano solo sistemi in
cui si e` tentato di fare hardware che si avvicinasse ai linguaggi ad
alto livello.

L'ultimo esempio e` stata l'architettura VAX, erede delle architetture
PDP da cui sono nate le Lisp Machines, con istruzioni per la gestione
delle doppie indirezioni ed altro. In tutti i casi la compilcazione HW
introdotta non ha pagato e sono passati ad altre architetture.

D'altro canto ammetto che e` possibile che l'ultima versione del S.O.
avesse LISP come shell. Decisamente potente come shell.

NW> Che poi sotto Lisp da un certo punto in poi sia spuntato un sistema
NW> operativo e' ovvio, e' normalissima evoluzione.

Il S.O. c'era dalle prime architetture.
Post by Gian Uberto Lauri
Quanto al 64 il basic non era una shell, era l'unico programma in
esecuzione ma non ti permetteva l'accesso totale al sistema. 3 comandi
in croce (load, save e run, vabbe`, mettiamoci sys e sono 4) non ti
danno l'interazione col sistema.
NW> Da questo si deduce che il C64 non permetteva l'interazione con il
NW> sistema, non aveva una shell del resto.

Infatti il basic non ti permetteva di accedere a tutto. Leggi oltre.

NW> Non ti accorgi che la tua testi fa acqua da tutte le parti ?
NW> L'interprete BASIC era naturalmente la shell, e potevi accedere a
NW> *tutto*,

Non tutto. L'accesso alla maggior parte dei servizi avveniva
modificando direttamente il contenuto di registri hardware, cosa che
un S.O. degno di questo nome non ti permette.

NW> io ci ho perso i giorni migliori della mia vita con quei
NW> giornalini del piffero e i POKE per far cambiare colore allo schermo.

Appunto. POKE. Ovvero una direttiva di modifica dell'accesso alla
memoria. Non c'era nemmeno un S.O. a gestirti l'accesso alla risorsa.

Io ho cominciato col VIC20, le ho conosciute quelle macchinette.

NW> Il punto e' che il sistema operativo era tutto li :)

Non c'era infatti. Vuoi il dump disassemblato delle routine del
cosiddetto kernel del VIC ? C'era un gestore di interrupt per la
tastiera e poco altro, varie routine ma nessun programma in esecuzione
a fregiarsi del titolo di S.O.

(Nota nonostante il nome anche col DOS eravamo li`.)
Post by Gian Uberto Lauri
Ha una interfaccia che prende un programma scritto al volo e lo esegue ?
NW> Naturalmente, dove interfaccia significa doppioclick. Non capisco il tuo
NW> stupore, e' una funzionalita' abbastanza idiota e abbastanza ovvia.

Peccato. Doppio click. Risposte errata :)

Hai bisogno di un editor per preparare il file, non hai interazione
diretta del tipo "scrivo il comando e vedo il risultato".

Poi il doppio click, windowsianamente, attiva il programma associato
al file. Nautilus fa solo questo. Lo script che hai lanciato non
programma nautilus. Ah, certo, Microsoft chiama questa cosa shell e
tutti si inchinano.

shell e` un program interpreter. Leggere l'intestazione della man page.

NW> Sai che gioia per i miei lusers trovarsi lo script zenity + shell come
NW> python (e ora pure ruby, maniaco di merda che sono) da cliccare
NW> piuttosto che aprire il terribile terminale ?

Rimangono lusers. Ed il terminale e` tutt'altro che orribile. Mia
suocera, pensa, comincia a comprendere che e` piu` comodo del modo di
fare di Windows.
Post by Gian Uberto Lauri
Continuo a pensare che come shell Emacs si lasci indietro Nautilus di
miglia :), per lo meno e` rispettoso dei programmi preesistenti che
incontra.
NW> Tant'e' che per farlo girare su X decentemente l'hanno dovuto forkare :)

Cazzate. Quello ottenuto dal fork ha e` stato ampiamente raggiunto e
probabilmente sorpassato, e` meno efficiente e mi pareva di aver
sentito voci di carenza di mantainer. Ed il fork e` stato fatto per
motivi di licensing in quanto Stallman non voleva includere del codice
che non era libero.

Senza contare che le ultime versioni sono diventate un pelino cafone.
Ho provato ad installare XEmacs per venire incontro agli utenti di
tale editor che avevano rogne con la generazione delle faces di un
modo che ho pasticciato, la prima cosa che ha fatto e` stata sput-
tanare la configurazione dello GNU Emacs. Meno male che avevo il
backup.

Invece per molto tempo molta gente lo ha usato come login shell. Oh,
poi in un buffer di Emacs lanciavano la shell vera e propria avendo
quindi a disposizione tutta una serie di "servizi" che la vecchia sh
non dava.

NW> Non so questa cosa di X e Nautilus, la vuoi spiegare ?

Semplicemente prova a partire con X e un windowmanager X, che so,
AfterStep, WindowMaker, gwm... Niente Gnome. Poi lancia Nautilus e
guarda se ha rispettato il tuo WindowManager. Direi di no. Ha
sostituito la root window di X con una nuova finestra (e vai di spreco
di memoria) senza decorazioni grande quanto lo schermo. Niente piu`
menu del window manager attivabili con un click sulla root window. Bel
rispetto.

--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/

roberto
2004-05-29 15:53:36 UTC
Permalink
Gian Uberto Lauri ha scritto:
-cut-
Post by Gian Uberto Lauri
Quella che Microsoft definisce la shell di Windows e` un'altra cosa.
E non e` una shell, nemmeno orrida.
Beh, io direi:
E' orrida, e non e' nemmeno una shell.
--
|Save our planet!
Ciao |Save wildlife!
roberto |For your E-MAIL use ONLY recycled Bytes !!
|roberto poggi ***@softhome.net
Ikitt
2004-05-26 09:51:36 UTC
Permalink
26 May 2004 09:02:09 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
Post by Gian Uberto Lauri
I> Se prendiamo la definizione in senso lato, rischiano di rientrarci.
L'informatica NON e` terreno di sensi lati, e` il dominio dei
linguaggi formali privi di ambiguita`.
Bene, ridefinisco:
Se prendiamo la definizione di shell, nautilus e konqueror ci rientrano.

Il "senso lato" e` stato formulato male. Nel senso comune, shell e` quella
a caratteri. Ma se si prende la definizone (il "senso lato" della mia infelice
frase originaria), come detto, nautilus, konqueror ed explorer ci rientrano.
--
Francesco Romani - Ikitt (signature under [re]construction)
'A geek is someone who spends time being "social" on a computer.'
'In fact, users don't read /anything/' -- Joel Spolsky
Gian Uberto Lauri
2004-05-28 07:35:05 UTC
Permalink
Post by Gian Uberto Lauri
Long count = 12.19.11.5.11; tzolkin = 8 Chuen; haab = 14 Zip.
I get words from the Allmighty Great Gnus that
I> 26 May 2004 09:02:09 +0200: [it.comp.os.linux.iniziare] "Gian Uberto Lauri"
I> on "Re: Che cosa è una shell?":
I> Se prendiamo la definizione in senso lato, rischiano di rientrarci.
Post by Gian Uberto Lauri
L'informatica NON e` terreno di sensi lati, e` il dominio dei
linguaggi formali privi di ambiguita`.
I> Bene, ridefinisco:
I> Se prendiamo la definizione di shell, nautilus e konqueror ci rientrano.

Hanno la medesima capacita` di /bin/sh ?

A naso NO (e nautilus e` perdigiunta "maleducato" verso X).

Vedi altra risposta pubblicata.
--
/\ ___
/___/\__|_|\_|__|___Gian Uberto Lauri_____________________
//--\ | | \| | Integralista GNUslamico e fancazzista
\/
Emmanuele Bassi
2004-05-25 11:46:47 UTC
Permalink
* \#NonValid#/ [2004-05-24 19:03]:

Leggiti gli appunti di informatica libera:

http://a2.swlibero.org/

Ciao,
Emmanuele.
--
Emmanuele Bassi (Zefram) [ http://www.emmanuelebassi.net ]
GnuPG Key fingerprint = 4DD0 C90D 4070 F071 5738 08BD 8ECC DB8F A432 0FF4
loiety
2004-05-26 07:26:50 UTC
Permalink
Post by \\#NonValid#/
Come da oggetto.
Ed una root?
Scusate la mia inesperienza.
Grazie mille!
Non si dice che i sistemi unix-like sono come una setrie di gusci (=livelli)
concentrici in cui uno contiene l'altro. In questo caso il kernel potrebbe
essere inteso come il guscio software che contiene l'HW, e la shell è un
altro livello sw (o guscio) che contiene il kernel. A sua volta è contenua
da altri programmi da linea di comando, che a loro volte possono essere
contenuti da interfaccia grafica.
Del resto, come già mi fu detto qui, se ci pensi bene
shell=conchiglia=guscio.
Un po' come le matriosche.


--------------------------------
Inviato via http://arianna.libero.it/usenet/
Continua a leggere su narkive:
Loading...