Forum Programmation.shell Fonctions et alias de même noms, et surcharge d'alias

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
3
5
août
2013

Bonjour,

J'ai deux questions à propos du shell sous GNU/Linux (bash ou zsh).

==> Si un alias et une fonction de même nom existent, comment savoir laquelle sera appelée ?
Ex :

alias rr='echo Hello'
rr () { command echo Hello "$@"; }

Dans ce cas, c'est ennuyeux avec zsh : à la définition de la fonction rr, le nom est remplacé par l'alias, et c'est echo qui va être remplacé par la fonction définie… (et donc, rr world renvoie (…)

Forum Programmation.shell Remplacer des cellules

Posté par  . Licence CC By‑SA.
Étiquettes :
3
8
mar.
2017

Bonjour,

Ce forum m'a bien aidé jusque là dans ma découverte du shell mais là je bloque.
Je suis nouvellement admin réseau et j'ai 2 fichiers .csv que je veux fusionner.

identifiants2015.csv

$cat identifiants2015.csv
CLASSE,NOM,PRENOM,IDENTIFIANT,M.de P.
c601,A,antoine,antoine.a,4f56yg
c504,B,micheline,micheline.b,654pgh

identifiants2016.csv

$cat identifiants2016.csv
CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
c601,Z,bob,bob.z,t954fd
c502,A,antoine,antoine.a,(déjà attribué)
c404,B,micheline,micheline.b,(déjà attribué)

Et je voudrais obtenir ceci en remplaçant "(déjà attribué)" par le mot de passe 2015.
logins2016_maj2016.csv

$cat logins_maj2016.csv
CLASSE,NOM,PRENOM,LOGIN,MOT DE PASSE
c601,Z,bob,bob.z,t954fd
c502,A,antoine,antoine.a,4f56yg
c404,B,micheline,micheline.b,654pgh

Je me doute qu'il y a quelque (…)

Forum Linux.débutant Utiliser kill pour arreter une boucle shell

Posté par  . Licence CC By‑SA.
Étiquettes :
3
25
juin
2018

Bonjour,
J'ai écrit un script shell qui se présenter sous la forme d'une boucle.
Un programme s’exécute pour chaque fichier à chaque tour de boucle.
Seulement lorsque je fais un top, je vois seulement le processus du programme qui travaille sur les fichiers à chaque tour de boucle.
J'ai beau faire un kill sur ce programme, la boucle shell continue.
Je souhaiterais un moyen de faire un kill directement sur le script shell afin de stopper la boucle.
Je ne (…)

Forum général.cherche-logiciel Outil en ligne de commande pour comparer des versions de logiciels

Posté par  (site web personnel) . Licence CC By‑SA.
3
19
oct.
2019

Bonjour,

je cherche un outil qui aurait un comportement de ce type :

    $ outil 1.1 1.0
    1 # ou '>' ou 'sup', etc.

Mon besoin est de pouvoir faire des comparaisons facilement dans des scripts shell.

J'ai bien trouvé des bibliothèques qui le font. Par exemple :
- en javascript
- l'équivalent en python
- un autre en python

Il existe probablement des bibliothèques équivalentes quelque soit le langage.

Je suis aussi tombé sur les bouts de (…)

Forum Programmation.shell Conseil GUI

Posté par  . Licence CC By‑SA.
3
7
mar.
2017

Bonjour,

J'ai besoin de vos idées, lumières, conseils.

J'aimerais faire une interface pour du code bash afin de piloter des VM tournant sous Virtualbox.
Le code n'est pas très compliqué car il reprend des commandes fournies par Virtualbox et d'autres éléments de l'hôte en lui même.
Donc pour cette partie pas de soucis je gère.

Par contre là où je coince c'est pour la partie interface. Car je voudrais créer une interface afin de rendre la gestion de la chose (…)

Forum Programmation.shell Utilisation de awk pour la jointure de 2 fichiers

Posté par  . Licence CC By‑SA.
2
21
jan.
2013

Je possède deux fichiers de taille différente ayant en commun un champ.
fichier 1:

1 48102
2 48103
3 48152
4 48156
5 48189

fichier 2:

14 jean
503 Benjamin
48102 Georges
48103 Lili
48152 Mélina
48156 Chantal
48189 Daniel
48512 Esthelle

Je souhaite réaliser un fichier final jointant ces 2 fichier le premier par le deuxième champ et le deuxième par son premier champ.

Mais essai avec join n'ont pas était concluant et il me semble que awk peut (…)

Forum Programmation.shell Copier tous les fichiers d'une arborescence dans un même répertoire

Posté par  .
Étiquettes :
2
5
juil.
2012

Salut,

