কেন "ls" বায়বীয়ভাবে কেবল আউটপুট দেয় "।" একটি বাহ্যিক ড্রাইভের মূল ডিরেক্টরিতে?


9

আমার ইউএসবি ফ্ল্যাশ ড্রাইভের মূল ডিরেক্টরিতে, কখনও কখনও যখন আমি চালিত করি তখন lsআউটপুটটি স্বাভাবিক থাকে এবং এটি ফাইলগুলি তালিকাভুক্ত করে। অন্য সময়ে, আউটপুট কেবল একটি লাইন হয়:

$ ls
.

যদি আমি ls -laএই সময়ের মধ্যে একটিতে চেষ্টা করি তবে আমি এটি পেয়েছি:

$ ls -la
ls: .: Invalid argument

যদি আমি lsএকাধিকবার পিছনে পিছনে দৌড়ে যাই তবে মনে হয় এটি স্বাভাবিকভাবে আউটপুট বা অস্বাভাবিকভাবে মূলত এলোমেলোভাবে ফিরে আসে।

lsঅন্যান্য ডিরেক্টরিতে সাধারণত কাজ করে বলে মনে হচ্ছে। ls $drivenameএমনকি পিতামহুল ডিরেক্টরি ls ..থেকে সূক্ষ্ম কাজ করে বলে মনে হয় এবং এটি একটি শিশু ডিরেক্টরি থেকে দুর্দান্ত কাজ করে। (যদিও আচরণটি অনির্দিষ্ট থেকে শুরু করার কারণে "স্বাভাবিকভাবে কাজ করে" তার সম্পর্কে আমি শতভাগ নিশ্চিত হতে পারি না)) আমি আরও দুটি বাহ্যিক ইউএসবি ড্রাইভ চেষ্টা করেছি এবং একই আচরণ পেয়েছি।

এখানে কি হচ্ছে? আমি ম্যাক ওএস এক্স 10.11.3 এ আছি।

সম্পাদনা করুন: ভাল ধারণা, তবে আমি মনে করি না যে কোনও নাম ব্যবহার করা হচ্ছে, এবং /bin/lsএকই ফল দেবে।


2
এই অস্বাভাবিক আচরণটি কোনও ত্রুটিযুক্ত ওরফে ফলাফল হতে পারে। আপনি যদি ব্যবহার করেন তবে কী হবে /bin/ls?
ডোপঘোটি

অন্যান্য ডিরেক্টরিতে কি ঠিকঠাক কাজ করে?
লিয়াম

