Script shell de suppression d'image la plus ancienne
4 réponses
kenza18
Bonjour,
Je suis confrontée à un problème au niveau de la programmation en Shell.
Etant donné que je suis novice dans le domaine, je pose la question à des experts afin de savoir comment je peux résoudre le problème.
En effet, voici ma question ou plutot mon problème:
1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
JE vous remercie d'avance et reste à votre disposition.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Benoit Izac
Bonjour,
le 05/08/2010 à 10:51, kenza a écrit dans le message :
Je suis confrontée à un problème au niveau de la programmation en Shell. Etant donné que je suis novice dans le domaine, je pose la question à des experts afin de savoir comment je peux résoudre le problème. En effet, voici ma question ou plutot mon problème: 1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
-- Benoit Izac
Bonjour,
le 05/08/2010 à 10:51, kenza a écrit dans le message
<tKadnXpg7ufk5sfR4p2dnAA@giganews.com> :
Je suis confrontée à un problème au niveau de la programmation en Shell.
Etant donné que je suis novice dans le domaine, je pose la question à des
experts afin de savoir comment je peux résoudre le problème.
En effet, voici ma question ou plutot mon problème:
1- Developper un script en shell qui me permettra de supprimer la plus
ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images :
rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg :
rm -- $(ls -rt *.jpg | head -n1)
le 05/08/2010 à 10:51, kenza a écrit dans le message :
Je suis confrontée à un problème au niveau de la programmation en Shell. Etant donné que je suis novice dans le domaine, je pose la question à des experts afin de savoir comment je peux résoudre le problème. En effet, voici ma question ou plutot mon problème: 1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
-- Benoit Izac
Cyrille Lefevre
Le 05/08/2010 23:22, Benoit Izac a écrit :
Bonjour,
le 05/08/2010 à 10:51, kenza a écrit dans le message :
Je suis confrontée à un problème au niveau de la programmation e n Shell. Etant donné que je suis novice dans le domaine, je pose la question à des experts afin de savoir comment je peux résoudre le problème. En effet, voici ma question ou plutot mon problème: 1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
Bonjour,
je dirais plutôt :
[[ -f top ]] || touch top touch top2 find . ! -newer top | xargs rm mv top2 top
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.
Le 05/08/2010 23:22, Benoit Izac a écrit :
Bonjour,
le 05/08/2010 à 10:51, kenza a écrit dans le message
<tKadnXpg7ufk5sfR4p2dnAA@giganews.com> :
Je suis confrontée à un problème au niveau de la programmation e n Shell.
Etant donné que je suis novice dans le domaine, je pose la question à des
experts afin de savoir comment je peux résoudre le problème.
En effet, voici ma question ou plutot mon problème:
1- Developper un script en shell qui me permettra de supprimer la plus
ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images :
rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg :
rm -- $(ls -rt *.jpg | head -n1)
Bonjour,
je dirais plutôt :
[[ -f top ]] || touch top
touch top2
find . ! -newer top | xargs rm
mv top2 top
Cordialement,
Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%nospam@laposte.net.invalid
supprimer "%nospam% et ".invalid" pour me repondre.
le 05/08/2010 à 10:51, kenza a écrit dans le message :
Je suis confrontée à un problème au niveau de la programmation e n Shell. Etant donné que je suis novice dans le domaine, je pose la question à des experts afin de savoir comment je peux résoudre le problème. En effet, voici ma question ou plutot mon problème: 1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
[ Tu es au mauvais endroit, je redirige sur <news:fr.comp.os.unix>. ]
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
Bonjour,
je dirais plutôt :
[[ -f top ]] || touch top touch top2 find . ! -newer top | xargs rm mv top2 top
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.
Benoit Izac
Bonjour,
le 06/08/2010 à 12:54, Cyrille Lefevre a écrit dans le message <i3gplc$hth$ :
1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
je dirais plutôt :
[[ -f top ]] || touch top touch top2 find . ! -newer top | xargs rm mv top2 top
Heu... Là tu va supprimer tout ce qui est plus ancien que top, soit rien la première fois (sauf si il y a déjà un fichier qui se nomme « top ») puis tout ce qui n'avait pas été supprimé lors de la précédente exécution du script (sauf si entre-temps quelqu'un à eu la bonne idée de toucher à « top »). C'est l'effet voulu (car ce n'est pas comme ça que j'ai compris la question) ?
le 06/08/2010 à 12:54, Cyrille Lefevre a écrit dans le message
<i3gplc$hth$1@talisker.lacave.net> :
1- Developper un script en shell qui me permettra de supprimer
la plus ancienne image présente (genre un buffer circulaire)
Si tu es dans un répertoire où il n'y a que les images :
rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg :
rm -- $(ls -rt *.jpg | head -n1)
je dirais plutôt :
[[ -f top ]] || touch top
touch top2
find . ! -newer top | xargs rm
mv top2 top
Heu... Là tu va supprimer tout ce qui est plus ancien que top, soit rien
la première fois (sauf si il y a déjà un fichier qui se nomme « top »)
puis tout ce qui n'avait pas été supprimé lors de la précédente
exécution du script (sauf si entre-temps quelqu'un à eu la bonne idée de
toucher à « top »). C'est l'effet voulu (car ce n'est pas comme ça que
j'ai compris la question) ?
le 06/08/2010 à 12:54, Cyrille Lefevre a écrit dans le message <i3gplc$hth$ :
1- Developper un script en shell qui me permettra de supprimer la plus ancienne image présente (genre un buffer circulaire)
Si tu es dans un répertoire où il n'y a que les images : rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg : rm -- $(ls -rt *.jpg | head -n1)
je dirais plutôt :
[[ -f top ]] || touch top touch top2 find . ! -newer top | xargs rm mv top2 top
Heu... Là tu va supprimer tout ce qui est plus ancien que top, soit rien la première fois (sauf si il y a déjà un fichier qui se nomme « top ») puis tout ce qui n'avait pas été supprimé lors de la précédente exécution du script (sauf si entre-temps quelqu'un à eu la bonne idée de toucher à « top »). C'est l'effet voulu (car ce n'est pas comme ça que j'ai compris la question) ?
la force de l'habitude surement, toutefois, xargs est plus portable que -exec ... + (pas besoin d' le +, soit dit en passant).
essaye en RHEL 3 par ex. :-)
encore que pour bien faire, il faut ajouter -r à la version gnu d'xargs , quelle daube !
c'est comme le tail +1 qu'ils ont cassé récemment, alors que rien n'empêche des rester compatible avec l'ancienne norme sans voir à spécifier _POSIX2_VERSION 0112, etc. en clair, POLA ou BLODA, au ch oix...
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.
Le 06/08/2010 14:57, Benoit Izac a écrit :
Bonjour,
le 06/08/2010 à 12:54, Cyrille Lefevre a écrit dans le message
<i3gplc$hth$1@talisker.lacave.net> :
1- Developper un script en shell qui me permettra de supprimer
la plus ancienne image présente (genre un buffer circulaire)
Si tu es dans un répertoire où il n'y a que les images :
rm -- $(ls -rt | head -n1)
Sinon si ton image a l'extension .jpg :
rm -- $(ls -rt *.jpg | head -n1)
je dirais plutôt :
[[ -f top ]] || touch top
touch top2
find . ! -newer top | xargs rm
mv top2 top
Heu... Là tu va supprimer tout ce qui est plus ancien que top, soit r ien
la première fois (sauf si il y a déjà un fichier qui se nomme « top »)
c'est voulu
puis tout ce qui n'avait pas été supprimé lors de la précéden te
exécution du script (sauf si entre-temps quelqu'un à eu la bonne id ée de
c'est voulu aussi
toucher à « top »). C'est l'effet voulu (car ce n'est pas comme ç a que
j'ai compris la question) ?
effectivement, j'ai lu "les" plutôt que "la" plus ancienne ...
la force de l'habitude surement, toutefois, xargs est plus portable que
-exec ... + (pas besoin d' le +, soit dit en passant).
essaye en RHEL 3 par ex. :-)
encore que pour bien faire, il faut ajouter -r à la version gnu d'xargs ,
quelle daube !
c'est comme le tail +1 qu'ils ont cassé récemment, alors que rien
n'empêche des rester compatible avec l'ancienne norme sans voir à
spécifier _POSIX2_VERSION=200112, etc. en clair, POLA ou BLODA, au ch oix...
Cordialement,
Cyrille Lefevre.
--
mailto:Cyrille.Lefevre-news%nospam@laposte.net.invalid
supprimer "%nospam% et ".invalid" pour me repondre.
la force de l'habitude surement, toutefois, xargs est plus portable que -exec ... + (pas besoin d' le +, soit dit en passant).
essaye en RHEL 3 par ex. :-)
encore que pour bien faire, il faut ajouter -r à la version gnu d'xargs , quelle daube !
c'est comme le tail +1 qu'ils ont cassé récemment, alors que rien n'empêche des rester compatible avec l'ancienne norme sans voir à spécifier _POSIX2_VERSION 0112, etc. en clair, POLA ou BLODA, au ch oix...
Cordialement,
Cyrille Lefevre. -- mailto:Cyrille.Lefevre-news% supprimer "%nospam% et ".invalid" pour me repondre.