Vous êtes sur la page 1sur 30

INF 321 : mmento de la syntaxe de Java

Table des matires


1. La structure gnrale d'un programme
Programme sans enregistrements
Programme avec enregistrements
2. Les composants lmentaires de Java
Les identificateurs
Les mots-clefs
Les commentaires
3. Les types primitifs
Les constantes entires
Les constantes flottantes
Les constantes caractres
Les constantes chanes de caractres
Les constantes symboliques
4. Les oprateurs
L'affectation
Les oprateurs arithmtiques
Les oprateurs relationnels
Les oprateurs logiques boolens
Les oprateurs logiques bit bit
L'oprateur conditionnel ternaire
L'oprateur de conversion de type
La concatnation de chanes de caractres
Rgles de priorit des oprateurs
5. Le branchement conditionnel
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

6. Les boucles
Boucle while
Boucle do---while
Boucle for
7. Les instructions d'entre et de sortie
8. Les fonctions
Dfinition
La fonction main
9. Les enregistrements
10. Les tableaux
11. Les fonctions mathmatiques
12. Le systme de fichiers d'Unix/Linux
Les principales commandes
Les expansions d'arguments
La redirection des entres-sorties

1 La structure gnrale d'un programme


1.1 Programme sans enregistrements
class NomProgramme
{
// dclaration des variables globales
static type nomVariable;
// dfinition des fonctions secondaires
static type nomFonction( type1 para1, ..., typeN paraN)
{
dclarations de variables locales
instructions
return valeur;
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

}
// dfinition de la fonction principale
public static void main(String[] args)
{
dclarations de variables locales
instructions
}
}

Si ce programme s'appelle NomFichier.java, il se compile au moyen de la commande


javac NomFichier.java

qui produit le fichier NomProgramme.class.


Le programme est excut au moyen de la commande
java NomProgramme

1.2 Programme avec enregistrements


Un programme peut inclure la dfinition d'un nombre quelconque d'enregistrements (accompagns d'ventuels
constructeurs) avant le bloc class NomProgramme.
class NomEnregistrement
{
// dclaration des champs
type nomChamp;
}
class NomProgramme
{
// dclaration des variables globales
static type nomVariable;
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

// dfinition des fonctions secondaires


static type nomFonction( type1 para1, ..., typeN paraN)
{
dclarations de variables locales
instructions
return valeur;
}
// dfinition de la fonction principale
public static void main(String[] args)
{
dclarations de variables locales
instructions
}
}

2 Les composants lmentaires de Java


2.1 Les identificateurs
Un identificateur est une suite de caractres parmi :
les lettres (minuscules ou majuscules),
les chiffres,
le blanc soulign (_),
le dollar ($).
Les majuscules et minuscules sont diffrencies.

Conventions.

noms de variables : viter les noms commenant par _ ou par $ car ils sont habituellement rservs
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

respectivement aux variables systmes et aux variables d'un code gnr automatiquement ;
noms de fonctions : juxtaposer un verbe en minuscule et un nom dbutant par une majuscule (par exemple,
parcourirListe) ;
noms d'enregistrements et noms de programmes : commencer par une majuscule.

2.2 Les mots-clefs


Un certain nombre de mots, appels mots-clefs, sont rservs pour le langage lui-mme et ne peuvent pas tre
utiliss comme identificateurs. Le Java compte 50 mots clefs, parmi lesquels const et goto sont rservs mais ne
sont pas utiliss.
abstract assert
boolean break
byte case
catch
char
class
const
continue default do
double
else
enum
extends final
finally float
for
if
goto
implements
import instanceof int
interface long native
new
package
private protected
public return
short static
strictfp super
switch synchronized this
throw
throws transient try
void
volatile while

Parmi les mots interdits pour les identificateurs, il faut ajouter les boolens false et true ainsi que null.

2.3 Les commentaires


Commentaire de fin de ligne :
// Ceci est un commentaire

Commentaire d'un bloc de code :


open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

/*

Ceci est
un commentaire */

Commentaire d'un bloc de code pour la documentation Javadoc :


/**

Ceci est
un commentaire */

3 Les types primitifs

type
byte

taille (en bits) intervalle des valeurs


