2010-08-27 19 views

उत्तर

26
dirname = File.basename(Dir.getwd) 

File.basename() आधार नाम भी जब अपने तर्क एक निर्देशिका का मार्ग है रिटर्न में से एक का प्रयास करें।

निम्नलिखित कोड प्रिंट मेरे लिए kiamlaluno, जहां /घर/kiamlaluno मेरी Ubuntu स्थापना में घर निर्देशिका है।

puts File.basename('/home/kiamlaluno') 

ही puts File.basename(Dir.getwd), वर्तमान निर्देशिका है जब/घर/kiamlaluno करता है।

+0

+1 यह थोड़ा भ्रामक है हालांकि w.r.t. पठनीयता – Gishu

7
irb(main):001:0> Dir.getwd 
=> "C:/Documents and Settings/UserName" 

या क्या मैंने आपके प्रश्न को गलत समझा?

अद्यतन: नीचे

File.split(Dir.getwd)[-1] 
Pathname.new(Dir.getwd).basename.to_s 
+0

हाँ मैं केवल वर्तमान फ़ोल्डर नाम करना चाहते हैं, पथ फ़ोल्डर नहीं। इस मामले में: उपयोगकर्ता नाम। क्या रूबी में ऐसा करने का कोई तरीका है या क्या आपको regexp का उपयोग करना है? –

+2

File.basename (Dir.getwd) केवल पिछले फ़ोल्डर नाम वापस आ जाएगी। – Teoulas

+1

@ajsie - अद्यतन देखें। – Gishu

संबंधित मुद्दे