/bin/lsকখনও কখনও আউটপুট আউট একই ফলাফল দেয় .lsঅন্যান্য ডিরেক্টরিতে সাধারণত কাজ করে বলে মনে হচ্ছে। ls NO\ NAMEএমনকি পিতামহুল ডিরেক্টরি ls ..থেকে সূক্ষ্ম কাজ করে বলে মনে হয় এবং এটি একটি শিশু ডিরেক্টরি থেকে দুর্দান্ত কাজ করে। (যদিও আচরণটি শুরু করার জন্য
অনিচ্ছাকৃত

এই ফ্ল্যাশ ড্রাইভে আপনি কোন ফাইল সিস্টেমটি ব্যবহার করছেন? সম্ভবত উইন্ডোজ-ভিত্তিক ফাইল সিস্টেম থেকে কিছু
অবিচ্ছিন্নভাবে উত্পন্ন

আপনি কোন সংস্করণ lsব্যবহার করছেন? /bin/ls --versionকাজ করা উচিত
আরএসএফালকন

উত্তর:


6

এটি ওএসএক্সের সাম্প্রতিক সংস্করণগুলিতে FAT32 এর জন্য ফাইল সিস্টেম ড্রাইভারের মধ্যে একটি বাগ হতে পারে। এটি কেবল তখনই প্রদর্শিত হয় যখন মাউন্ট করা ড্রাইভের মূল কার্যকারী ডিরেক্টরি হয় is যদি এটি কোনও উপ-ডিরেক্টরিতে বা অন্য কোথাও সিস্টেমে জিনিসগুলি কাজ করে বলে মনে হয়।

সিস্টেম ট্রেস সহ এই থ্রেডে কিছু আকর্ষণীয় আলোচনা রয়েছে। https://github.com/robbyrussell/oh-my-zsh/issues/4161


2

ওয়ার্কআরউন্ড: (সম্ভবত তারা যদি বিশেষভাবে এটি না জিজ্ঞাসা করে তবে প্রশ্নকর্তা যা প্রশংসা করবে তার একটি অংশ)

বর্তমান ছাড়া অন্য যে কোনও উপায়ে বর্তমান ডিরেক্টরিটি দেখুন .। উদাহরণ:

cdএকটি উপ-ডিরেক্টরিতে যান এবং তারপরে lsপিতামত্ম ডিরেক্টরিতে চালান । এটি, এর মতো কিছু প্রবেশ করুন:

mkdir S; cd S ; /bin/ls -al ..

অথবা এটির পুরো নামকরণ দ্বারা এটি উল্লেখ করুন। উদাহরণ:

ls /Volumes/microSD007

আমার জন্য, এই ওয়ার্কআরউন্ডগুলির মধ্যে উভয়ই কাজ করে (তা হ'ল এটি প্রত্যাশিত আউটপুট lsদেয় ) যখন আমাকে একই ভুল আউটপুট দেয় ওপি রিপোর্ট করে। (এবং আমার জন্যে, সেখানে জন্য dmesg কোন আউটপুট যখন lsঅদ্ভুত কাজ করে।)

টার্মিনাল.এপ চলমান ব্যাশে আমি 10.12.6 এ একই ত্রুটি দেখছি। একই cshএবং sh, vt100 শব্দটি নির্ধারণের পরে এমনকি। এই কর্মচক্রটি সেই শেলগুলিতেও কাজ করে।

এবং আমি সম্মত হই যে নীল আমাদের ইস্যু করে থ্রেড ইস্যুতে stat64ইঙ্গিত করে একটি বাগ zshআছে। (আমি ভেবেছিলাম যে সমস্যাটি ত্রুটিযুক্ত এবং / অথবা নকল ফ্ল্যাশ মেমরির কারণে হয়েছে এবং এখনও অবাক হয়েছি যে এটি কখনও কখনও কোনও কারণ হয়))

আমি লক্ষ্য করেছি যে এই বাগটিও প্রভাবিত করে:

  • ইমাক্সের ডায়ার্ড মোড, কারণ এটি কল করে lsএবং
  • ls যখন এটি ইমাসের শেল মোডে ব্যবহৃত হয়।

2
আমি বুঝতে পারি না যে কেন গোরো তারা সম্পাদনা করেছিলেন এবং কোনও সম্পাদনার সংক্ষিপ্তসার সরবরাহ করা হয়নি। আমি মনে করি তারা উত্তরটি আরও খারাপ করেছে, এবং এখন দেখছি এটি -1 পেয়েছে। আমি একটি কার্যপ্রণালী সরবরাহ করেছি, আমার 'ওয়ার্কআরআন্ড' সূচকটি সরিয়ে ফেলার ফলে মনে হচ্ছে আমি সরাসরি উত্তর দেওয়ার জন্য দাবি করছি / চেষ্টা করছি। আমি মনে করি আমি কোনও মন্তব্যের চেয়ে বেশি দিচ্ছি, তবে কোনও উত্তরের চেয়ে কম। এটা কি উত্সাহ দেওয়া হবে না? আমি একটি নতুন চিহ্নিত; কোনও সম্পাদনার সংক্ষিপ্তসার এবং -1 এর কারণটি কি উপযুক্ত হবে না? গোরো একটি সংক্ষিপ্ত, আরও ভাল উত্তর মুছে ফেলেছে যা আমি যুক্ত করেছি। আমি পাই না।
ম্যাথু এলভি

1
আমি বেড়ায় আছি; সাধারণত উত্তরের প্রশ্নের উত্তর দেওয়া প্রয়োজন, কেবলমাত্র আরও তথ্য সরবরাহ করা নয়, তবে সমস্যাটি ঘিরে কাজ করা সম্ভবত প্রশ্নকর্তা যা খুঁজছিলেন তা সুনির্দিষ্টভাবে উল্লেখ না করলেও এটি তারই অংশ। বেশিরভাগ সম্পাদনাগুলি অপ্রয়োজনীয় ধরণের বলে মনে হয় এবং অন্ততপক্ষে একটি অবশ্যই ফর্ম্যাটটি মিস করে, তাই আমি সেগুলি ফিরিয়ে আনি। আমি নিশ্চিত নই যে পোস্টটিতে কোনও ডাউনভোট ছিল কিনা তবে বর্তমানে এটি 2 টি উপভোট এবং 0 টি ডাউনভোটে রয়েছে
মাইকেল মরোজেক

0

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

যদি ড্রাইভটি কখনই অপসারণ না করা হয়, তবে এটি একটি হার্ডওয়্যার সমস্যা হতে পারে বা এমন কোনও সফ্টওয়্যার হতে পারে যা কোনও কারণে ড্রাইভটি আনমাউন্ট করে; আপনার সিস্টেম লগ প্রদান করা উচিত।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.