Comment puis-je effacer l'écran dans un terminal à l'aide de Perl?
Je voudrais effacer l'écran dans un terminal/console à l'aide de Perl. Comment puis-je le faire?
C'est une question de la officiel perlfaq. Nous sommes l'importation de la perlfaq à Débordement de Pile.
OriginalL'auteur perlfaq | 2011-01-05
Vous devez vous connecter pour publier un commentaire.
C'est le officiel FAQ répondre moins toutes les modifications ultérieures apportées.
Pour effacer l'écran, il vous suffit d'imprimer la séquence particulière qui indique au terminal pour effacer l'écran. Une fois que vous avez la séquence de sortie lorsque vous souhaitez effacer l'écran.
Vous pouvez utiliser le Durée::ANSIScreen module pour obtenir la séquence particulière. Importer le
cls
de la fonction (ou le:screen
tag):La Durée::Cap module peut également obtenir la séquence particulière si vous voulez traiter avec les détails de bas niveau de contrôle terminal. Le Tputs méthode renvoie la chaîne de caractères pour la capacité donnée:
Sur Windows, vous pouvez utiliser le Win32::Console module. Après la création d'un objet pour le descripteur de fichier de sortie que vous souhaitez affecter, appelez le
Cls
méthode:Si vous avez un programme de ligne de commande qui fait le travail, vous pouvez l'appeler dans backticks pour capturer quoi qu'il en sorties de sorte que vous pouvez l'utiliser plus tard:
Il y a un petit bug dans la réponse. Variable
$clear_string
obtient la valeur, mais lors de l'impression de la variable avec un nom légèrement différent est utilisé$clear_screen
.OriginalL'auteur
Les plus brefs OS indépendant (et n'ayant pas besoin de modules supplémentaires des installations) méthode qui a fonctionné pour moi a été trouvé dans les Perl Moines fil (cette page contient aussi des autres variations de l'effacement de l'écran):
OriginalL'auteur evgeny9
Les Utilisateurs de Linux, utilisez la commande suivante:
OriginalL'auteur Amit