Comment exécuter une commande Linux sans l'enregistrer dans l'histoire

Comment exécuter une commande Linux sans l'enregistrer dans l'histoire

Par défaut, chaque commande que vous exécutez sur votre terminal est stockée par le shell (Commande interprète) dans un certain fichier appelé un histoire Historique des commandes de fichiers ou de shell. Dans Frapper (le shell le plus populaire sur les systèmes Linux), par défaut, le nombre de commandes persistant dans l'histoire est 1000, Et certaines distributions Linux ont 500.

Pour vérifier votre histoire Taille en bash, exécutez cette commande:

$ echo $ histsize 
Vérifiez la taille de l'historique Linux

Pour voir les commandes plus anciennes que vous avez exécutées, vous pouvez utiliser la commande History pour afficher l'historique des commandes shell:

$ HISTORY 
Vérifiez l'historique des commandes Linux

Parfois, vous voudrez peut-être désactiver le shell des commandes de journalisation à son historique de commandement. Vous pouvez le faire comme suit.

Supprimer une commande Linux de l'histoire après l'exécution

Vous pouvez supprimer immédiatement une commande de l'historique du shell après l'avoir exécuté sur la ligne de commande en ajoutant le History -d $ (History 1) commander.

Le $ (History 1) Sous-Command récupère la dernière entrée de l'histoire de la session du terminal actuel, où 1 est le décalage et le -d L'option aide à le supprimer.

Toute commande de commande est normalement enregistrée dans l'histoire du shell.

$ echo "Cette commande est économisée dans l'histoire" $ HISTORY | queue 
Afficher l'histoire des commandes Linux

Cependant, lorsque vous ajoutez le History -d $ (History 1) Commande à une ligne de commande, il est immédiatement supprimé de l'historique du shell comme indiqué dans la capture d'écran suivante:

$ echo "Cette commande n'est pas économisée dans l'histoire"; History -d $ (History 1) $ History | queue 
Supprimer l'historique des commandes Linux après l'exécution

Une autre façon d'empêcher le shell de sauver une commande dans l'histoire est de préfixe La commande avec un espace. Mais cela dépend entièrement de la valeur du $ HistControl variable de coquille définie dans le ~ /.bashrc Fichier de démarrage. Il devrait être défini pour avoir une de ces valeurs: espace d'ignorance ou ignorer, Pour que cette méthode fonctionne.

Vous pouvez vérifier la valeur du $ HistControl variable comme indiqué.

$ echo $ HistControl ou $ cat ~ /.Bashrc | grep $ histontrol 
Vérifier la variable HistControl

Si la variable de coquille susmentionnée est définie, toute commande préfixée avec un espace n'est pas enregistrée dans l'histoire:

$ echo "Cette commande n'est pas préfixée avec l'espace, elle sera enregistrée dans l'histoire!"$ echo" Cette commande est préfixée avec l'espace, elle ne sera pas enregistrée dans l'histoire!" 
Ne sauve pas la commande Linux dans l'histoire

Voici quelques autres articles intéressants sur le bash histoire et histoire Commandes:

  • 2 façons de réécrire les dernières commandes exécutées dans Linux
  • Comment effacer l'historique de la ligne de commande bash dans Linux
  • Définir la date et l'heure pour chaque commande que vous exécutez en historique bash

C'est tout pour le moment! Utilisez le formulaire de commentaire ci-dessous pour partager vos réflexions avec nous concernant ce sujet. Jusqu'à la prochaine fois, restez avec nous.