Jump to content

Comandi da Terminale


1 post in this topic

Recommended Posts

Fonte: Ricerche effettuate in Google

Adattamento e traduzione: ErmaC




La riga di comando di Mac OS X dispone di migliaia di programmi che l’utente medio di Mac non conosce. Sulla base di anni di duro lavoro da parte della fondazione GNU e di altre nella comunità open source, Apple ha progettato un meraviglioso sistema operativo che non ha “bisogno” della riga di comando per essere usato. Nonostante l’uso della riga di comando in Mac OS X non è necessario per l’uso quotidiano di un Macintosh, se usata correttamente può far risparmiare molto tempo!


Indice dalla A alla Z dell'interfaccia a riga di comando di OS X della Apple




alias Create an alias •

alloc List used and free memory

apropos Search the whatis database for strings

awk Find and Replace text within file(s)



basename Convert a full pathname to just a filename

bash Bourne-Again SHell

bg Send to background •

bind Display readline key and function bindings •

bless Set volume bootability and startup disk options.

break Exit from a For, While, Until or Select loop •

builtin Execute a shell builtin •

bzip Compress or decompress files



cal Display a calendar

caller Return the context of a subroutine call •

case Conditionally perform a command •

cat Display the contents of a file

cd (che significa Change Directory, cioe' cambia directory)

chflags Change a file or folder's flags

chgrp Change group ownership

chmod Change access permissions

chown Change file owner and group

chroot Run a command with a different root directory

cksum Print CRC checksum and byte counts

clear Clear terminal screen

cmp Compare two files

comm Compare two sorted files line by line

command Run a command (not a function) •

complete Edit a command completion [word/pattern/list] •

continue Resume the next iteration of a loop •

cp Copy one or more files to another location

cron Daemon to execute scheduled commands

crontab Schedule a command to run at a later date/time

curl Transfer data from or to a server

cut Divide a file into several parts



date Display or change the date & time

dc Desk Calculator

dd Data Dump - Convert and copy a file

declare Declare variable & set attributes •

defaults Set preferences, show hidden files

df Display free disk space

diff Display the differences between two files

diff3 Show differences among three files

dig DNS lookup

dirname Convert a full pathname to just a path

dirs Display list of remembered directories •

diskutil Disk utilities - Format, Verify, Repair

disown Unbind a job from the current login session •

ditto Copy files and folders

dot_clean Remove dot-underscore files

drutil Interact with CD/DVD burners

dscacheutil Query or flush the Directory Service/DNS cache

dscl Directory Service command line utility

du Estimate file space usage



echo Display message on screen •

ed A line-oriented text editor (edlin)

enable Enable and disable builtin shell commands •

env Set environment and run a utility

eval Evaluate several commands/arguments •

exec Execute a command •

exit Exit the shell •

expand Convert tabs to spaces

expect Programmed dialogue with interactive programs

Also see AppleScript

export Set an environment variable •

expr Evaluate expressions



false Do nothing, unsuccessfully

fc Fix command (history)

fdisk Partition table manipulator for Darwin UFS/HFS/DOS

fg Send job to foreground •

file Determine file type

find Search for files that meet a desired criteria

fmt Reformat paragraph text

fold Wrap text to fit a specified width

for Loop command •

fsck Filesystem consistency check and repair

fsaclctl Filesystem enable/disable ACL support

fs_usage Filesystem usage (process/pathname)

ftp Internet file transfer program



GetFileInfo Get attributes of HFS+ files

getopt Parse positional parameters

getopts Parse positional parameters •

goto Jump to label and continue execution

grep Search file(s) for lines that match a given pattern

groups Print group names a user is in

gzip Compress or decompress files



hash Refresh the cached/remembered location of commands •

head Display the first lines of a file

hdiutil Manipulate iso disk images

history Command History •

hostname Print or set system name



id Print user and group names/id's

if Conditionally perform a command •

info Help info

install Copy files and set attributes



jobs List active jobs •

join Join lines on a common field



kextfind List kernel extensions

kickstart Configure Apple Remote Desktop

kill Stop a process from running



l List files in long format (ls -l)

last Indicate last logins of users and ttys

launchctl Load or unload daemons/agents

ll List files in long format, showing invisible files (ls -la)

less Display output one screen at a time

let Evaluate expression •

lipo Convert a universal binary

ln Make links between files (hard links, symbolic links)

local Set a local (function) variable •

locate Find files

logname Print current login name

login log into the computer

logout Exit a login shell (bye) •

lpr Print files

lprm Remove jobs from the print queue

lpstat Printer status information

ls (che significa List, cioe' elenca) per elencare i file contenuti all'interno della directory corrente

lsregister Reset the Launch Services database

lsbom List a bill of materials file

lsof List open files



man nome_di_un_comando (che significa MANual, cioe' manuale, ed e' il manuale in linea che spiega qualsiasi comando Unix)

mdfind Spotlight search

mdutil Manage Spotlight metadata store

mkdir Create new folder(s)

mkfifo Make FIFOs (named pipes)

more Display output one screen at a time

mount Mount a file system

mv Move or rename files or directories



net Manage network resources

netstat Show network status

networksetup Network and System Preferences

nice Set the priority of a command

nohup Run a command immune to hangups

ntfs.util NTFS file system utility



onintr Control the action of a shell interrupt

open Open a file/folder/URL/Application

opensnoop Snoop file opens as they occur

osacompile Compile Applescript

osascript Execute AppleScript



passwd Modify a user password

paste Merge lines of files

pbcopy Copy data to the clipboard

pbpaste Paste data from the Clipboard

pico Simple text editor

ping Test a network connection

pkgutil Query and manipulate installed packages

plutil Property list utility

pmset Power Management settings

popd Restore the previous value of the current directory •

pr Convert text files for printing

printenv Print environment variables

printf Format and print data •

ps Process status

pushd Save and then change the current directory

pwd (che significa Print Working Directory, cioe' stampa la directory corrente) per sapere il nome della directory corrente



quota Display disk usage and limits



rcp Copy files between machines

read Read one line from standard input •

readonly Mark a variable or function as read-only •

reboot Stop and restart the system

return Exit a function •

rev Reverse lines of a file

rm Remove files

rmdir Remove folder(s)

rpm Remote Package Manager

rsync Remote file copy - Sync file tree (also RsyncX)



say Convert text to audible speech

screen Multiplex terminal, run remote shells via ssh

screencapture Capture screen image to file or disk

sdiff Merge two files interactively

security Administer Keychains, keys, certificates and the Security framework

sed Stream Editor

select Generate a list of items •

set Set a shell variable = value •

setfile Set attributes of HFS+ files

shift Shift positional parameters •

shopt Set shell options •

shutdown Shutdown or restart OS X

sips Scriptable image processing system

sleep Delay for a specified time

softwareupdate System software update tool

sort Sort text files

source Execute commands from a file •

split Split a file into fixed-size pieces

stop Stop a job or process

su Substitute user identity

sudo Execute a command as another user

sum Print a checksum for a file

suspend Suspend execution of this shell •

sw_vers Print Mac OS X operating system version

system_profiler Report system configuration

systemsetup Computer and display system settings



tail Output the last part of files

tar Tape ARchiver

tee Redirect output to multiple files

test Condition evaluation •

textutil Manipulate text files in various formats (Doc,html,rtf)

time Measure Program Resource Use

times Print shell & shell process times •

top Display process information

touch Change file timestamps

tr Translate, squeeze, and/or delete characters

trap Execute a command when the shell receives a signal •

traceroute Trace Route to Host

true Do nothing, successfully

tty Print filename of terminal on stdin

type Describe a command •



ufs.util Mount/unmount UFS file system

ulimit limit the use of system-wide resources •

umask Users file creation mask

umount Unmount a device

unalias Remove an alias •

uname Print system information

unexpand Convert spaces to tabs

uniq Uniquify files

units Convert units from one scale to another

unset Remove variable or function names •

until Loop command •

users Print login names of users currently logged in

uuencode Encode a binary file

uudecode Decode a file created by uuencode

uuidgen Generate a Unique ID (UUID/GUID)

uucp Unix to Unix copy



vi Text Editor



wait Wait for a process to complete •

wc Print byte, word, and line counts

whatis Search the whatis database for complete words

where Report all known instances of a command

which Locate a program file in the user's path

while Loop command •

who Print all usernames currently logged on

whoami Print the current user id and name (`id -un')

write Send a message to another user



xargs Execute utility - passing arguments

yes Print a string until interrupted

!! Run the last command again



Vediamo alcuni esempi di utilizzo dei comandi piu' comuni.


Questa piccola pietra preziosa è inclusa in ogni versione di Mac OS X. Inizialmente sviluppata come rimpiazzo per i comandi rsh/rlogin, ssh è diventata il collante della comunità Linux/Unix (e adesso di Mac OS X). L’utilizzo principale di Openssh è l’amministrazione remota in sicurezza. Se volete abilitare il server SSH incluso in Mac OS X potete farlo dalle Preferenze di Sistema, cliccate su “Condivisione” e spuntate l’opzione “Login remoto”. Adesso se vi trovate in giro e volete accedere al vostro computer potete usare un client come PuTTY (da un sistema windows) oppure “ssh” dal terminale di Mac OS X e collegarvi all’indirizzo IP del vostro Mac. Dopo esservi autenticati con il vostro username e la vostra password avrete completo accesso alla riga di comando di Mac OS X. Openssh ha molti, molti altri usi e alcuni di questi sono molto avanzati. Il mio preferito è usare ssh come un server SOCKS per navigare sicuro in internet quando mi collego da postazioni pubbliche.



Top è un’altra utility classica che è stata a lungo usata dalla comunità Linux/Unix. Per usare top, aprite il terminale e digitate “top”. In un istante vi troverete di fronte ad una finestra piena di testo. Quello che vedete è una lista di ogni processo attualmente in esecuzione sul vostro Macintosh. Quando il mio Mac ha dei rallentamenti, top è la prima risorsa che utilizzo per controllare quello che sta succedendo.



lsbom è utile per curare quella paranoia che vi assale prima di provare ad installare qualche utility carina che avete trovato su qualche sito internet . Con lsbom potete esaminare il contenuto di un installer Mac OS X (i file .pkg) e ottenere una lista molto dettagliata di cosa verrà installato sul prezioso filesystem del vostro Mac. Per usare lsbom, aprite il terminale e navigate fino alla posizione in cui si trova il file .pkg. Se il vostro installer si trova in un file .dmg, sarà utile copiare il file .pkg sulla scrivania, e successivamente digitare “cd ~/Desktop” (quel carattere si ottiene con alt+5). Una volta che vi trovate nel punto dove si trova il file .pkg, digitate “lsbom file.pkg/Contents/Archive.bom|more” e vedrete una lista completa dei file che il vostro nuovo programma intende installare.



Questo comando è unico di Mac OS X, ed è uno dei più divertenti. Provatelo aprendo il terminale e digitando “say hello”.



Il comando “softwareupdate” è un modo veloce e facile per installare gli aggiornamenti software di Apple. Per usarlo, aprite il terminale e digitate “softwareupdate -i -a” per installare tutti gli aggiornamenti disponibili per il vostro Macintosh. Se volete installare solamente gli aggiornamenti “raccomandati” digitate “sofwareupdate -i -r”.



Il modo più veloce e facile per verificare quale indirizzo IP il vostro Mac sta usando, è decisamente “ifconfig”. Per usare ifconfig, aprite il terminale e digitate “ifconfig”. Vedrete una moltitudine di informazioni, incluso il MAC address della vostra scheda di rete. Io di solito uso “ifconfig|grep inet” per ottenere solo le informazioni relative all’IP del mio computer. Potete disabilitare una interfaccia di rete (ad esempio “en0″) digitando “ifconfig en0 down”. Potete riabilitarla con “ifconfig en0 up”. Questo modo è molto più veloce che usare le preferenze di sistema.



lipo è una utility che manipola gli universal binary di Mac OS X. Molti (quasi tutti) i programmi adesso vengono commercializzati o scaricati come “Universal”, cioè hanno al loro interno codice binario che può essere interpretato sia dai chip PowerPC che dai chip Intel. Ma visto che probabilmente vi interessa solo uno dei due, potete usare lipo per “snellire” i vostri file binari. Per esempio se volete snellire l’applicazione “Stickies” (promemoria) in modo che contenga solo codice intel (i386) fate così:

cd /Applications

lipo Stickies.app/Contents/MacOS/Stickies -thin i386 -output Stickies.app/Contents/MacOS/Stickies.i386 (su un’unica riga)

cd Stickies.app/Contents/MacOS/

rm Stickies

mv Stickies.i386 Stickies



screencapture offre un modo più sofisticato (rispetto a comando-maiusc-3) per fare fotografie allo schermo. Per usarlo, aprite il terminale e provate a digitare “screencapture -iW ~/Desktop/screen.jpg”. Apparirà l’icona di una macchina fotografica che attende di essere cliccata su una finestra. Una volta fatto clic, verrà creato un file sulla vostra scrivania chiamato “screen.jpg” che conterrà un’immagine di qualunque finestra abbiate cliccato. Potete ovviamente anche creare un’immagine del vostro intero schermo digitando “screencapture -S ~/Desktop/screen.jpg”. Se vi sentite particolarmente creativi potete fotografare solo una parte del vostro schermo digitando “screencapture -ic”.



Ultima revisione: ErmaC - 30 Luglio 2010

  • Like 2
Link to comment
Share on other sites


  • Create New...