cp
n'est pas une commande bash - c'est un programme externe. C'est pourquoi cela échoue; les commandes bash réelles ne seraient pas affectées par les changements de bibliothèque ou de chemin. Donc, vous voulez le contraire, c'est-à-dire utiliser uniquement commandes bash.
Vous pouvez supprimer complètement le contenu du fichier en utilisant :
true > ~/.bashrc
Ou écrasez avec d'autres contenus :
echo "" > ~/.bashrc
Ou vous pouvez essayer d'annuler temporairement les mauvaises modifications dans le live shell :
unset LD_LIBRARY_PATH LD_PRELOAD LD_AUDIT
export PATH=/bin:/usr/bin
cp /etc/skel/.bashrc ~
Ou vous pouvez copier le contenu du fichier, ligne par ligne, en utilisant uniquement les éléments intégrés du shell :
while IFS="" read -r line; do
echo "$line";
done < /etc/skel/.bashrc > ~/.bashrc