Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 17/02/2022, à 08:11

Akatu

[RÉSOLU] Bloquer l'exécution d'une commande spécifique

Bonjour,

Dans mon .bashrc, j'utilise un alias "mvubuntu" qui déplace des fichiers d'un dossier à un autre.
Est-il possible d'empêcher l'exécution de la commande "mvubuntu *" ? Ce qui arrive quand je tape sur le clavier avec des moufles.

Merci & bonne journée.

Dernière modification par Akatu (Le 17/02/2022, à 10:40)


KDE neon User Edition
LENOVO Ideapad L340-15IRH
Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz (8 coeurs)
512 Go SSD - (M.2 2280) PCIe 3.0 x4 - NVM Express (NVMe)

Hors ligne

#2 Le 17/02/2022, à 08:37

FrancisFDZ

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Bonjour,
Il faudrait d'abord connaitre la teneur de la commande ! wink


-- On peut avoir des raisons de se plaindre et n'avoir pas raison de se plaindre --
[Victor Hugo]

Hors ligne

#3 Le 17/02/2022, à 08:51

Akatu

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Voila smile

alias mvubuntu='mkdir -p /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates ; mv -iv /home/arnaud/Thèmes/Output/release/* /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates/'

KDE neon User Edition
LENOVO Ideapad L340-15IRH
Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz (8 coeurs)
512 Go SSD - (M.2 2280) PCIe 3.0 x4 - NVM Express (NVMe)

Hors ligne

#4 Le 17/02/2022, à 10:16

Tawal

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Hello,

Je passerais par une fonction qui teste la présence d'arguments.
Un truc du genre :

_mvubuntu()
{
    if (($#))
    then
          echo "Arguments présents !" 2>&1
    else
         echo "Pas d'arguments"
         mkdir -p /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates
         mv -iv /home/arnaud/Thèmes/Output/release/* /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates/
    fi
}
alias mvubuntu='_mvubuntu'

ou ignorer les paramètres donnés :

_mvubuntu()
{
    mkdir -p /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates
    mv -iv /home/arnaud/Thèmes/Output/release/* /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates/
}
alias mvubuntu='_mvubuntu'

Bon les alias ne sont pas forcément nécessaires vu qu'on peut appeler directement la fonction.

Dernière modification par Tawal (Le 17/02/2022, à 10:17)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#5 Le 17/02/2022, à 10:29

pingouinux

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Bonjour,
Voici une autre solution, pour simplement lister les arguments supplémentaires :

$ alias alia='echo coucou; echo'
$ alia
coucou
$ ls
mon_fichier1  mon_fichier2
$ alia *
coucou
mon_fichier1 mon_fichier2

Hors ligne

#6 Le 17/02/2022, à 10:40

Akatu

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Merci pour vos suggestion.
@pingouinux, je ne vois pas comment appliquer ça dans mon cas en fait.

@Tawal Ta première idée était la bonne, merci. La deuxième ne fonctionne pas.


KDE neon User Edition
LENOVO Ideapad L340-15IRH
Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz (8 coeurs)
512 Go SSD - (M.2 2280) PCIe 3.0 x4 - NVM Express (NVMe)

Hors ligne

#7 Le 17/02/2022, à 10:41

Tawal

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

@pingouinux:
Ou ne pas les voir :

$ alias alia='echo ma commande ici; :'
$ ls
fichier1  fichier2  fichier3
$ alia
ma commande ici
$ alia *
ma commande ici
$

Bien vu wink

@Akatu:
"La deuxième ne fonctionne pas."
J'ai corrigé une faute de frappe dans le nom de la fonction, peut-être l'as tu prise avant ?
Sinon, cela devrait fonctionner aussi.

Dernière modification par Tawal (Le 17/02/2022, à 11:00)


Le savoir n'a d’intérêt que si on le transmet.
Useless Use of Cat Award
Filenames and Pathnames in Shell: How to do it Correctly
À chaque problème sa solution, à chaque solution son moyen, si pas de moyen, toujours le problème !

Hors ligne

#8 Le 17/02/2022, à 10:57

pingouinux

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

Akatu #6 a écrit :

@pingouinux, je ne vois pas comment appliquer ça dans mon cas en fait.

En appliquant en plus l'idée de Tawal #7

alias mvubuntu='mkdir -p /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates ; mv -iv /home/arnaud/Thèmes/Output/release/* /home/arnaud/PartageVM/TEMP/Partageons/IP_Updates/; :'

Hors ligne

#9 Le 17/02/2022, à 13:35

Watael

Re : [RÉSOLU] Bloquer l'exécution d'une commande spécifique

tout simplement, je changerais le nom de cet alias par _mvUbuntu !*
un complètement sur mv ne risquerait plus de l'appeler.

--
* ou MVubuntu pour ne pas le confondre avec une fonction.

Dernière modification par Watael (Le 17/02/2022, à 13:36)


Connected \o/
Welcome to sHell. · eval is evil.

Hors ligne