Aide avec sed

Résolu
romulus -  
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai besoin de modifier en lot des fichiers cron :

# cat crontab
*/10 * * * * /bin/commande
*/1   * * * * /bin/commande2


Je voudrais changer la deuxième ligne pour avoir

*/10 * * * * /bin/commande
*/5  * * * * /bin/commande2


Le problème que j'obitens ceci car */1 est également présent dans la ligne 1.

# cat crontab | sed 's/*\/1/*\/5/g'
*/50 * * * * /bin/commande
*/5  * * * * /bin/commande2


Quelqu'un aurait une idée ?

Merci d'avance

1 réponse

zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

$ cat plop 
*/10 * * * * /bin/commande
*/1   * * * * /bin/commande2

$ sed 's#1\b#5#' plop 
*/10 * * * * /bin/commande
*/5   * * * * /bin/commande2

$ sed '2 s#1#5#' plop 
*/10 * * * * /bin/commande
*/5   * * * * /bin/commande2

$
1
romulus
 
Merci !
Quelle différence entre les deux ?
0
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Une cible directement la ligne (sed '2 s#1#5#')

L'autre tient compte juste du fait que le chiffre 1 est bien seul et non pas suivi d'un autre chiffre ou caractère (\b)
Attention cette solution ne convient que pour ton exemple.
0