2012-03-29 12 views
6

यह एक मूल प्रश्न है लेकिन मैं एक सभ्य समाधान खोजने के लिए संघर्ष कर रहा हूं। यह स्वचालन से मेरी लिपि में बाधा डाल रहा है।पूर्ण पथ के बिना फ़ोल्डर और अभिभावक फ़ोल्डर के बीच प्रतिलिपि कैसे करें

मेरे पास निम्न पथ है।

/home/hassan/Dyna/ProjectSimulation 
परियोजना अनुकरण में

मैं अब मैं इस घर्षण फ़ोल्डर में एक फ़ाइल friction1.txt है और मैं ProjectSimulation करने के लिए इसे कॉपी करना चाहते हैं

/home/hassan/Dyna/ProjectSimulation/friction 

की तरह 3 फ़ोल्डरों

friction time force 

है।

क्या यह संभव पथ से बचने और केवल एक कदम नीचे संभव है?

अगर मुझे इस friction1.txt को फ़ोल्डर बल में कॉपी करना है, तो वैसे भी पूरा पथ से बचने के लिए वैसे भी है।

मेरा मतलब है कि मेरे पास सबराउटिन है लेकिन यह पथ निर्भर है, जब भी मैं इसे चलाता हूं, मुझे उसी फ़ोल्डर में भागना होता है और फिर मेरे परिणामों की प्रतिलिपि बनाना पड़ता है ताकि मैं अपने सिमुलेशन का केवल एक उदाहरण चला सकूं।

विशेषज्ञ कृपया मुझे मार्गदर्शन करें।

पीएस: यह 600 लाइन खोल का हिस्सा है।

उत्तर

9

यह इतना बुनियादी है कि मैंने आपके प्रश्न में कुछ गलत समझा होगा।

यदि आप किसी मूल निर्देशिका का संदर्भ लेना चाहते हैं, तो .. ऐसा करने का तरीका है। तो, आप दो स्थानों के लिए friction1.txt प्रतिलिपि बनाना चाहते हैं, तो आप सिर्फ

cp friction1.txt .. 
cp friction1.txt ../force 

आप सभी की देखभाल करने की जरूरत है सुनिश्चित करें कि CWD

/home/hassan/Dyna/ProjectSimulation/friction

ताकि संदर्भ बिंदु

है बना रही है कर सही जगह पर

0

आप temprarily ProjectSimulation को वर्तमान निर्देशिका बदल सकते हैं, फ़ाइल की प्रतिलिपि (cp friction/friction1.txt .), तो मूल (ताकि स्क्रिप्ट के बाकी के रूप में पहले से काम करता है)

वैकल्पिक रूप से करने के लिए वापस पथ बदलने के लिए, आप dirname उपयोग कर सकते हैं वह मूल निर्देशिका का नाम पाने के लिए और इसका उपयोग करें।

0

अपनी ज्ञात निर्देशिका संरचना के रूट डीआईआर में बदलें। फिर रिश्तेदार पथ के साथ कॉपी ऑपरेशन करें। फिर अपने डीआईआर में वापस आएं जहां से आप आए थे।

आपका दोस्त हैं:

cd 
cd - 

या बेहतर:

pushd 
popd 

(आदमी पार्टी देखें)

अर्थात

pushd /home/hassan/Dyna/ProjectSimulation 
cp friction/friction1.txt . 
cp friction/friction1.txt force 
popd