- "sauvegarder" et "en ram" dans la même phrase c'est curieux....
- si une machine a beaucoup de ram, de toute façon les accès disques sont cachés dans des buffers en ram. Donc en pratique, il n'y a plus que des accès en ram (sauf pour les écritures qui sont propagées sur le disque évidement) et c'est complètement transparent donc je vois pas trop l'intérêt de faire un système de fichier en ram.
En gros le principe est de construire deux expressions régulières :
une EXPR1 qui matche les exceptions et une EXPR2 qui matche le cas général.
Ici ca donnerait : EXPR1: \\line\|\\par
et EXPR2 : \\[a-zA-Z]*
et ensuite on fait une opération de substitution (avec sed ou vi)
s/ \( EXPR1\) \| EXPR2 / \1/g (j'ai rajouté des espaces pour la lisibilité)
par ex avec sed :
sed 's/\(\\line\|\\par\)\|\\[a-zA-Z]*/\1/g'
Si le texte contient \toto, ça matche EXPR2 et c'est supprimé (car \1 ne 'contient' alors rien) et si le texte contient \line (ou \par) ça matche EXPR1 et c'est remplacé par lui même (donc conservé).
En fait \line matche aussi EXPR2, mais sed prend le premier 'match' possible. Par contre ça marche plus si on intervertit EXPR1 et EXPR2 :
sed 's/\\[a-zA-Z]*\|\(\\line\|\\par\)/\1/g'
Sarge devait etre prete en decembre 2003 (cf ce mail : http://lists.debian.org/debian-devel-announce/2003 /08/msg00010.html) et est finalement sortie en juin 2005 ....
# environnement
Posté par anahop . En réponse au message diverses questions : permissions, bash/exec, suid et sed. Évalué à 1.
TOTO=paf
exec machin
dans un shell, c'est un peu comme avoir un programme en C qui fait
int toto=5;
exec(truc);
Dans le programme truc, même s'il y a une variable de nom toto, elle ne vaudra pas 5 au lancement du programme. Pareil en bash.
# hein ?
Posté par anahop . En réponse au message Placer un filesystem complet en RAM. Évalué à 2.
- "sauvegarder" et "en ram" dans la même phrase c'est curieux....
- si une machine a beaucoup de ram, de toute façon les accès disques sont cachés dans des buffers en ram. Donc en pratique, il n'y a plus que des accès en ram (sauf pour les écritures qui sont propagées sur le disque évidement) et c'est complètement transparent donc je vois pas trop l'intérêt de faire un système de fichier en ram.
[^] # Re: Faire l'inverse
Posté par anahop . En réponse au message expression rationnelle particuliere. Évalué à 1.
En gros le principe est de construire deux expressions régulières :
une EXPR1 qui matche les exceptions et une EXPR2 qui matche le cas général.
Ici ca donnerait : EXPR1: \\line\|\\par
et EXPR2 : \\[a-zA-Z]*
et ensuite on fait une opération de substitution (avec sed ou vi)
s/ \( EXPR1\) \| EXPR2 / \1/g (j'ai rajouté des espaces pour la lisibilité)
par ex avec sed :
sed 's/\(\\line\|\\par\)\|\\[a-zA-Z]*/\1/g'
Si le texte contient \toto, ça matche EXPR2 et c'est supprimé (car \1 ne 'contient' alors rien) et si le texte contient \line (ou \par) ça matche EXPR1 et c'est remplacé par lui même (donc conservé).
En fait \line matche aussi EXPR2, mais sed prend le premier 'match' possible. Par contre ça marche plus si on intervertit EXPR1 et EXPR2 :
sed 's/\\[a-zA-Z]*\|\(\\line\|\\par\)/\1/g'
# awk bien sur
Posté par anahop . En réponse au message Bash, sed , awk ?. Évalué à 2.
"","","","",""
"","truc","","",""
"","","","",""
"","","","",""
"","","","",""
"","","","",""
"","","","",""
"","","","",""
"","machin","","",""
"","","","",""
"","","","",""
"","","","",""
"","","","",""
"","","","",""
"","chose","","",""
"","","","",""
"","","","",""
et on veut :
"","","","",""
"","truc","","",""
"","truc","","",""
"","truc","","",""
"","truc","","",""
"","truc","","",""
"","truc","","",""
"","truc","","",""
"","machin","","",""
"","machin","","",""
"","machin","","",""
"","machin","","",""
"","machin","","",""
"","machin","","",""
"","chose","","",""
"","chose","","",""
"","chose","","",""
Si c'est bien ça, alors le programme awk suivant le fait :
BEGIN {rempl = "\"\""; FS = ","; OFS = ",";}
{
if ($2 == "\"\"")
$2 = rempl;
else
rempl = $2;
print;
}
# eval
Posté par anahop . En réponse au message Reference indirecte et tableaux. Évalué à 4.
Par exemple :
ouais ~ $ toto[5]=hop
ouais ~ $ a=toto
ouais ~ $ b=5
ouais ~ $ eval c='${'$a'['$b']}'
ouais ~ $ echo $c
hop
Mais il y a peu etre plus simple.
[^] # Re: uname
Posté par anahop . En réponse au message Recuperer le nom et la version de la distro. Évalué à 5.
# Sarge
Posté par anahop . En réponse au sondage Debian Etch sera prête. Évalué à 3.