je voudrais pouvoir récupérer dans "mon_script" la commande précédente,
càd ce qu'il y a avant le pipe "|", ici "mon_bin mon_fichier".
Avec tous les arguments.
je voudrais pouvoir récupérer dans "mon_script" la commande précédente, càd ce qu'il y a avant le pipe "|", ici "mon_bin mon_fichier". Avec tous les arguments.
est-ce possible ?
si oui, comment ?
Dans l'absolu je dirais non : si tu fais un ls | more et que tu regardes les processus, le ls est fini quand le more tourne encore (ben le ls a remplit le buffer du pipe et donc quitte).
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb :)
FiLH
-- Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle. Roland Barthes. http://www.filh.org
Une Bévue <unbewusstsein@fai.invalid> wrote:
soit la commande :
$ mon_bin mon_fichier | /path/to/mon_script
je voudrais pouvoir récupérer dans "mon_script" la commande précédente,
càd ce qu'il y a avant le pipe "|", ici "mon_bin mon_fichier".
Avec tous les arguments.
est-ce possible ?
si oui, comment ?
Dans l'absolu je dirais non : si tu fais un ls | more et que tu regardes
les processus, le ls est fini quand le more tourne encore (ben le ls a
remplit le buffer du pipe et donc quitte).
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle
est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es
utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb :)
FiLH
--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org
je voudrais pouvoir récupérer dans "mon_script" la commande précédente, càd ce qu'il y a avant le pipe "|", ici "mon_bin mon_fichier". Avec tous les arguments.
est-ce possible ?
si oui, comment ?
Dans l'absolu je dirais non : si tu fais un ls | more et que tu regardes les processus, le ls est fini quand le more tourne encore (ben le ls a remplit le buffer du pipe et donc quitte).
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb :)
FiLH
-- Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle. Roland Barthes. http://www.filh.org
Une Bévue
Le 08/07/12 21:40, FiLH a écrit :
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb:)
Remarques très justes, il semblerait que script remplisse la fonction que je recherche :
copier les résultats d'une commande dans un fichier dont le nom sera la string de la commande, modulo les caratères inderdits pour un nom de fichier, en y ajoutant comme préfix la date et l'heure.
tout ça pour m'éviter un copier / coller.
Le 08/07/12 21:40, FiLH a écrit :
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle
est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es
utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb:)
Remarques très justes, il semblerait que script remplisse la fonction
que je recherche :
copier les résultats d'une commande dans un fichier dont le nom sera la
string de la commande, modulo les caratères inderdits pour un nom de
fichier, en y ajoutant comme préfix la date et l'heure.
La vraie question est : qu'est-ce que tu veux vraiment faire ? Quelle est la fonction que tu veux remplir ? Dans quel cas ce machin là t'es utilie...
Parce que peut-être que tu cherches la mauvaise solution à ton pb:)
Remarques très justes, il semblerait que script remplisse la fonction que je recherche :
copier les résultats d'une commande dans un fichier dont le nom sera la string de la commande, modulo les caratères inderdits pour un nom de fichier, en y ajoutant comme préfix la date et l'heure.
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
-- JiPaul. / /--/--// Jean-Paul Blanc |/| L | quelquepart en (somewhere in) /|| = ||| FRANCE
Ensuite !! rappelle simplement la commande précédente (cela fait partie
du mécanisme d'historique de csh, lequel a été repris par (entre autres)
zsh.
Pour savoir ce que fait
fdate "!!"
sans l'exécuter, tu peux simplement au lieu de valider faire une
tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh :
man zshexpn
et chercher le mot HISTORY en majuscule
(en fait il suffit de faire /HIS pour cette recherche)
--
JiPaul.
/ /--/--//\ Jean-Paul Blanc
|/| L |\ quelquepart en (somewhere in)
/|| = |||\ FRANCE
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
-- JiPaul. / /--/--// Jean-Paul Blanc |/| L | quelquepart en (somewhere in) /|| = ||| FRANCE
blanc
Une Bévue wrote:
Hier j'ai eu un problème avec Zsh : je me suis rendu compte qu'on ne peut pas faire un dirname d'un fichier qui n'existe pas, alors j'ai
??? Avec Zsh je ne sais pas, mais avec zsh ça marche sans probleme : Je viens d'essayer la commande dirname /var/pol/machin/truc et ça m'a bien donné /var/pol/machin
alors que ni pol, ni machin ni truc n'existent chez moi dans le dossier /var
-- JiPaul. / /--/--// Jean-Paul Blanc |/| L | quelquepart en (somewhere in) /|| = ||| FRANCE
Une Bévue <unbewusstsein@fai.invalid> wrote:
Hier j'ai eu un problème avec Zsh : je me suis rendu compte qu'on ne
peut pas faire un dirname d'un fichier qui n'existe pas, alors j'ai
???
Avec Zsh je ne sais pas, mais avec zsh ça marche sans probleme :
Je viens d'essayer la commande
dirname /var/pol/machin/truc
et ça m'a bien donné
/var/pol/machin
alors que ni pol, ni machin ni truc n'existent chez moi dans le dossier
/var
--
JiPaul.
/ /--/--//\ Jean-Paul Blanc
|/| L |\ quelquepart en (somewhere in)
/|| = |||\ FRANCE
Hier j'ai eu un problème avec Zsh : je me suis rendu compte qu'on ne peut pas faire un dirname d'un fichier qui n'existe pas, alors j'ai
??? Avec Zsh je ne sais pas, mais avec zsh ça marche sans probleme : Je viens d'essayer la commande dirname /var/pol/machin/truc et ça m'a bien donné /var/pol/machin
alors que ni pol, ni machin ni truc n'existent chez moi dans le dossier /var
-- JiPaul. / /--/--// Jean-Paul Blanc |/| L | quelquepart en (somewhere in) /|| = ||| FRANCE
unbewusst.sein
JiPaul wrote:
Une Bévue wrote:
> > $ fdate"!!" >> fichier_ou_tu_veux_copier_le_résultat > > euh, là, je ne pige pas, c'est quoi "!!" un truc spécial à zsh ?
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
OK, merci bien, je rentre de vacances...
-- « Les femmes font les meilleurs psychanalystes jusqu'à ce qu'elles tombent amoureuses. Elles font alors les meilleurs patients. » (Alfred Hitchcock)
JiPaul <blanc@empty.org> wrote:
Une Bévue <unbewusstsein@fai.invalid> wrote:
> > $ fdate"!!" >> fichier_ou_tu_veux_copier_le_résultat
>
> euh, là, je ne pige pas, c'est quoi "!!" un truc spécial à zsh ?
Ensuite !! rappelle simplement la commande précédente (cela fait partie
du mécanisme d'historique de csh, lequel a été repris par (entre autres)
zsh.
Pour savoir ce que fait
fdate "!!"
sans l'exécuter, tu peux simplement au lieu de valider faire une
tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh :
man zshexpn
et chercher le mot HISTORY en majuscule
(en fait il suffit de faire /HIS pour cette recherche)
OK, merci bien, je rentre de vacances...
--
« Les femmes font les meilleurs psychanalystes jusqu'à ce qu'elles
tombent amoureuses. Elles font alors les meilleurs patients. »
(Alfred Hitchcock)
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
OK, merci bien, je rentre de vacances...
-- « Les femmes font les meilleurs psychanalystes jusqu'à ce qu'elles tombent amoureuses. Elles font alors les meilleurs patients. » (Alfred Hitchcock)
bon, j'ai enfin eu le temps d'essayer, comme mon script "fdate" construit le nom du fichier à partir ${1} : DATEDFILE="${HOME}/Installations/${DATE}${1}.txt" avec : DATE=`date '+%y-%m-%d--%H-%M--'`
il suffit que je fasse :
$ fdate !!
et ça roule super, merci beaucoup.
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
Extrait : For example, `!' is the event designator for the previous command, so `!!:1' always refers to the first word of the previous command, and `!!$' always refers to the last word of the previous command. With CSH_JUNKIE_HISTORY set, then `!:1' and `!$' function in the same manner as `!!:1' and `!!$', respectively. Conversely, if CSH_JUNKIE_HISTORY is unset, then `!:1' and `!$' refer to the first and last words, respectively, of the same event referenced by the nearest other history reference preceding them on the current command line, or to the previ- ous command if there is no preceding reference.
bon, j'ai enfin eu le temps d'essayer, comme mon script "fdate"
construit le nom du fichier à partir ${1} :
DATEDFILE="${HOME}/Installations/${DATE}${1}.txt"
avec :
DATE=`date '+%y-%m-%d--%H-%M--'`
il suffit que je fasse :
$ fdate !!
et ça roule super, merci beaucoup.
Ensuite !! rappelle simplement la commande précédente (cela fait partie
du mécanisme d'historique de csh, lequel a été repris par (entre autres)
zsh.
Pour savoir ce que fait
fdate "!!"
sans l'exécuter, tu peux simplement au lieu de valider faire une
tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh :
man zshexpn
et chercher le mot HISTORY en majuscule
(en fait il suffit de faire /HIS pour cette recherche)
Extrait :
For example, `!' is the event designator for the previous command, so
`!!:1' always refers to the first word of the previous
command, and
`!!$' always refers to the last word of the previous command.
With
CSH_JUNKIE_HISTORY set, then `!:1' and `!$' function in the same
manner
as `!!:1' and `!!$', respectively. Conversely, if
CSH_JUNKIE_HISTORY
is unset, then `!:1' and `!$' refer to the first and last
words,
respectively, of the same event referenced by the nearest other
history
reference preceding them on the current command line, or to the
previ-
ous command if there is no preceding reference.
bon, j'ai enfin eu le temps d'essayer, comme mon script "fdate" construit le nom du fichier à partir ${1} : DATEDFILE="${HOME}/Installations/${DATE}${1}.txt" avec : DATE=`date '+%y-%m-%d--%H-%M--'`
il suffit que je fasse :
$ fdate !!
et ça roule super, merci beaucoup.
Ensuite !! rappelle simplement la commande précédente (cela fait partie du mécanisme d'historique de csh, lequel a été repris par (entre autres) zsh.
Pour savoir ce que fait fdate "!!" sans l'exécuter, tu peux simplement au lieu de valider faire une tabulation après avoir tapé la commande.
Pour avoir plus de détails sur le mécanisme d'historique dans zsh : man zshexpn et chercher le mot HISTORY en majuscule (en fait il suffit de faire /HIS pour cette recherche)
Extrait : For example, `!' is the event designator for the previous command, so `!!:1' always refers to the first word of the previous command, and `!!$' always refers to the last word of the previous command. With CSH_JUNKIE_HISTORY set, then `!:1' and `!$' function in the same manner as `!!:1' and `!!$', respectively. Conversely, if CSH_JUNKIE_HISTORY is unset, then `!:1' and `!$' refer to the first and last words, respectively, of the same event referenced by the nearest other history reference preceding them on the current command line, or to the previ- ous command if there is no preceding reference.