Android

Kako ukloniti (izbrisati) simboličke veze u Linuxu

MVC

MVC

Sadržaj:

Anonim

Simbolička veza, poznata i kao simbolička veza, posebna je vrsta datoteka koja upućuje na drugu datoteku ili direktorij. To je nešto poput prečaca u sustavu Windows. Simbolna veza može ukazivati ​​na datoteku ili mapu na istom ili drugom datotečnom sustavu ili particiji.

U ovom ćemo vam vodiču pokazati kako ukloniti (izbrisati) simboličke veze u Linux / UNIX sustavima pomoću naredbi rm , unlink i find naredbi.

Prije nego što počneš

Da biste uklonili symlink, na direktoriju koji sadrži symlink poveznicu morate imati dopuštenja za pisanje. U suprotnom, dobit ćete pogrešku "Operacija nije dopuštena".

Kada uklonite simbol poveznicu, to ne utječe na datoteku na koju ukazuje.

Pomoću naredbe ls -l provjerite je li određena datoteka simbolička veza i pronađite datoteku ili direktorij na koji upućuje simbolička veza.

ls -l /usr/bin/python

lrwxrwxrwx 1 root root 9 Apr 16 2018 /usr/bin/python -> python2.7

Prvi znak "l" označava da je datoteka simbolička veza. Simbol "->" prikazuje datoteku na koju simbol upućuje.

Uklonite simboličke veze s rm

Naredba rm uklanja date datoteke i mape.

Za brisanje simboličke veze rm naredbu rm nakon čega slijedi ime simboličke veze kao argument:

rm symlink_name

Nakon uspjeha, naredba izlazi s nulom i ne prikazuje izlaz.

Pomoću rm možete istodobno izbrisati više simboličkih veza. Da biste to učinili, dodajte imena simbola kao argumente, odvojena razmakom:

rm symlink1 symlink2

Da biste dobili upit prije uklanjanja simboličke veze, koristite opciju -i :

rm -i symlink_name

Za potvrdu upišite y i pritisnite Enter .

rm: remove symbolic link 'symlink_name'?

Ako simbolička veza upućuje na direktorij, na kraju nemojte dodavati / kraću crtu. U suprotnom, dobit ćete pogrešku:

rm symlink_to_dir/

rm: cannot remove 'symlink_to_dir/': Is a directory

Ako se naziv argumenta završava s / , naredba rm pretpostavlja da je datoteka direktorij. Do pogreške dolazi jer kada se koristi bez opcije -d ili -r , rm ne može izbrisati direktorije.

Da biste bili na sigurnoj strani, nikad -r opcija kad uklanjate simboličke veze s rm . Na primjer, ako utipkate:

rm -f symlink_to_dir/

Sadržaj ciljnog imenika bit će izbrisan.

Uklonite simboličke veze s unlink

Naredba za unlink briše datu datoteku. Za razliku od rm , unlink prihvaća samo jedan argument.

Da biste izbrisali simboličku vezu, pokrenite naredbu za uklanjanje unlink slijedi kao ime unlink kao argument:

unlink symlink_name

Ako se naredba uspješno izvrši, ne pokazuje izlaz.

Ne dodajte / krajnju kosu crtu na kraju simboličke unlink jer prekid unlink ne može ukloniti direktorije.

Pronalaženje i brisanje prekidanih simboličkih veza

Da biste pronašli sve prekinute simboličke veze u datoj mapi, pokrenite sljedeću naredbu:

find /path/to/directory -xtype l

/path/to/directory/symlink1 /path/to/directory/subdir/symlink2

Naredba će popisati sve neispravne veze u direktoriju i njegovim poddirektorijima.

find /path/to/directory -maxdepth 1 -xtype l

/path/to/directory/symlink1

Nakon što pronađete slomljene simboličke veze, možete ih ručno ukloniti rm ili unlink ili upotrijebiti opciju -delete naredbe find :

find /path/to/directory -xtype l -delete

Zaključak

Da biste uklonili simboličku vezu, upotrijebite ili rm ili unlink a za njim slijedi ime simboličke veze. Kad uklonite simboličku vezu koja upućuje na direktorij, nemojte dodavati zaokretnu crtu na naziv simboličke veze.

rm vezu za pronalaženje veze