ටර්මිනලයේ සංකේතාත්මක සබැඳියක් නිර්මාණය කරන්නේ කෙසේද?


365

සංකේතාත්මක සබැඳියක් / මෘදු සම්බන්ධකයක් නිර්මාණය කිරීමට භාවිතා කරන විධානය කුමක්ද?

Answers:


573
┌── ln(1) link, ln -- make links
   ┌── Create a symbolic link.
                            ┌── the optional path to the intended symlink
                               if omitted, symlink is in . named as destination
                               can use . or ~ or other relative paths
                      ┌─────┴────────┐
ln -s /path/to/original /path/to/symlink
      └───────┬───────┘
              └── the path to the original file/folder
                  can use . or ~ or other relative paths
$ echo content > original
$ ln -s original symlink
$ ls -la original symlink
-rw-r--r--  1 grgarside  staff    8 28 Jan 18:44 original
lrwxr-xr-x  1 grgarside  staff    8 28 Jan 18:44 symlink -> original
$ cat symlink
content

Ln (1) පිළිබඳ වැඩි විස්තර සඳහා man පිටුව බලන්න .

සිම්ලින්ක් වෙත යන මාර්ගය අත්‍යවශ්‍ය නොවේ; මඟ හැරී ඇත්නම්, lnවත්මන් නාමාවලියෙහි ගමනාන්තයට සමාන නමක් සහිත සබැඳියක් සෑදීමට පෙරනිමි:

$ cd ~/Documents
$ ln -s ../Pictures
$ ls -l Pictures
lrwxr-xr-x  1 user  staff  11 Feb  1 17:05 Pictures -> ../Pictures

පද්ධති නාමාවලියක් ප්‍රතිස්ථාපනය කිරීම සඳහා සිම්ලින්ක් නිර්මාණය කිරීම සඳහා (උදා: ඔබට /Usersවෙනත් තැටි ධාවකයක් වෙත යොමු වීමට අවශ්‍ය නම් ), ඔබ පද්ධති අඛණ්ඩතාව ආරක්ෂණය අක්‍රිය කළ යුතුය . සිම්ලින්ක් සැකසූ පසු ඔබට එය නැවත සක්‍රිය කළ හැකිය.


68
ඔබගේ පිළිතුර තරම් පැහැදිලි පිටු පිටු පමණක් නම්!
ඒඩ්‍රියන් ලින්ච්

අවසරය ප්‍රතික්ෂේප විය: එස් ඔබට ඉඟියක් ලබා දිය හැකිද? පරිශීලකයින් සඳහා සිම්ලින්ක් නිර්මාණය කිරීමට උත්සාහ කරන බැවින් මට එය වෙනත් දෘඩ තැටියක භාවිතා කළ හැකි අතර එස්එස්ඩී සතුව සිම්ලින්ක් ඇත. ස්තූතියි
එවොක්ස්

2
at පැට්‍රික්ස් මම පැහැදිලි කිරීම සඳහා මගේ පිළිතුර සංස්කරණය කළෙමි; තවදුරටත් සංස්කරණය කිරීමට නිදහස් වන්න.
grg

5
විනෝදජනක කාරණය: මුල් පිටපත ඇත්ත වශයෙන්ම පැවතිය යුතු නැත. විධානය ln -s "This directory is no longer in use" READMEපරිපූර්ණ ලෙස නීත්‍යානුකූල වනු ඇත, එවිට ක්‍රියාත්මක ls -lකරන ඕනෑම කෙනෙකුට පණිවිඩය පෙනෙනු ඇත.
එඩ්වඩ් ෆෝක්

1
අනාගත යොමු කිරීම සඳහා: ඉඩ ඉතිරි කර ගැනීම සඳහා ඔබට / පරිශීලකයින් මැකෝස් වෙත ගෙනයාමට අවශ්‍ය නොවේ. පරිශීලක ලැයිස්තු ඇතුළත් කිරීම් දකුණු-ක්ලික් කිරීමෙන් පරිශීලකයින් සහ කණ්ඩායම් යටතේ ඇති පද්ධති මනාපයන් තුළ ඔබට පරිශීලකයින්ගේ නිවාස නාමාවලි මාර්ග තනි තනිව වෙනස් කළ හැකිය.
පීටර් ඩබ්ලිව්

75

විධානය හැඳින්වේ ln. විකල්පය සමඟ භාවිතා කරන්නේ නම් -sඑය වත්මන් නාමාවලියෙහි සංකේතාත්මක සබැඳියක් නිර්මාණය කරයි:

ln -s /any/file/on/the/disk linked-file

