Bonjour,

je souhaite creer une fontion dans mon script qui me permetrait de faire des fichier de sauvegarde c'est a dire
je genere un fichier nommé test.txt

mais lorsque je genererai un deuxieme fichiers, mon script devra verifier si le fichier test.txt existe deja et si oui le renommé test2.txt

je pense devoir utiliser la commande if mais j'aurais besoins de vos lumieres

voici mon script

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
#!/bin/ksh
RepTrv="/produits/test/ste"
 
cd $RepTrv
 
# Déclaration
FicOutDeb="EtatD"
Nomfic="test"
Titre=0
Region=0
Date=`date '+%d/%m/%y'`
Heure=`date '+%H:%M'`
Annee=`date '+%Y'`
Mois=`date '+%m'`
Jour=`date '+%d'`
Heures=`date '+%H'`
Minute=`date '+%M'`
Numfic=000
ext=".txt"
 
 
cat $FicOutDeb | awk -F'|' -v Titre=$Titre -v Region=$Region -v Date=$Date -v Heure=$Heure -v Annee=$Annee -v Mois=$Mois -v Jour=$Jour -v Heures=$Heures -v Minute=$Minute  '{
ANNEE=substr($15,1,4)
MOIS=substr($15,6,2)
JOUR=substr($15,9,2)
HEURE=substr($15,12,2)
MINUTE=substr($15,15,2)
 
 
if(Titre==0)
	{
printf ""
Titre=1
}
 
if(($6!=0) && ($7!=0) && ($8!=0) && ($9!=0) && ($5!=2) && ($17<=5) && ($2!=2))
	{
if((($6==2) || ($6==3)) && (($7==2) || ($7==3)) && (($8==2) || ($8==3)) && (($9==2) || ($9==3)))
	{
	if(($18<=50) && ($19<=50) && ($20<=50) && ($21<=50))
	{
printf"%s	%s\n",$1,Region
		next
		}
		else 
		{
printf"%s	%s\n",$1,Region
		next
		}
		}
	if($16==0)
	{
printf"%s	%s\n",$1,Region
		next
		}
	else
		{
printf"%s	%s\n",$1,Region
		next
		}
	}
 
if((($2!=2) && ($3==0) && ($17<=5)) && ($5!=2))
	{
	printf"%s	%s\n",$1,Region
	next
}
 
if(($14==3) &&  ($5!=2) && ($2!=2))
	{
printf"%s	%s\n",$1,Region
	next
	}
 
if(($12==3) && ($5!=2) && ($2!=2))
	{
printf"%s	%s\n",$1,Region
	next
	}
 
if(($22==3) &&  ($5!=2) && ($2!=2))
	{
printf"%s	%s\n",$1,Region
	next
}
 
if(($13==3) && ($5!=2) && ($2!=2))
	{
printf"%s	%s\n",$1,Region
	next
	}
 
if(((ANNEE>Annee) && ($5==2) && ($17<=5) && ($2!=2)) || ((ANNEE==Annee) && (MOIS==Mois) && (JOUR<Jour) && ($5==2) && ($17<=5) && ($2!=2)) || ((ANNEE==Annee) && (MOIS==Mois) && (JOUR==Jour) && (((HEURE<Heures) && (MINUTE<30)) || ((HEURE<Heures) && ((60-MINUTE+Minute)>=30))) && ($5==2) && ($17<=5) && ($2!=2)) || ((ANNEE==Annee) && (MOIS==Mois) && (JOUR==Jour) && (HEURE==Heures) && (MINUTE<=(Minute-30)) && ($5==2) && ($17<=5) && ($2!=2)) || ((ANNEE==Annee) && (MOIS<Mois) && ($5==2) && ($17<=5) && ($2!=2)) || ((ANNEE<Annee) && ($5==2) && ($17<=5) && ($2!=2)))
	{
	if ($23==0)
		{
printf"%s	%s\n",$1,Region
		next
		}
	else
		{
printf"%s	%s\n",$1,Region
		next
		}
	}
}' >$Nomfic$ext
 
rm $FicOutDeb
nl -ba test.txt>test1.txt
Merci