8
[27;27[

short

16

[215; 215[

int

32

[231;231[

long

64

0
[263;263[
\u0000
[\u0000; \uffff]
false
{false, true}
[1.4 E45; 3.4028235 E38]
0
[4.9 E324; 1.7917931348623157 E308] 0

16
boolean 1
float
32
double 64
char

valeur par dfaut


0

3.1 Les constantes entires


Les constantes entires peuvent tre reprsentes dans trois bases :
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

dcimale (par dfaut) ;


octale : les constantes octales commencent par un zro (ex : 0377) ;
hexadcimale : les constantes hexadcimales commencent par 0x ou 0X (ex : 0xff).
On peut spcifier explicitement qu'une constante entire est de type long en la suffixant par l ou L (ex : 256L).

3.2 Les constantes flottantes


Par dfaut, une constante flottante est de type double sauf si elle est suffixe par f ou F. Par ailleurs, une constante
entire suffixe par d est de type double. Ainsi, 10d ou 10. dsignent la mme constante de type double.

3.3 Les constantes caractres


Les caractres Java sont les caractres Unicode. Pour dsigner un caractre imprimable, il suffit de le mettre entre
apostrophes (par ex. 'A' ou '$'), sauf pour l'antislash et l'apostrophe, qui sont respectivement dsigns par '\\' et
'\''. Les caractres peuvent plus gnralement tre dsigns par '\uCodeHexa' o CodeHexa est le code Unicode
en hexadcimal (4 symboles) du caractre. Les caractres 8 bits peuvent galement s'crire '\CodeOctal' o
CodeOctal est le code octal du caractre, ou '\xCodeHexa' o CodeHexa est le code hexadcimal (2 symboles). Les
caractres non-imprimables les plus frquents disposent aussi d'une notation plus simple :
\n nouvelle

\r retour chariot
ligne
\t tabulation horizontale \f saut de page
\b retour arrire

3.4 Les constantes chanes de caractres


Une chane de caractres est une suite de caractres entours par des guillemets. A l'intrieur d'une chane de
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

caractres, le caractre " doit tre dsign par \".

3.5 Les constantes symboliques


Il est souvent souhaitable de donner un nom une constante plutt que d'utiliser sa valeur littrale. Pour cela, on la
dclare comme suit et on note gnralement son identificateur en majuscules, par exemple
final int REPONSE = 42;

4 Les oprateurs
4.1 L'affectation
variable = expression
Cette expression a pour effet d'valuer expression et d'affecter la valeur obtenue variable. De
expression possde une valeur, qui est celle d'expression. Ainsi, l'expression i = 5 vaut 5.

plus, cette

L'affectation effectue une conversion de type implicite : la valeur de l'expression (terme de droite) est convertie
dans le type du terme de gauche. Cette conversion est possible uniquement si elle s'effectue vers un type de taille
suprieure celle du type de dpart :
byte short int long float double

char

Ces conversions sont sans perte de prcision, sauf celles de int et long en float et double qui peuvent parfois
entraner des arrondis.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

4.2 Les oprateurs arithmtiques


Les oprateurs arithmtiques classiques sont l'oprateur unaire - (oppos) ainsi que les oprateurs binaires
+ addition
- soustraction
* multiplication
/ division
% reste de la division (modulo)

Ces oprateurs agissent de la faon attendue sur les entiers comme sur les flottants. Leurs seules spcificits sont
les suivantes :
La notation / dsigne la fois la division entire et la division entre flottants. Si les deux oprandes sont de
type entier, l'oprateur / produira une division entire (quotient de la division). Par contre, il dlivrera une
valeur flottante ds que l'un des oprandes est un flottant. Par exemple,
double x;
x = 3 / 2;

affecte x la valeur 1. Par contre


x = 3 / 2.;

affecte x la valeur 1.5.


L'oprateur % est le reste de la division euclidienne. Si l'un des deux oprandes est ngatif, le signe du reste
est celui du dividende. Cet oprateur s'applique aussi des flottants. Dans ce cas, la valeur r de a % b est
donne par r = a - bq o q = a/b .
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Notons enfin qu'il n'y a pas d'oprateur effectuant l'lvation la puissance. De faon gnrale, il faut utiliser la
fonction pow(x,y) de la classe java.lang.Math pour calculer xy .

4.3 Les oprateurs relationnels


strictement suprieur
>= suprieur ou gal
< strictement infrieur
<= infrieur ou gal
== gal
!= diffrent
>

Leur syntaxe est


expression-1 op expression-2

Les deux expressions sont values puis compares. La valeur retourne est de type boolean.

4.4 Les oprateurs logiques boolens


&& et logique
|| ou logique
!

ngation logique

Comme pour les oprateurs de comparaison, la valeur retourne par ces oprateurs est un boolean. Dans une
expression de type
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

expression-1 op-1 expression-2 op-2 ...expression-n

l'valuation se fait de gauche droite et s'arrte ds que le rsultat final est dtermin.
Par exemple,
int x = 5, y = 2, z = 3;
boolean r;
r = (x >= 0) && (y != 2) || !(z > 10);
r

aura comme valeur true.

4.5 Les oprateurs logiques bit bit


Les sept oprateurs suivants permettent de manipuler des entiers au niveau du bit. Ils s'appliquent tous les types
entiers.

et
^ ou exclusif
<< dcalage gauche
>>> dcalage droite sans propagation du bit de signe
&

ou inclusif
~ complment 1
>> dcalage droite
|

En pratique, les oprateurs &, | et ^ consistent appliquer bit bit les oprations suivantes
&01
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

000
101
|01
001
111
^01
001
110

L'oprateur unaire ~ change la valeur de chaque bit d'un entier. Le dcalage droite a >> n et gauche a << n
effectuent respectivement une division et une multiplication par 2n quand ils oprent sur un entier a positif, o n est
pris modulo 32 pour les int et modulo 64 pour les long. Quand a est un entier ngatif, le dcalage droite a >> n
propage le bit de signe (on remplit les n positions de poids fort avec des 1). Par contre, le dcalage droite sans
propagation du signe, a >>> n, propage des zros.
reprsentation reprsentation
dcimale binaire
a
77 00000000000000000000000001001101
b
23 00000000000000000000000000010111
a & b
5 00000000000000000000000000000101
a | b
95 00000000000000000000000001011111
a ^ b
90 00000000000000000000000001011010
~a
-78 11111111111111111111111110110010
b << 5
736 00000000000000000000001011100000
b >> 2
5 00000000000000000000000000000101
b >> 3
2 00000000000000000000000000000010
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

23 00000000000000000000000000010111
c
-33 11111111111111111111111111011111
c >> 2
-9 11111111111111111111111111110111
c >>> 2 1073741815 00111111111111111111111111110111
b >> 32

4.6 L'oprateur conditionnel ternaire


L'oprateur conditionnel ? est un oprateur ternaire. Sa syntaxe est la suivante :
Cette expression est gale
l'expression

condition
? expression-1 : expression-2
expression-1 si condition est satisfaite, et expression-2

sinon. Par exemple,

x >= 0 ? x : -x

correspond la valeur absolue d'un nombre.

4.7 L'oprateur de conversion de type


L'oprateur de conversion de type, appel cast, permet de modifier explicitement le type d'une expression. On crit
(type) expression

De tous les oprateurs, la conversion de type est celui qui a la priorit la plus leve.
Par exemple, dans
int i = 3, j = 2;
double r = (double)i/j;
r

vaut 1.5.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

4.8 La concatnation de chanes de caractres


L'oprateur + appliqu deux objets de type String dsigne la concatnation de chanes de caractres. Ds que
l'un des deux oprandes est de type String, l'autre est converti en String.
Par exemple, dans
int i = 3;
System.out.println("i = " + i);

la chane de caractres constante "i = " est concatne avec la valeur de la variable i convertie en chane de
caractres.

4.9 Rgles de priorit des oprateurs


Le tableau suivant classe les oprateurs par ordres de priorit dcroissants. Les oprateurs placs sur une mme
ligne ont mme priorit. La flche de la seconde colonne du tableau donne l'ordre d'associativit de ces oprateurs.
Par exemple a || b || c correspond (a || b) || c alors que a = b = c correspond a = (b = c).
On prfrera toutefois mettre des parenthses en cas de doute...
oprateurs
++

-(unaire) ~

--

-(arithmtiques) +(String)

<<

(type)

%
>>

>>>

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

<
==

<=

>

>= instanceof

!=

&(et bit--bit)
^
|
&&
||
? :
=

*=

/=

%=

+=

-=

<<=

>>=

>>>=

&=

^=

|=

Table 1: Rgles de priorit des oprateurs

Notons que les oprateurs logiques bit--bit sont moins prioritaires que les oprateurs relationnels. Cela implique
que dans des tests sur les bits, il faut parenthser les expressions.

5 Le branchement conditionnel
La forme la plus gnrale est :
if ( expression )
{
instruction-1
}
else
{
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

instruction-2
}
expression

est value. Si elle vaut true, instruction-1 est excute, sinon instruction-2 est excute.

Le bloc
else
{
instruction-2
}

est facultatif. Chaque instruction peut ici tre un bloc d'instructions.


Par ailleurs, on peut imbriquer un nombre quelconque de tests, ce qui conduit :
if ( expression-1 )
{
instruction-1
}
else if ( expression-2 )
{
instruction-2

}
else if ( expression-n )
{
instruction-n
}
else
{
instruction-
}

6 Les boucles
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

6.1 Boucle while


La syntaxe de while est la suivante :
while ( expression )
{
instruction
}

Tant que expression est vrifie (i.e., vaut true), instruction est excute.

6.2 Boucle dowhile


Il peut arriver que l'on ne veuille effectuer le test de continuation qu'aprs avoir excut l'instruction. Dans ce cas, on
utilise la boucle dowhile. Sa syntaxe est
do
{
instruction
}
while ( expression );

Ici, instruction sera excute tant que expression vaut true. Cela signifie donc que instruction est toujours
excute au moins une fois.

6.3 Boucle for


La syntaxe de for est :
for ( expr-1 ; expr-2 ; expr-3)
{
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

instruction
}

On doit comprendre cette boucle ainsi : expr-1 est la condition initiale de la boucle, expr-2 est la condition de
poursuite de la boucle et expr-3 est une expression excute aprs chaque tour de boucle. L'ide est que expr-1
reprsente l'tat initial d'un compteur dont la valeur sera modifie aprs chaque tour par expr-3, et la boucle
continue tant que la condition expr-2 est vrifie.
Par exemple,
for (int i=0; i<10; i=i+1)
{
System.out.println("Bonjour");
}

affichera l'cran 10 fois le mot Bonjour suivi d'un retour la ligne.

Une version quivalente avec la boucle while serait :


int i = 0;
while (i < 10)
{
System.out.println("Bonjour");
i = i+1;
}

7 Les instructions d'entre et de sortie


7.1 Affichage
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

On utilise pour l'affichage les instructions suivantes :


System.out.print(expression); affiche la valeur textuelle d'une expression
String, Object).
System.out.println(expression); affichage avec passage la ligne.

(opre sur les types primitifs,

7.2 Lecture
On utilise les fonctions de la classe Ppl. Pour lire un entier entr au clavier et stocker sa valeur dans la variable x, la
syntaxe est
x = Ppl.readInt();

La classe Ppl contient galement les fonctions readChar, readDouble et readWord.


La fonction Ppl.endOfInput retourne un boolen qui vaut true ds que le caractre de fin de fichier est rencontr.
Pour lire un ensemble d'entiers sur l'entre standard, on utilisera par exemple :
do
{
x = Ppl.readInt();
// instructions
}
while (!Ppl.endOfInput());

8 Fonctions
8.1 Dfinition
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

static type nomFonction( type1 para1, ..., typeN paraN)


{
dclarations de variables locales
instructions
return valeur;
}

est le type de la valeur retourne par la fonction, donne comme argument de return. Si la fonction ne
retourne aucune valeur, elle est de type void et l'instruction de retour la fonction appelante est return; (ou
omise).
La fonction travaille sur une copie des valeurs de ses arguments.
Les mthodes dynamiques, elle, ne sont pas prcdes du mot-clef static.
type

Par exemple,
static long facto(int n)
{
long resultat = 1;
for (int i=2; i<=n; i=i+1)
{
resultat = resultat * i;
}
return resultat;
}

n'est rien d'autre que la fonction factorielle.


Il est possible de dfinir des fonctions ayant le mme nom quand leur nombre d'arguments ou le type de leurs
arguments diffrent.

8.2 La fonction main


open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

public static void main(String[] args)

Les arguments de main sont des chanes de caractres, ranges dans le tableau args. Il s'agit des diffrents mots
passs en arguments de la commande java NomClass. L'lment args[0] correspond au premier argument, et non
au nom de la classe. Pour convertir les arguments de main de type String en l'un des types primitifs, par exemple
int, on utilise la fonction
int Integer.parseInt(String str)

ou, de manire quivalente Boolean.parseBoolean, Byte.parseByte, Short.parseByte, Long.parseLong,


Float.parseFloat, Double.parseDouble.
Par exemple, si l'on veut excuter un programme avec comme paramtres une chanes de caractres, un nombre
entier puis nouveau une chane de caractres, nous aurons la fonction main suivante :
public static void main(String[] args)
{
String pays = args[0];
int cp = Integer.parseInt(args[1]);
String ville = args[2];

Ainsi, si notre programme se nomme Prog, on pourra l'appeler par la ligne de commande
java Prog France 91128 Palaiseau

9 Les enregistrements
Dfinition
class
{

NomEnregistrement

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

// dclaration des champs


[final] type nomChamp;
}

Comme pour les variables, il faut qualifier de final un champ pour qu'il soit constant.

Dclaration d'un enregistrement


La dclaration d'un enregistrement se fait de la mme manire que pour toute variable. Ainsi, la syntaxe est :
NomEnregistrement nomVariable;

o NomEnregistrement est le type, et nomVariable le nom de la variable.

Allocation d'un enregistrement


Une fois une variable de type enregistrement dclare, son allocation se fait par appel au constructeur. Par dfaut,
la syntaxe est :
nomVariable = new NomEnregistrement();

Accs un champ de la variable enregistrement


nomVariable.nomChamp

Constructeurs
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

On peut dfinir d'autres constructeurs :


Le constructeur est une fonction qui porte le mme nom que l'enregistrement ;
Le type de l'objet retourn n'est pas mentionn, et il n'y a pas d'instruction return;
Il permet par exemple d'affecter les champs de l'objet construit, dsign par this.
Par exemple,
class Point
{
double abscisse;
double ordonnee;
Point(double x, double y)
{
abscisse = x;
ordonnee = y;
}
}

On appelle alors ce constructeur par Point p = new Point(42, 55.5);


Remarquons que l'on peut crire le constructeur ainsi :
Point(double abscisse, double ordonnee)
{
this.abscisse = abscisse;
this.ordonnee = ordonnee;
}

Dans ce cas, l'utilisation du mot-cl this est requise pour distinguer les arguments des champs de l'enregistrement.
Ainsi, this.abscisse correspond au champ abscisse d'un enregistrement de type Point allou par le constructeur.
La variable abscisse correspond, elle, l'argument abscisse du constructeur.
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

10 Les tableaux
Dclaration
type[] nomTableau;

On peut galement initialiser un tableau sa dclaration :


type[] nomTableau = {liste des lments};

o les lments de la liste sont spars par des virgules.

Allocation
nomTableau = new type[expr];

o expr est une expression dont la valeur est un entier dfinissant la longueur du tableau, i.e. son nombre
d'lments.

Accs aux lments


Les lments d'un tableau de taille N sont numrots de 0 N1. On accde l'lment d'indice i par
nomTableau[i].

Taille d'un tableau


nomTableau.length
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

nomTableau.length

fournit la longueur du tableau nomTableau.

Tableaux multi-dimensionnels
La dclaration d'un tableau deux dimensions est de la forme
type[][] nomTableau;

et l'accs un lment se fait par nomTableau[i][j].

nomTableau[i]

dsigne la ligne d'indice i du tableau. On peut allouer toutes les lignes simultanment si elles ont la

mme taille :
tab = new int[nbLignes][nbCol];

ou allouer les lignes sparment, par exemple pour un tableau triangulaire :


tab = new int[nbLignes][];
for (int i=0; i< tab.length; i=i+1)
tab[i] = new int[i+1];

11 Les fonctions mathmatiques


La classe java.lang.Math contient les fonctions mathmatiques usuelles. Elle dfinit les constantes mathmatiques
e et , de type double : E et PI.
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Les fonctions associes sont :

int abs (int a)

valeur absolue

long abs (long a)


float abs (float a)
double abs (double a)
double sin (double a)
double cos (double a)
double tan (double a)
double asin (double a)
double acos (double a)
double atan (double a)
double atan2 (double y,
double toDegrees(double
double toRadians(double
double cosh(double x)
double sinh(double x)
double tanh(double x)
double exp (double a)
double log (double a)
double log10 (double a)
double sqrt (double a)
double cbrt(double a)
open in browser PRO version

sinus
cosinus
tangente
arc sinus
arc cosinus
arc tangente
double x) convertit (x,y) en polaire (r,) et renvoie
angrad)
convertit un angle en radians en degrs
angdeg)
convertit un angle en degrs en radians
cosinus hyperbolique
sinus hyperbolique
tangente hyperbolique
exp
log nprien
log en base 10
racine carre
racine cubique

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

double pow (double a, double b)


double floor (double a)
double ceil (double a)
double rint (double a)
int round (float a)
long round (double a)
int max (int a, int b)

puissance
partie entire (infrieure) de a
partie entire (suprieure) de a
entier le plus proche de a
entier le plus proche de a (stock dans un int)
entier long le plus proche de a
maximum

long max (long a, long b)


float max (float a, float b)
double max (double a, double b)
int min (int a, int b)

minimum

long min (long a, long b)


float min (float a, float b)
double min (double a, double b)
double random ()

retourne un nombre alatoire de [0;1[

12 Le systme de fichiers d'Unix/Linux


Les fichiers d'une machine Unix/Linux sont organiss en un arbre dont les noeuds internes sont les rpertoires. A
chaque utilisateur (login) correspond un rpertoire particulier, c'est son home directory dans lequel il peut
construire son arborescence personnelle. Ce rpertoire s'crit ~login. Pour un utilisateur ~ (sans le login) dsigne
son propre home directory. Un chemin dans l'arborescence s'crit en numrant les noeuds rencontrs avec des /
comme sparateurs, par exemple ~/INF_321/TD1/ A partir de tout rpertoire, .. dsigne le rpertoire pre et . le
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

rpertoire lui-mme.

12.1 Les principales commandes


cd nom_de_repertoire

Change Directory
permet de se placer dans le rpertoire nom_de_repertoire. Utilise sans argument, la commande cd replace
dans le home directory.
ls nom_de_repertoire

liste le contenu du rpertoire nom_de_repertoire. Utilise sans argument, elle liste le contenu du rpertoire
courant. L'option -a permet de lister galement les fichiers dont le nom commence par ., l'option -l affiche les
proprits des fichiers (droits d'accs, propritaire, taille, date de modification), l'option -t liste les fichiers en
les triant suivant la date de la dernire modification.
mkdir nom_de_repertoire

MaKe Directory
cre le rpertoire nom_de_repertoire.
rmdir nom_de_repertoire

ReMove Directory
supprime le rpertoire nom_de_repertoire, condition qu'il soit vide.
cp fichier_depart fichier_arrivee
cp fichier1 [ fichier2 fichier3...] repertoire_arrivee

CoPy
Si les deux arguments sont des noms de fichier, la commande copie le fichier dsign par le premier
argument dans le fichier dsign par le second. Si le dernier argument est un rpertoire existant, tous les
fichiers dsigns par les arguments prcdents sont copis dans ce rpertoire.
mv fichier_depart fichier_arrivee
mv fichier1 [ fichier2 fichier3...] repertoire_arrivee

MoVe
dplace des fichiers. La syntaxe est identique celle de cp.
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

rm fichier1 [ fichier2 fichier3...]

ReMove
supprime le ou les fichiers donns en arguments.
pwd

Print Working Directory


affiche le rpertoire courant.

12.2 Les expansions d'arguments


Certains caractres spciaux sont interprts dans les arguments. Les deux les plus utiliss sont :
?
*

qui peut tre remplac par n'importe quel caractre ;


qui peut tre remplac par une chane quelconque de caractres (incluant la chane vide).

Par exemple, la commande rm TD?/*.class supprime tous les fichiers dont le nom est suffix par .class dans tous
les rpertoires dont le nom est form de la chane de caractres TD suivie d'un caractre (par exemple, TD1, TD2,
mais pas TD10).

12.3 Redirection des entres-sorties


Les commandes et programmes lisent et affichent leurs donnes respectivement dans l'entre standard (le clavier)
et sur la sortie standard (l'cran). Il est possible de modifier ce comportement par dfaut en redirigeant l'entre
standard ou la sortie standard vers un fichier.
L'oprateur > redirige la sortie standard vers un fichier. Par exemple, avec java Prog > fichier_sortie tout
ce qui est affich l'excution de Prog est crit dans le fichier fichier_sortie. De la mme manire, ls >
fichier, crit le rsultat de la commande ls dans le fichier fichier.
L'oprateur < redirige l'entre standard vers un fichier. Par exemple, avec java Prog < fichier_entree les
donnes lues au cours de l'excution de Prog ne sont plus celles entres au clavier mais celles qui se trouvent
dans le fichier fichier_entree.
open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Dernire mise jour : 05/05/2010


Anne [point] Canteaut [arobase] inria [point] fr
This document was translated from LATEX by HEVEA.

open in browser PRO version

Are you a developer? Try out the HTML to PDF API

pdfcrowd.com

Vous aimerez peut-être aussi