उबंटू चल रहा है, मैं एक टर्मिनल खोलता हूं और करता हूं
sudo bash
cd /
ls | head -n 1000
और अनुमानित रूप से लगभग 20 निर्देशिकाएं वापस आ गई हैं।
हालाँकि, अगर मैं एक ls करता हूँ, और इसे किसी भी चीज़ में नहीं डालता, तो ls सिर्फ वहीं लटका रहता है जब तक कि मैं इसे दूसरे टर्मिनल से नहीं मार देता। क्या हो सकता है?
संपादित करें:
> type ls
ls is aliased to `ls --color=auto`
संपादित करें:
> /bin/ls /
<normal response>
> /bin/ls --color=auto
<hangs indefinitely>
क्यों इस कमांड को लटकाने के लिए ls के आउटपुट को रंग दिया जाता है?
strace ls
संभावित रूप से आपको समस्या की पहचान करने में मदद कर सकती है। strace
प्रोग्राम द्वारा किए गए सभी सिस्टम कॉल को प्रदर्शित करता है।
/bin/ls
(या बल्कि command ls
) ls
अलियासड विकल्पों के बिना चलाने के लिए, यह पुष्टि करने के लिए कि क्या यह रंग विकल्प है जो एक अंतर बना रहा है या नहीं। FWIW, ls
रंग को बंद कर देता है जब इसका आउटपुट एक पाइप या अन्य गैर-टर्मिनल डिवाइस होता है।
\ls
type ls
किसी भी संभव उपनाम आदि की जांच करने के