Ajouter un avertissement aux appels `date -s`

0

Je suis enclin à appeler date -sau lieu de date -d, et cela peut mal tourner si je l’appelle sur le mauvais serveur. Existe-t-il un moyen d’ajouter une invite de confirmation afin date -sque je réalise ce que j’ai fait?

ub3rman123
la source

Réponses:

0

Je ne peux pas m'empêcher de dire l'évidence, à savoir que vous devriez être plus prudent lorsque vous tapez des commandes ... Néanmoins, je suggérerais ce qui suit comme solution de contournement.

Ecrivez un script qui vérifie les arguments CLI transmis à la datecommande, appelons-le /bin/date.sh(exemple ci-dessous) et changez son autorisation en 755:

chmod 755 /bin/date.sh
cat /bin/date.sh

#!/bin/bash

### script to prompt at 'date -s'

if [[ $1 == -s* ]]; then
    read -p "*** Are you sure you want to set the date ? [y/n]" ANS
    if [[ $ANS = [Yy] ]]; then
        /bin/date $1
    fi
else
    /bin/date $1
fi

Créez un alias dans le .bashrcfichier de votre utilisateur avec ce script à la place alias date=/bin/date.sh. De cette façon, chaque fois que vous appelez, datece script est exécuté et vous permet de savoir que vous avez émis le drapeau de commande set date et vous demande une confirmation.

Vous pouvez également éviter d' utiliser un alias, en remplaçant simplement la datecommande, comme ci - dessous, mais s'il vous plaît aussi changer le nom du binaire date dans le script à partir /bin/datede/bin/date_cmd

mv / bin / date / bin / date_cmd mv /bin/date.sh / bin / date

J'espère que cela t'aides!

N'importe quoi
la source
Je vous remercie! Je verrai à propos de la mise en œuvre. Je préférerais définitivement vérifier mes commandes avant de les passer, mais il y a parfois une intersection de 3 heures du matin et de Linux.
ub3rman123