आप इस वैकल्पिक प्रक्रिया की कोशिश कर सकते हैं — पथ में बने रहें
/myuser/downloads/
लेकिन, पहले /myuser/downloads/new/
डायरेक्टरी बनाने के बजाय, डायरेक्टरी में फोल्डर बनाएं /myuser/
, कमांड के साथ mkdir ../new
, फिर सभी फाइलों को इन downloads
पर ले जाएँ new
, और अंत new
में इन करें downloads
। आप इसे एक पंक्ति में कर सकते हैं, जबकि /myuser/downloads/
मार्ग में, कमांड के साथ:
mkdir ../new && mv * ../new && mv ../new ../downloads
इस मामले में, आप, के बाद से फ़ाइलें / फ़ोल्डर के "फ़िल्टरिंग" किसी भी प्रकार के बारे में चिंता की जरूरत नहीं है new
के रूप में पथ का एक ही स्तर पर है downloads
, तो आप सिर्फ में सब कुछ ले जा सकते हैं downloads
करने के लिए new
, और उसके बाद के लिए कदम new
downloads` में।
हालांकि, अगर आप पहले से ही सबफ़ोल्डर है, तो new
बनाया है और, दूसरा बनाने के लिए चिंता नहीं नहीं करना चाहता - बस बदलने के mkdir
पहले के बाईं ओर आदेश &&
आदेश एक करने के लिए ऊपर दिखाए में mv
आदेश, धक्का new
में पथ; दूसरे शब्दों में, जबकि आप अभी भी कर रहे हैं /myuser/downloads/
, आप बदल सकते हैं mkdir ../new
करने के लिए mv new ..
। फिर सबफ़ोल्डर new
[पथ में /myuser/downloads/new/
] /myuser/new/
के समान स्तर पर धकेल दिया जाता है /myuser/downloads/
, और फिर आप शेष कमांड को चला सकते हैं जैसा कि ऊपर दिखाया गया है। सभी एक साथ, हमारे पास हैं, पथ से शुरू /myuser/downloads/
:
mv new .. && mv * ../new && mv ../new ../downloads
और, चूंकि आप "डाउनलोड फ़ोल्डर में सभी फ़ाइलों और फ़ोल्डरों / उप-फ़ोल्डरों को उप-फ़ोल्डर [ new
]" में स्थानांतरित करना चाहते थे , तो आप कर रहे हैं! यदि आप केवल फ़ाइलें (या केवल फ़ोल्डर या [अधिक दानेदार वस्तु आंदोलन सम्मिलित करें]) स्थानांतरित करना चाहते थे , तो आपको अन्य कमांड का उपयोग करना होगा जो ऑब्जेक्ट्स को "फ़िल्टर" कर सकते हैं, जैसे grep
। ऊपर लिखी गई कमांड आपके उद्देश्यों के लिए पर्याप्त हैं, हालाँकि।
mv * new
हालांकि, यह "नया करने के लिए नए कदम नहीं कर सकते" या कुछ इसी तरह होगा। शायदmv -i * new
आप ओवरराइट को रोकते हैं।