GNU/Linux >> Tutoriels Linux >  >> Linux

Pourquoi `echo Abc^h` n'affiche-t-il pas simplement `ab` ?

Si je me souviens bien, ^H signifie Retour arrière . Je l'ai généré en appuyant sur CTRL+V , CTRL+H .

Donc le ^H doit supprimer le dernier caractère, car il est identique à Retour arrière et il devrait agir comme si j'appuyais sur Retour arrière à ce poste.

Pourquoi la sortie de echo abc^H reste abc et non ab ?

Réponse acceptée :

retour arrière ne fait que déplacer le curseur vers l'arrière.

retour arrière (ou supprimer ou n'importe quel caractère selon la configuration) supprime le dernier caractère imprimé uniquement lorsque ces conditions sont remplies :

  • il est tapé sur le clavier, pas une sortie de commande comme echo dans votre exemple
  • le terminal est en mode cuit (le cas habituel)

Si vous voulez effacer le c dans votre exemple, vous devez le remplacer par un autre caractère, par exemple :

echo "abc^H "

Linux
  1. Pourquoi le tilde (~) ne se développe-t-il pas à l'intérieur des guillemets doubles ?

  2. Pourquoi ne "trouve"-t-il pas ce fichier ? ?

  3. Pourquoi le script Bash ne reconnaît-il pas les alias ?

  4. Pourquoi le ~/.bash_profile ne fonctionne-t-il pas ?

  5. Pam_unix2 / Pourquoi n'existe-t-il pas sur certaines distributions ?

Pourquoi "moins" n'affiche-t-il pas la sortie en gras ? ?

Linux - Pourquoi le répertoire racine est-il désigné par un signe / ?

Programme Shell pour ouvrir simplement un pilote de personnage et attendre ?

Pourquoi Cryptkeeper ne fonctionne-t-il pas dans la version 12.04 ?

6 raisons pour lesquelles Linux n'a pas plus d'applications

Pourquoi ne pouvez-vous pas ajouter un CD audio comme un CD de données ordinaire ?