ටර්මිනලයේ හිස් නොවන නාමාවලියක් මකා දැමිය හැක්කේ කෙසේද?


671

පහත නාමාවලිය මකා දැමිය හැක්කේ කෙසේද?

මම ටයිප් කළෙමි:

rmdir lampp

මෙම දෝෂය මතු වේ:

rmdir: failed to remove `lampp': Directory not empty

ඩිරෙක්ටරියේ ඇති සියලුම ගොනු මකා දමා ඩිරෙක්ටරි ෆෝල්ඩරය මකා දැමීමට විධානයක් තිබේද?


1
ඉහත සියලු සවිස්තරාත්මක විධානයන් භාවිතා කරමින් "නව ෆෝල්ඩරය" වැනි නාමාවලියක් ඉවත් කිරීමට මට නොහැකිය. එය ද්විත්ව වචන වලින්. නමුත් මට එම නාමාවලිය ඉවත් කිරීමට අවශ්‍යයි. ඕනෑම යෝජනා පිළිගනු ලැබේ. ටී. දීවකර, බෙංගාලුර්, ඉන්දියාව

ලිපිගොනු නාමයේ ඇති හිස් අවකාශය, 'උපුටා දැක්වීම්'> rmdir 'නව ෆෝල්ඩරය' <ඉන්පසු ෆෝල්ඩරය අක්‍රීය කරයි, හෝ නොපෙනෙන අක්ෂර සඳහා ගැලවීමේ අක්ෂර භාවිතා කරන්න.
කෙන් මොලරප්

2
එසේ කිරීමෙන් rm -r lamppපමණක් සිදුවනු ඇත.
ජෝන් ස්ට්‍රූඩ්

Answers:


930

පහත විධානය භාවිතා කරන්න:

rm -rf lampp

එය lamppනාමාවලියෙහි අඩංගු සියලුම ගොනු සහ ෆෝල්ඩර මකා දමයි .

ෆෝල්ඩරය මකා දැමීමට පරිශීලකයාට අවසර නොමැති නම්:

sudoවිධානය ආරම්භයේදී එක් කරන්න :

sudo rm -rf folderName

එසේ නොමැතිනම්, sudoඔබ නොමැතිව අවසර ලබා දෙනු ලැබේ. -fඩිරෙක්ටරියක් මකාදැමීමේදී භාවිතා නොකිරීමට උත්සාහ කිරීම හොඳ පුරුද්දකි :

sudo rm -r folderName

සටහන: මෙය උපකල්පනය කරන්නේ ඔබ දැනටමත් ටර්මිනලයේ මකා දැමීමට අවශ්‍ය ෆෝල්ඩරයේ එකම මට්ටමේ සිටින බවය, එසේ නොවේ නම්:

sudo rm -r /path/to/folderName

FYI: ඔබ අකුරු භාවිතා කළ හැකි -f, -r, -v:

  • -f = නොපවතින ගොනු නොසලකා හැරීමට, කිසි විටෙකත් විමසන්න එපා
  • -r = නාමාවලි සහ ඒවායේ අන්තර්ගතයන් පුනරාවර්තනයෙන් ඉවත් කිරීමට
  • -v = කරන්නේ කුමක්ද යන්න පැහැදිලි කිරීමට

69
මගේ නිහතමානී මතය අනුව, පළමු උත්සාහයේදී "f" එකතු නොකිරීම හොඳ පුරුද්දකි. එහි පරමාර්ථය වැදගත් විය හැකි ඇතැම් අනතුරු ඇඟවීම් නොසලකා හැරීමයි, විශේෂයෙන් ඔබ එය වැරදීමකින් වැරදි නාමාවලියෙන් / කර තිබේ නම්. මගේ මතය අනුව පළමුව "f" නොමැතිව උත්සාහ කිරීම හොඳය, එවිට ඔබට බොහෝ අනතුරු ඇඟවීම් වලට මුහුණ දීමට සිදුවුවහොත් සහ ඒ සියල්ල නොසලකා හැරීම හරි යැයි ඔබට විශ්වාස නම්, Ctrl + C එයින් ඉවත් වී විධානය " f ".
thomasrutter


ma තෝමස්රූටර් ... එකඟ වන්න. "Xxx" ගොනුවක්: root සහ group: root -f ස්විචය සමඟ මකා දැමිය හැකිය ; සහ සුඩෝ නොමැතිව . මෙම නොකර පණිවිඩය වන්නේ -f : " rm: ඉවත් කපා ආරක්ෂා නිත්ය ගොනුව '/home/william/.cache/netbeans/v08.01/tmp/xxx' _". _ මෘදු ලෙස පාගන්න.
ඇත

96
rm -R lampp

කෙසේ වෙතත්, ඔබ මෙවැනි පුනරාවර්තන විධානයක් සමඟ ප්‍රවේශම් විය යුතුය, මන්ද ඔබ බලාපොරොත්තු වූවාට වඩා අහම්බෙන් මකා දැමීම පහසුය.

Enter යතුර එබීමට පෙර ඔබ සිටින්නේ කුමන නාමාවලියද යන්නත්, විධානය නිවැරදිව ටයිප් කළේද යන්නත් දෙවරක් පරීක්ෂා කිරීම හොඳ අදහසකි.

ආරක්ෂිත අනුවාදය

rm -R -i lampp

එකතු කිරීම -iඑය ටිකක් ආරක්ෂිත කරයි, මන්ද එය සෑම මකාදැමීමක් සඳහාම ඔබෙන් විමසනු ඇත. කෙසේ වෙතත්, ඔබ බොහෝ ලිපිගොනු මකා දමන්නේ නම් මෙය එතරම් ප්‍රායෝගික නොවනු ඇත. තවමත්, ඔබට මෙය පළමුව උත්සාහ කළ හැකිය.

විකල්පය පිළිබඳ සටහන -f :

බොහෝ අය -fඑය භාවිතා කිරීමට යෝජනා කරයි (එය ඒකාබද්ධ කිරීම -Rfහෝ -rf), එය කරදරකාරී විමසුමෙන් මිදෙන බව කියමින්. කෙසේ වෙතත්, සාමාන්ය අවස්ථාවල දී ඔබට එය අවශ්ය නැහැ, සහ එය භාවිතා සමහර ගැටලු, ඔබට මීට බව මර්දනය කරන්නේ කිරීම පිළිබඳව දැන ගැනීමට අවශ්ය. ඔබ එය භාවිතා කරන විට, ඔබේ තර්කවල නොපවතින නාමාවලියක් හෝ ගොනුවක් (ගොනුවක්) සපයන්නේ නම් ඔබට අනතුරු අඟවනු නොලැබේ: කිසිවක් මකා දැමීමට rm නිහ ly ව අසමත් වනු ඇත. සාමාන්‍ය රීතියක් ලෙස, පළමුවෙන්ම උත්සාහ කරන්න -f: ඔබේ තර්ක සමඟ ගැටලු තිබේ නම්, එවිට ඔබ දකිනු ඇත. ලිවීමේ ප්‍රවේශයකින් තොරව ලිපිගොනු පිළිබඳව ඔබ ඕනෑවට වඩා විමසීමට පටන් ගන්නේ නම්, ඔබට එය උත්සාහ කළ හැකිය-f. විකල්පයක් ලෙස, මෙම විමසීම් වලක්වා ගැනීම සඳහා ඔබ මකාදැමූ ලිපිගොනු සහ නාමාවලි සඳහා පූර්ණ අවසර ඇති පරිශීලකයෙකුගෙන් (හෝ සුඩෝ භාවිතා කරන සුපර් යූසර්) විධානය ක්‍රියාත්මක කරන්න.


4
සටහන: සිම්පල් -rද භාවිතා කළ හැකි අතර මෙහි සමාන බලපෑමක් ඇත. මම පමණක් කැපිටල් අකුරු භාවිතා කිරීමට නැඹුරු -Rඑය මම වැනි භාවිතා කරන වෙනත් විධාන සමග අනුරූප වන නිසා grepසහ chmod, සමහරක් පමණක් කැපිටල් අකුරු ආකෘතිය සහාය.
thomasrutter

ඇන්ඩ්‍රොයිඩ් හි ඇඩ්බී (ඇන්ඩ්‍රොයිඩ් නිදොස් කිරීමේ පාලම) භාවිතා කරමින් මෙය මා වෙනුවෙන් වැඩ කළේය. Rm -rf උත්සාහ කළ නමුත් එය ක්‍රියාත්මක වූයේ නැත. Rm -R භාවිතා කිරීමට සිදු විය. ස්තූතියි.
raddevus

මෙය හොඳ විසඳුමකි, විශේෂයෙන් Bash පර්යන්තය භාවිතා කිරීම පිළිබඳ අද්දැකීම් අඩු අය නම්. විධානය කෙටි කළ හැකිය rm -ir FOLDER.
ඇලයින්ඩ්

25

CLI මාදිලිය හරහා නාමාවලිය මකා දැමීමට බොහෝ ක්‍රම තිබේ. එය ඔබට සැපපහසු වන්නේ කුමන ආකාරයෙන්ද යන්න මත රඳා පවතී.

rm -rvf /path/to/directory  
  • -r = නාමාවලි සහ ඒවායේ අන්තර්ගතය පුනරාවර්තනයෙන් ඉවත් කරන්න
  • -v = කරන්නේ කුමක්ද යන්න පැහැදිලි කරන්න
  • -f = නැති ගොනු නොසලකා හරින්න, කිසි විටෙකත් විමසන්න එපා

ඔබ ලිනක්ස් හි අළුත් නම්, man rmවැඩි විකල්පයක් සහ නිරවද්‍යතාවයක් සඳහා විධාන ( ) හි man පිටු භාවිතා කරන්න .


-1

අද මට ඒ ගැන යම් කරදරයක් තිබුණත් මම එය සුඩෝ සමඟ ජය ගත්තා.

Caveat: පහත විධානය භාවිතා කිරීමට පෙර ඔබට සියල්ල මකා දැමීමට අවශ්‍ය බව සහතික වන්න.

$ sudo rm -R [Directory name]

මම අද මෙය සාර්ථකව කළ අතර හිස් නොවන නාමාවලි බොහොමයක් ඉවත් කර මට අවශ්‍ය / අවශ්‍ය නොවන බව තහවුරු කළෙමි.

මම LTS 14.04 භාවිතා කරමි


4
"SUDO" යනු විධානයක් නොවේ - "sudo" යනු. එසේ වුවද, හිස් නොවන නාමාවලියක් මකා දැමීමට ඔබ sudo භාවිතා නොකරයි, ඔබ එය අයිති නැති ගොනුවක් මකා දැමීමට භාවිතා කරයි. ඇත්ත වශයෙන්ම මෙය සිදු කිරීම භයානක වන අතර එය ඉතා බුද්ධිමත් නොවේ, මන්ද ඔබ සතුව නැති ලිපිගොනු අන්ධ ලෙස මකා නොදැමිය යුතුය.
මාටි ෆ්‍රයිඩ්

-2

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

#became super user
sudo su -

#deleted contents of, and then the directory, harvey_snake/
rm -R harvey_snake/

4
මම හිතන්නේ නැහැ ඔබට sudo suමෙහි අවශ්‍යයි කියා . rmසමඟ විධානය උපසර්ගය කරන්න sudo. ආරක්ෂාව සඳහා එය හොඳ පුරුද්දකි (සුඩෝගේ යෝජකයින්ට අනුව) අවශ්‍ය නොවන විට මූල විමසුමේ නොසිටීම.
thomasrutter

2
එසේම, ඔබ සිටින්නේ කුමන ඩිරෙක්ටරියේදැයි ඉතා විශ්වාසයෙන් සිටින්න sudo rm -r.
ටෝනි මාටින්

ඔබට root-relative ( /directory_name) විධානය කළ හැකි බැවින් ඔබ මකා දමන්නේ කුමන නාමාවලියද යන්න ගැන සැකයක් නැත.
යාකොව් අයින්ස්පන්
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.