ইউএসবি ড্রাইভের ট্র্যাশ খালি করা হচ্ছে


41

আমার ম্যাকে একটি ইউএসবি ড্রাইভ প্লাগ ইন করা আছে। ইউএসবি ড্রাইভের জন্য ফাঁকা .Trashesআবর্জনা (ডানদিকে ট্র্যাশ আইকনটি ক্লিক করুন এবং "খালি ট্র্যাশ" চালান) যখন আমি যা পেয়েছি তা খালি করা হয়নি was

কী ভুল হতে পারে? ইউএসবি ড্রাইভ ফাঁকা করার কোনও অন্য উপায় আছে?


9
মজাদার, সবসময় ট্র্যাশ খালি করা আমার ইউএসবি ড্রাইভের জন্য এত সফলভাবে হয়। এটি সম্পর্কে আমার একমাত্র অভিযোগটি হ'ল আমি প্রায়শই কেবল আমার ইউএসবি ড্রাইভের ট্র্যাশ খালি করতে চাই এবং সিস্টেমে প্রতিটি ড্রাইভের জন্য এটি করতে হবে না।
ম্যাথু ফ্রেডরিক

4
@ ম্যাথিউ চেষ্টা করুনrm -R /Volumes/volumename/.Trashes/$UID
গর্ডন ডেভিসন

@ গর্ডন পারফেক্ট, ধন্যবাদ! কমান্ডটি চালানোর জন্য একটি-লাইন অ্যাপলস্ক্রিপ্ট তৈরি করেছে এবং এটি যে কোনও সময় যে কোনও সময় কুইকসিলবার কী-স্ট্রোক করে।
ম্যাথু ফ্রেডরিক

উত্তর:


36

এটি সম্ভব যে অন্য কোনও ব্যবহারকারীর ট্র্যাসে ফাইল রয়েছে । .Trashesপ্রতিটি ভলিউম উপরের ফোল্ডারের প্রতিটি বিভিন্ন ব্যবহারকারীর জন্য সাবফোল্ডার, ব্যবহারকারী আইডি নম্বর (502 এর উদাঃ ব্যবহারকারী ট্র্যাশে রয়েছে দ্বারা হয়েছে .Trashes/502)।
আপনি দেখতে পাচ্ছেন যে এটি নিজের মতো করে কোনও কমান্ড ব্যবহার করে ( VolumeNameআপনার ড্রাইভের নামটি প্রতিস্থাপন করুন ):

ls -la /Volumes/VolumeName/.Trashes/
total 0
d-wx-wx-wt@  3 _unknown  _unknown   102 10 Feb 18:15 .
drwxrwxrwx@ 21 root      wheel      782 13 Feb 14:17 ..
drwx------@ 35 _unknown  _unknown  1190 13 Feb 14:18 502

যেমন আপনি দেখতে পাচ্ছেন, আমার ইউএসবি ডিস্ক .Trashesফোল্ডারে একটি সাব ফোল্ডার রয়েছে 502, এটি ব্যবহারকারী আইডি 502 এর মালিকানাধীন (রেফারেন্সের জন্য, আমার বর্তমান ব্যবহারকারী আইডি 501)। যেহেতু এই ব্যবহারকারীটি আমার সিস্টেমে বিদ্যমান নেই তাই আমি এটিকে এটি হিসাবে দেখতে পাচ্ছি _unknownএবং আমার ব্যবহারকারী এটির ভিতরে দেখতে পারে না, এটি মুছতেও পারে না। সেই ফোল্ডারের ভিতরে দেখতে আমাদের এটি প্রশাসক হিসাবে (যেমন ব্যবহার sudo) করতে হবে।

আপনি যদি নিশ্চিত যে আপনি চান, আপনি একটি কমান্ডের সাহায্যে পুরো ফোল্ডারটি মোছার মাধ্যমে প্রত্যেকের ট্র্যাস মুছে ফেলতে .Trashesপারেন:

sudo rm -R /Volumes/volumeName/.Trashes

সতর্কতা: যে কোনও কিছু জড়িত sudo( "সুপার ব্যবহারকারী হিসাবে করুন" , অর্থাৎ সিস্টেম অ্যাডমিনিস্ট্রেটর) এর মতো এবং rm -Rসাবধানে এটি ব্যবহার করুন। যদি আপনি এটি ভুল টাইপ করেন তবে এটি হতে পারে ... অপ্রীতিকর পরিণতি।