1
සම්බන්ධිත ගොනුව පළමුව පැවතිය යුතුද? මට ඉලක්කයේ දෝෂයක් හමු නොවූ ගොනුවක් ලැබුණි.
AlxVallejo

2
ගොනුව නොවේ (එය එසේ වුවහොත් ඔබට දෝෂ පණිවිඩයක් ලැබෙනු ඇත), නමුත් ඕනෑම මාර්ගයක ඇති සියලුම නාමාවලි. ඔබ හිර වී ඇත්නම්, ඉහළ දකුණේ ප්‍රශ්න අසන්න බොත්තම භාවිතයෙන් නව ප්‍රශ්නයක් ඇසීමට නිදහස් වන්න. සන්දර්භය සැපයීම සඳහා මෙම ප්‍රශ්නයට සබැඳියක් ඇතුළත් කරන්න.
නොහිල්සයිඩ්

ඔබ මෙම විධානය ක්‍රියාත්මක කිරීමට පෙර සංකේතාත්මක සබැඳිය නොතිබිය යුතුය. නමුත් මා දන්නා තරමින් වලංගු මාර්ගයක් අවශ්‍ය වේ. ඔබ මෙම විධානය ක්‍රියාත්මක කිරීමට පෙර ප්‍රතිදාන ගොනුවේ ෆෝල්ඩරය නොපවතී නම්, ඔබට No such file or directoryදෝෂයක් ද ලැබෙනු ඇත.
ඩෙනිස් කැප්ලාන්

34

මෙම ප්‍රශ්නය ටර්මිනලය ගැන පැහැදිළිව අසන බව මම දනිමි, නමුත් ඔබ GUI Land හි සිටින අතර ටර්මිනල් ඉඩමට ඇතුළු වීමට අකමැති නම්, ඔබට SymbolicLinker භාවිතා කළ හැකිය . මෙය ඔබගේ සේවා මෙනුවෙහි "සංකේතාත්මක සබැඳියක් සාදන්න" විකල්පය සෙවුමේ ඇත.

ෆෝල්ඩරයක් සඳහා සන්දර්භය මෙනුවක්, "සේවා" උප මෙනුවක් පෙන්වන අතර, "සංකේතාත්මක සබැඳියක් සාදන්න" කැපී පෙනේ

සංකේතාත්මක සබැඳියක් සඳහා සන්දර්භය මෙනුවක්, "සංකේතාත්මක සබැඳියක් සාදන්න" කැපී පෙනේ


3
මෙය පහත් කොට සලකන්නේ මන්දැයි දැන ගැනීමට මා කැමතිය, එබැවින් මට මෙතැන් සිට උසස් තත්ත්වයේ පිළිතුරු ලබා දිය හැකිය :)
බෙන් ලෙගීරෝ

11
"ටර්මිනලයේ සංකේතාත්මක සම්බන්ධකයක් නිර්මාණය කරන්නේ කෙසේද?" නමුත් මම ඔබව පහත් කරන්නේ නැහැ :)
vedrano

1
@EdwardFalk මම එල් Capitan සිතන, ඔබ පැවැත්විය හැකිය Command+ Optionගොනුව ඇදගෙන අතර ... පසුව පිළිතුර යාවත්කාලීන කරනු ලබයි
බෙන් Leggiero

2
En බෙන්ලෙගීරියෝ අන්වර්ථයක් ඇති කරයි.
ඇන්ඩි ස්ටුවර්ට්

2
En බෙන්ලෙජෙරියෝ, වෙනස මෙහි විස්තර කර ඇත: apple.stackexchange.com/questions/2991/…
MiB


6

ln -s /some/dir/ ~/Desktop/dir

එකම විධානය භාවිතා කර ඔබට නාමාවලිය සඳහා සිම්ලින්ක් එකක් සෑදිය හැකිය

ln -s "$(pwd)" ~/Desktop/dir

ඔබ සිටින වත්මන් නාමාවලියට සිම්ලින්ක් සෑදීමට.


3
සරල .(තිතක්) මඟින් pwd ලබා දෙනු ඇත. විසිතුරු තර්ක අවශ්‍ය නොවේ :)
mylogon

@mylogon hahaha මම සමහර විට අධිතක්සේරු කිරීමට කැමතියි. මගේ පිළිතුර සරල කළා!
ජෙරල්ඩ්

@mylogon මැකෝස් මත ක්‍රියා නොකරන බව මට දැන් වැටහී .ඇත. තවම ලිනක්ස් උත්සාහ කර නැත. ප්‍රති using ./ලයක් ලෙස මෙය foo -> ./fooතමාටම යොමු වන ප්‍රති in ලයකි.
ජෙරල්ඩ්

ඔබ ටයිප් කළ සම්පූර්ණ විධානය කුමක්ද?
mylogon
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.