Bir Alias'ı Shell'imden kalıcı olarak nasıl kaldırırım


28

Bilgisayarımın yanında olmadığımda, bir adam onu ​​yakaladı ve lskök klasörüme bir Takma Ad koydu . Ayarladı 'yes NeverGonnaGiveYouUp'. Bu yüzden şimdi benim kök klasörümde im ve lsNeverGonnaGiveYouUp sonsuz bir döngü olsun. Beni deli ediyor ve ondan nasıl kurtulacağımı bilmiyorum.

Ben zaten denedim unaliasve unalias -abunlar sadece geçici olarak kaldırmak. Bir kez kabuğu kapatıp tekrar açtığımda geri geliyor. Bu saçmalıktan nasıl kurtulurum?


2
Çıktı grep -n 'NeverGonnaGiveYouUp' ~/.profile ~/.bashrc /etc/bash.bashrc /etc/profilenedir? Kabuğunuza ve dikkatinize bağlı olarak da bakacağınız başka dosyalar da var ama bu bize bir başlangıç
yapmalı

5
Bu,
kâğıt

Yanıtlar:


24

Unalias sorunu giderirse (geçici olarak da olsa), bunun bir takma ad olduğunu onaylıyoruz. ~ / .Bashrc içine bir unalias ls ekleyerek "kaba zorlama" olabilir.

echo "unalias ls" >> ~/.bashrc

Bu bashrc her okunduğunda çıkarılacak ve takma adı kaldıracak.
Bu size biraz huzur verecek, ancak bazı dosyaların takma adı yeniden başlatmak için hala kod içerdiği sorunu çözmeyecektir. Sorunun hangi dosyayı içerdiğini bulmanız gerekir.

Bash kullanıyorsanız:

grep "NeverGonnaGiveYouUp" /etc/profile /etc/bash.bashrc \
      ~/.bashrc ~/.bash_profile ~/.profile \
      /root/.bashrc /root/.bash_profile /root/.profile

Bu tanımı olan olası dosyaların iyi bir listesi. Bu aramada hiçbir şey görünmüyorsa veya başka bir kabuk kullanıyorsanız, daha fazla yardım için bize bildirin.


16

unalias komutu, geçerli oturum açma oturumu süresince diğer adını kapattı. takma ad, kullanıcı tekrar giriş yaptığında, takma adı tekrar etkin olduğunda, unalias komutuyla .bashrc dosyasından kaldırılmaz.

.bashrc gizli bir dosyadır, Takma ad listesini yazarak kontrol edebilirsiniz:

$ alias

Kabuk yapılandırma dosyasını kontrol edin ~ / .bashrc ve gerekli takma adları kalıcı olarak kaldırabilirsiniz:

 vi ~/.bashrc

Takma adı bulmak için:

  $ type --all ls

Bir takma adı kaldır:

unalias gs

Manual'da daha fazlası

Not : unalias -a , tüm diğer takma tanımlarını mevcut kabuk yürütme ortamından kaldıracaktır.


-1

Ubuntu 16.04 LTS için aşağıdaki komutu kullanabilirsiniz

cat /dev/null > ~/.bash_aliases

Bu, ~/.bash_aliasesyalnızca lstakma adı değil (zaten orada tanımlanmamış bile olsa) tanımlanan her şeyi kaldıracaktır .
Stephen Kitt
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.