"অন্য কারো ট্র্যাশ হতে পারে" হয় ঠিক ইস্যু আমি মধ্যে চলমান ছিল। এটি আরও ভাল বিজ্ঞাপন করা উচিত!
সিডিজাক

কমান্ড -f স্যুইচ যোগ করার ফলে কর্মটি বাধ্য করা হবে। "*" এর সাথে "ভলিউমেনাম" প্রতিস্থাপনের ফলে আপনি একাধিক ইউএসবি ড্রাইভ সংযোগ করতে পারবেন এবং সেগুলির সমস্তগুলিতে একই সাথে সমস্ত ট্র্যাশ খালি করতে পারবেন। 1-বাই -1 সংযোগ করতে হবে না এবং তারপরে পুনরায় কর।
দানিজেল-জেমস ডাব্লু

কমান্ড চালানো বিপজ্জনক হতে পারে যার মধ্যে উভয়ই জড়িত sudo rmএবং /Volumes/*/somethingকারণ এটি এমনকি আপনার সিস্টেম ড্রাইভকেও প্রভাবিত করতে পারে এবং টাইপোর খারাপ পরিণতি হতে পারে।
জের্লোস

8

সাধারন আচরণ:
আপনি যখন কোনও USB ড্রাইভের বাইরে কোনও কিছু মুছবেন তখন তা .Trashesসেই ভলিউমের কোনও ফোল্ডারে সরানো হবে । আপনার কম্পিউটারে প্লাগ ইন করার পরে, মুছে ফেলা আইটেমগুলি সমস্ত কিছুর সাথে আপনার ট্র্যাশ বিনে উপস্থিত হবে।

আপনি যখন এটি আনপ্লাগ করেন, তখন সেই ড্রাইভ থেকে মুছে ফেলা আইটেমগুলি আর আপনার ট্র্যাশে প্রদর্শিত হবে না যতক্ষণ না আপনি এটিকে আবার প্লাগ ইন করেন। তারপরে, আপনি আবর্জনা খালি করতে পারেন। এটি সত্যিই তাদের সেই ড্রাইভ থেকে মুছে ফেলবে ।

যদি এটি আপনার পক্ষে না ঘটে থাকে তবে আমার পরামর্শটি এখানে:

  1. আপনার ফাইন্ডার সাইডবারে ড্রাইভটি নির্বাচন করুন।
  2. অন্য কিছু, প্রেস নির্বাচন ছাড়া cmd-i(অথবা ব্যবহারের মেনু আইটেম FileGet Info)।
  3. অনুমতি Sharing and Permissionsদেওয়ার জন্য সেই উইন্ডোর বিভাগটি ব্যবহার করুন ।EveryoneRead and Write

এটি গ্রহণ করা উচিত
zsitro

7

আমি জানি না এটি সেরা উত্তর, তবে কমপক্ষে এটির উত্তরটি কার্যকর।

কমান্ড লাইনটি খুলুন, ইউএসবি ভলিউমে সিডি করুন (/ আমার ক্ষেত্রে ভলিউম / ইউএসবি) এবং টাইপ করুন:

/bin/rm -rf ./Trashes/* works fine with me.

এটি ব্যবহারকারীকে প্রতিটি সময় নির্দিষ্ট ভলিউমে যেতে হবে require আপনার জবাবের ভিত্তিতে, আমি একটি বাশ স্ক্রিপ্ট এবং অ্যাপলস্ক্রিপ্ট সমাধান নিয়ে এসেছি।
ডানিজেল-জেমস ডাব্লু

2

2 সমাধান। 1 অ্যাপলস্ক্রিপ্টে মোড়ানো বাশকে অন্য ব্যাশ ব্যবহার করে।

সমাধান # 1

  1. এর সাথে একটি নতুন অ্যাপলস্ক্রিপ্ট তৈরি করুন /Applications/Utilities/AppleScript Editor
  2. নিম্নলিখিত কোডটি টাইপ করুন:

    প্রশাসকের সুবিধাসহ শেল স্ক্রিপ্ট "rm -rf / Volume/*/.Trashes/*" করুন

  3. ফাইলটি কোনও সুবিধাজনক জায়গায় সংরক্ষণ করুন এবং যখনই আপনাকে ইউএসবি ট্র্যাশ সাফ করার দরকার হয় তখন এটি চালান
  4. এটিতে ডাবল ক্লিক করে এটি কার্যকর করা যেতে পারে

দ্রষ্টব্য: এটি আপনার অভ্যন্তরীণ হার্ডডিস্ক সহ সমস্ত সংযুক্ত ভলিউমের ট্র্যাশ খালি করবে। আপনি যদি 5 টি ইউএসবি ড্রাইভ এবং ফায়ারওয়্যার হার্ড ডিস্ক সংযুক্ত করে থাকেন তবে এটি সমস্তটির জন্য আবর্জনা খালি করে দেবে।


সমাধান # 2

  1. আপনার প্রিয় পাঠ্য সম্পাদককে জ্বালিয়ে দিন (আমার ন্যানো)
  2. আপনার পাঠ্য সম্পাদকটিতে নিম্নলিখিত কোডটি আটকে দিন এবং ফাইলটি সংরক্ষণ করুন

    #! / বিন / বাশ
    সুডো আরএম-আরএফ / ভলিউমস / * / ট্র্যাশস

  3. এক্সটেনশন সহ সুবিধাজনক কোনও জায়গায় ফাইলটি সংরক্ষণ করুন .shএবং তারপরে এটি chmod +x {filename}.shটার্মিনাল থেকে সম্পাদনযোগ্য করে তুলুন

  4. এটি দিয়ে চালান ./{filename}.sh

দ্রষ্টব্য: উপরের মত একই নোট এটি টার্মিনাল থেকে নির্বাহযোগ্য।


2

আমি এই স্ক্রিপ্ট অ্যাপলস্ক্রিপ্টটি ব্যবহার করি, এটি অ্যাপ্লিকেশন হিসাবে সংরক্ষণ করুন:

on open these_volumes
    set t_id to user ID of (system info)
    repeat with i in these_volumes
        if (kind of (info for i without size)) is "Volume" then
            set tPath to (POSIX path of i) & ".Trashes/" & t_id
            do shell script "/bin/rm -Rf  " & (quoted form of tPath) & "/*"
        end if
    end repeat
end open

অ্যাপ্লিকেশনটিতে টানুন / ড্রপ ভলিউম (গুলি)।

এই স্ক্রিপ্টটি আপনার ট্র্যাশ (আইডি) ভলিউমের আইটেমগুলি সরিয়ে ফেলবে। যদি অন্য ব্যবহারকারীরা ভলিউমটি ব্যবহার করে তবে এই স্ক্রিপ্টটি তাদের ট্র্যাশ ফোল্ডার থেকে আইটেমগুলি মুছে ফেলবে না, অন্যথায় এটি করার জন্য স্ক্রিপ্টটির প্রশাসকের পাসওয়ার্ডের প্রয়োজন হবে।


ট্র্যাশ খালি করার পরে আপনি যদি ভলিউমটি বের করতে চান তবে এই স্ক্রিপ্টটি ব্যবহার করুন।

on open these_volumes
    set t_id to user ID of (system info)
    set volToEject to {}
    repeat with i in these_volumes
        if (kind of (info for i without size)) is "Volume" then
            set tPath to (POSIX path of i) & ".Trashes/" & t_id
            do shell script "/bin/rm -Rf  " & (quoted form of tPath) & "/*"
            set end of volToEject to contents of i
        end if
    end repeat
    if volToEject is not {} then tell application "Finder" to eject volToEject
end open

অ্যাপলসক্রিপ্টটি কাজ করতে, কেবল সংযুক্ত ডিভাইসটি টানুন বা অ্যাপলস্ক্রিপ্ট অ্যাপ্লিকেশনটিতে চালিত করুন এবং ড্রপ করুন। আপনি সুবিধার জন্য নিয়মিত ট্র্যাশ বিনের পাশের ডকটিতে একটি উপনাম তৈরি করতে পারেন, পাশের ডকটিতে অ্যাপ্লিকেশন আইকনটি টেনে এনে ফেলে।
টনি_কেন্যা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.