inoltre a "say" puoi aggiungere "-v" ed il nome di una delle voci presenti sul mac che puoi vedere nella sezione voci delle preferenze. Es.:
Codice:say -v Cellos "hello"
Comandi da inserire da terminale per ottenere gli effetti desiderati :
Dock in 2D : defaults write com.apple.dock no-glass -boolean YES
killall Dock
Sfondo dietro le icone in visione griglia : defaults write com.apple.dock mouse-over-hilte-stack -boolean YES
killall Dock
Messaggio al Login : sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText “Tuo Messaggio”
per tornare come prima : sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText “”
Cambia l’immagine di login : defaults write /Library/Preferences/com.apple.loginwindow DesktopPicture “/System/Library/CoreServices/Finder.app/Contents/Resources/tua_immagine
Sostituire il nome di una cartella visualizzato nella sua finestra di apertura con il suo percorso : defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES
Fare parlare il terminale : say hello ( dove hello può essere sostituito da qualsiasi parola. )
Far diventare trasparenti le icone che nascondete : defaults write com.apple.Dock showhidden -bool YES
killall Dock
Barra del Menù bianca : sudo defaults write /System/Library/LaunchDaemons/com.apple.WindowServer 'EnvironmentVariables' -dict 'CI_NO_BACKGROUND_IMAGE' 1 ( il Mac poi si riavvierà )
Screensaver come sfondo : /System/Library/Frameworks/ScreenSaver.framework/Resources/ScreenSaverEngine.app/Contents/MacOS/ScreenSaverEngine -background
Motra I file Nascosti : defaults write com.apple.finder AppleShowAllFiles TRUE ( a vostro rischio e pericolo )
Vi ho tradotto quelle che mi è capitato di usare e quelle che potrebbero essere più utili, ce ne sono tante altre all’indirizzo : http://www.mactricksandtips.com/2008...-commands.html
inoltre a "say" puoi aggiungere "-v" ed il nome di una delle voci presenti sul mac che puoi vedere nella sezione voci delle preferenze. Es.:
Codice:say -v Cellos "hello"
?imac?21,5";core2duo 3,06ghz;4gb ram;hdd500gb 7200rpm?
?ipod nano 3gen 4gb?
io non riesco! Mi esce:Originariamente Scritto da Davyde
Come si risolve?Last login: Wed Jun 23 11:06:36 on ttys000
Haks-MacBookPro:~ Haker$ sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText “Buon Giorno! Che cosa facciamo oggi?”
WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.
To proceed, enter your password, or type Ctrl-C to abort.
Password:
2010-06-23 11:08:00.956 defaults[19391:1707] Unexpected argument Giorno!; leaving defaults unchanged.
Haks-MacBookPro:~ Haker$
- iPhone 4 16gb: 30/7/10
Blackberry Bold 9700: 11/12/09
MacBook Pro: 19/2/09
iPod Touch: 25/8/2008
iMac 20": 19/7/08
si l'ho messa, ma dopo esce questo!!
2010-06-23 11:08:00.956 defaults[19391:1707] Unexpected argument Giorno!; leaving defaults unchanged.
- iPhone 4 16gb: 30/7/10
Blackberry Bold 9700: 11/12/09
MacBook Pro: 19/2/09
iPod Touch: 25/8/2008
iMac 20": 19/7/08
Al solito non so se sia esatto postare qui, in caso spostatelo.
Ad ogni modo sto preparando Informatica e un grosso blocco parla di unix e il suo manuale e comandi annessi.
Ho provato allora a fare qualche innocua prova col mio terminale e quasi tutto è identico.
Ma il terminale come gestisce lo spazio (nel senso di barra spaziatrice)?
Mi spiego:
ho creato due .rtf di prova titolati prova1 e prova 2;
ora facendo "mv prova1.rtf prova3" il nome viene cambiato senza problemi e fin qui ok
Il problema è quando voglio cambiare prova 2 in altro......mi da errore ergo ci deve essere un errore con gli spazi. Quale??
ps.: vedo che siamo fermi a una pagina, se posso quando ho tempo di tanto in tanto posso aggiungere qualcosa dato che i comandi di base li sto studiando proprio ora.
Mi piace e mi sarebbe piaciuto molto anche agli inizi imparare ad usare il terminale. Credo che anche per i nuovissimi utenti questa pagina potrebbe essere interessante. Che ne dite?
Running with Moebius
Aggiungi pure, ci fa molto piacere!!
Per la domanda sugli spazi, se ad esempio vuoi entrare in una cartella chiamata "cartella senza titolo" il comando è:
Non so se conosci inoltre la questione del tab: se inizi a scrivere un comando e poi premi tab il comando (o il nome di un file/cartella/…)ti viene completato in automatico. Quindi ad esempio se scriviCodice:cd cartella\ senza\ titolo
e premi tab lui ti scrive da soloCodice:cd cart
In ogni caso, siccome questa degli spazi è un po' una rottura di scatole, in genere si evita di usarli e si usa il "camel case", ovvero "cartella senza titolo" si dovrebbe chiamare, secondo la convenzione "cartellaSenzaTitolo" ovvero, prima lettera minuscola e le iniziali delle successive parole maiuscole, ma senza spazi.Codice:cd cartella\ senza\ titolo
Grazie mille. ottima cosa.
Non mi riesce di capire una cosa ora. La shell è l'interprete comandi;non so quante ne posso trovare sul mac ma ad ogni modo qual'è la differenza col terminale stesso?!
Voglio dire:
se provo a dare "sh" oppure "csh" mi entra nella modalità di shell e da li posso eseguire tutti i comandi base che eseguivo pure prima.
Cosa cambia?
L'unica differenza stava nell'intestazione della riga:
Kharonte:~ Temple$ sh
sh-3.2$
sh-3.2$ exit
Cioè il terminale stesso non è già di suo un interprete dei comandi che diamo??
So già che la domanda è estremamente stupida ma sono proprio allo stato brado in questo campo
Running with Moebius
Il terminale è un'applicazione come un'altra e al suo interno puoi far girare diverse modalità, ad esempio sh, csh, bash ecc ecc ma anche perl o python. La differenza sta nei comandi, che possono essere diversi, sia quelli che immetti direttamente nel terminale sia quelli che scrivi negli script. Quale modalità usare allora…Dipende! Quella con cui ti trovi meglio, io ad esempio uso bash nel mac mentre dove lavoravo prima usavo csh.
In sostanza noi possiamo agire sul sistema attraverso il sistema operativo (Leopard) o attaverso terminale ma restano entrambi due MEZZI per interagire col mac.
Il vero tramite tra l'utente e il computer è la shell che interpreta i comandi che diamo e li traduce per la macchina.
A questo punto devo presupporre che un'interprete debba essere sempre attivo per permettere il collegamento utente-macchina,
quindi deve esserci una shell attiva di default. Su unix dovrebbe essere la Bourn-shell.
Sbaglio qualcosa?
Running with Moebius
Non proprio… La bourne shell è un'altra shell ormai obsoleta. Non è detto che i programmi che lanci dal finder girino dalla linea di comando. Alcuni lo fanno, altri, come quelli scritti in C, in Cocoa… non lo fanno.
Certo. I programmi utilizzano diversi linguaggi di programmazione (a scelta del programmatore, e secondo altre variabili che non ci interessano); a seconda del linguaggio con cui è fatto il programma serve la shell appropriata per farlo partire.
Se ad esempio dobbiamo far partire un programma in C, prima dovremo attivare la C-shell. (immagino che quando non agiamo tramite terminale ma tramite finder è il sistema che si prende carico di questo lavoro e fa tutti questi passaggi in maniera "invisibile" all'utente)
Fin qui tutto ok.
Ma di base, esiste una shell di default. Cioè quella che traduce i comandi base che diamo dalla linea di comando.
Ad esempio il semplice comando ls, o qualsiasi altro dovranno pur essere tradotti da qualcuno. no!?
ps.: scusa se il discorso per te sarà abbastanza noioso![]()
Running with Moebius
Non è noioso, anzi!
Per la domanda, forse non ho capito la domanda ma...se stai usando bash, ad esempio, e scrivi ls allora è bash stessa che si occupa di tradurre il comando in linguaggio macchina.
ok, tu dici che un comando base come ls lo traduce quasiasi shell abbiamo "in moto".
Ma poniamoci davanti al computer spento. Lo accendiamo e supponiamo per ipotesi di trovarci subito il terminale davanti. Abbiamo appena acceso quindi non stavamo lavorando con nessuna shell in particolare.
Ora diamo dalla linea di comando un comando qualsiasi. Beh, quel comando chi lo traduce???? E' questo che intendevo chiedendo se c'era una shell di default, base ceh partiva già dall'accensione. sono stato piu chiaro!?
Running with Moebius
La shell è un'interprete di comandi il cui compito fondamentale è prelevare input da terminale e restituire i messaggi di uscita. In particolare può mandare un esecuzione un programma eseguibile.Originariamente Scritto da Magnamoundi
Il programma eseguibile può essere compilato (ad esempio un programma c o c++), oppure può essere uno script (sequenza di operazioni eseguite direttamente senza passare per la creazione di un file binario). Nel caso di uno script, solitamente la prima riga indica alla shell in uso quale interprete dovrà essere utilizzato.
Ad esempio se mio_script.sh è uno script bash, la prima rigà potrà essere:
in modo che la shell che esegue lo script possa utilizzare l'interprete bash.Codice:#! /bin/bash
Nel caso di uno script python si avrà:
per indicare di usare l'interprete python, e così via.Codice:#! /usr/bin/env python
Se supponiamo di avere un file di codice sorgente C++, mio_file.cc, prima lo si compila
poi si può lanciare:Codice:g++ mio_file.cc -o eseguibile
per mandarlo in esecuzione.Codice:./eseguibile
Il lancio di codice compilato C o C++ non prevede assolutamente che si usi la csh :)!
La csh è solo una shell, come bash, dash, tcsh etc.
In Ubuntu la shell di default è dash.
All'accensione, dopo aver eseguito molte altre operazioni, il processo init crea un processo figlio che si chiama login.Originariamente Scritto da Magnamoundi
Il processo login consente all'utente di accedere al sistema.
Il processo login, dopo aver verificato le credenziali dell'utente, manda in esecuzione il processo shell (che in particolare sarà una fra quelle esistenti, supponiamo dash).
Quindi l'utente che apre un terminale si trova ad interagire con la shell che il processo login ha lanciato (chiaramente quale shell lanciare è configurabile).
C'è una cosa molto importante però che ti sfugge: tutto, compreso l'ambiente grafico, è lanciato da una shell, appena accedi al s.o. sei già dentro ad una shell!
Il processo che gestisce il tuo ambiente grafico, è stato lanciato da una shell, e quando apri il terminale, anche questo sarà un processo all'interno di quella shell, e se da terminale digiti "sh", allora verrà lanciata la shell sh come figlia della shell dentro alla quale ti trovi già :)!
Per qualsiasi chiarimento, se posso, sono qui :)!
Ciao.
Molto chiaro. Grazie.
Che anche il sistema grafico e tutto cio che faccio sia mandato da una shell è chiaro. Come dicevo sopra alla fine il s.o. è solo una facciata moooolto comoda che ha permesso l'utilizzo del computer anche all'utente medio (come me). L'esempio era solo a scopo esemplificativo.
Diciamo che io sto immaginando che il mio mac sia come quei vecchissimi modelli in cui appena aprivi ti trovavi sullo schermo una riga di comando......perchè una volta era così no!??![]()
Running with Moebius
Esatto! Poi ci sono stati dei modelli intermedi in cui si apriva la linea di comando e tu potevi lanciare un interfaccia grafica come se fosse un programma. Ora invece siamo arrivati ad avviare i computer direttamente con l'interfaccia grafica ed avere a disposizione la linea di comando come un programma.
Rileggendo più volte mi sfugge l'esatta differenza tra eseguibile e script.Originariamente Scritto da puller
Il primo dovrebbe essere in principio, ditemi se sbaglio (parto dalla creazione iniziale), un file di testo scritto in un linguaggio di programmazione (Pascal, C ecc ecc).
Questo file poi viene compilato attraverso un compilatore (poi mi pare ci fossero altri passaggi tipo il linkaggio, ma sorvoliamo) e viene reso eseguibile. A quel punto abbiamo trasformato un file di testo in un programma, cioè una serie di operazioni che la macchina esegue; basta richiamare il nome del programma.
Invece uno script............?? (l'unica conoscenza che ho s quest'ultimi è data dal fatto che ogni tanto vedo un file dal titolo "script...." in qualche cartella)
Running with Moebius
Uno script non è altro che una serie di comandi che puoi eseguire dalla linea di comando ma che sono scritti in un unico file e che vengono eseguiti in sequenza chiamando lo script.