लिनक्स में मैं कभी-कभी इस तरह से फाइलों का नाम बदल देता हूं:
mv dir1/dir2/dir3/file.txt dir1/dir2/dir3/file.txt.old
ध्यान दें कि मैं केवल फ़ाइल का नाम बदलना चाहता हूं, इसे किसी अन्य निर्देशिका में स्थानांतरित नहीं करता।
क्या कोई कमांड है जो मुझे उस कमांड का शॉर्टहैंड संस्करण करने की अनुमति देगा? मैं कुछ ऐसा सोच रहा हूँ:
mv dir1/dir2/dir3/file.txt file.txt.old
या हो सकता है कि कुछ भी (जैसे सिर्फ नाम के लिए):
mv dir1/dir2/dir3/file.txt {}.old
मेरा लक्ष्य फिर से पूरा रास्ता बताना नहीं है।
मुझे पता है कि उन "उदाहरणों" को मैंने लिखा है जो काम नहीं करते हैं, लेकिन यह सिर्फ एक विचार है जिसे मैं पूरा करना चाहता हूं।
मैं निर्देशिका में सीडी करने के लिए नहीं करना चाहती।
(cd dir1/dir2/dir3 && exec mv file.txt{,.old})
उपप्रकार के बिना कोड के रूप में प्रभावी रूप से एक ही प्रदर्शन है, क्योंकि बाहरी कमांड मंगलाचरण के दौरान आईएनजी से exec
बचा जाता है fork()
, इसलिए आपके पास दोनों तरह से एक कांटा है।