J'ai un tas de fichiers texte dans une arborescence, et je voudrais les copier
tous dans un même répertoire de destination, comme ceci:

content/foo.txt           ->      $DEST/foo.txt
content/bar.md            ->      $DEST/bar.md
content/baz/quux.html     ->      $DEST/quux.html
content/baz/foobar.rst    ->      $DEST/foobar.rst
... etc ...

J'ai essayé de faire comme ceci:

find content/ -exec cp -v {} $DEST/`basename {}` ';'

Mais bien entendu, ça n'a pas marché, puisque c'est le shell qui interprétait la
commande basename et pas find

J'ai aussi regardé dans le man (…)

Sortie de zsh 4.3.5 et 4.2.7

Posté par  (site web personnel) . Modéré par rootix.
Étiquettes :
2
3
fév.
2008
Ligne de commande
Deux nouvelles versions de l'interpréteur de commandes zsh viennent de sortir.
La première (4.2.7) concerne la branche stable et la seconde (4.3.5) concerne la branche de développement.

La nouvelle version stable apporte - par rapport à la vieillissante branche 4.2 - essentiellement des corrections de bugs et la mise à jour des fonctions de complétion.

La version dite instable apporte de nouvelles fonctionnalités et ses habituelles mises à jours des fonctions de complétion. Elle est en réalité d'une grande stabilité et est déjà distribuée dans la plupart des distributions GNU/Linux et Unix libres, comme version zsh par défaut.

Pour rappel zsh est un interpréteur de commandes libre sous licence zsh (comparable à la licence BSD), disposant de fonctionnalités de complétion programmables et avancées, offrant des modules haut niveau pour la programmation : fonctions TCP/IP, support des REGEX, fonctions FTP, fonctions de manipulations de dates et pouvant émuler le comportement d'autres interpréteurs de commande : ksh, bash, ash, csh.

Forum général.général Manipulation des permissions Unix

Posté par  . Licence CC By‑SA.
Étiquettes :
2
30
oct.
2016

Ce post fait suite à ma question sur Git.

En effet, Git n’enregistre pas les permissions Unix des fichiers qu’il suit, excepté le droit d’exécution. Je sais qu’il existe des sur-couches à Git pour répondre à ce genre de problématique (Git possède un mécanisme de hooks) mais je suis arrivé à la conclusion que la sauvegarde des droits Unix était un problème plus général qui ne concerne pas seulement Git.

Il y a plusieurs autres cas de figure (…)

Forum Linux.général Améliorer les performances lors de l'accès au contenu d'un répertoire.

Posté par  .
2
21
déc.
2011

Bonjour,

Je réalise quelques tests sur ma Fedora 16, relatifs au parcours d'une arborescence avec beaucoup de fichiers dedans, pour les besoins de l'exemple, plus de 160.000 fichiers vides dans un repertoire racine, et le meme nombre de fichiers, avec les même noms, dans 5 répertoires enfants (size1..5).

*** avec zsh ***

[1] [bigdir] ls -l . size* | wc -l 
960022

[2] [bigdir] time touch **/1plop.jpg 
touch **/1plop.jpg  0,16s user 1,24s system 99% cpu 1,412 total

[3] [bigdir] time
(…)

Forum Programmation.shell Bot Teamspeak pour Linux: le MCS

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
2
15
août
2015

Bonjour,
je ne sais pas si je poste au bon endroit (je m'excuse si ce n'est pas le cas), c'est mon premier post sur ce forum.

Simplement pour présenter un ensemble de scripts de ma création au cas où ils pourraient servir à quelqu'un.
Un ami m'ayant montré quelques bots très développés sous Windows pour administrer un Teamspeak du côté client et utilisant souvent ce logiciel je me suis dit que j'allais développé un équivalent pour GNU/Linux. Ce bot peut (…)

Forum Programmation.shell automatisation pour soumission de job sur slurm

Posté par  . Licence CC By‑SA.
Étiquettes :
2
3
juil.
2023

bonjour,

j'effectue en ce moment (stage) des calculs sur un cluster, et je souhaite automatiser ma soumissions de job:

Pour ce faire, je dispose d'une base de donnée de la forme :

delta Re ub F maxUs xUs yUs maxUip maxPsi xPsi yPsi circulation
1.000000000000000056e-01 1.000000000000000000e+02 9.999999880255133755e-01 1.847046745021032388e+00 1.875822000151966096e+00 1.451459197325943992e-03 5.195067241032987226e+00 1.800956170626870634e-01 1.358132924334415625e-01 2.283607643238189100e-01 5.053583403732131885e+00 3.356563318232111959e-01
...

j'aimerai faire un test if sur les deux premières colonnes de chaque ligne et assigner la valeur de F lorsque le test est (…)