لینکس میں ڈائریکٹری اور اس کے مواد کو کیسے کاپی کریں۔

پوری ڈائریکٹریز کو ایک جگہ سے دوسری جگہ کاپی اور پیسٹ کرنے کے لیے 'cp' کمانڈ استعمال کریں۔

اس سے کوئی فرق نہیں پڑتا ہے کہ آپ کون سا آپریٹنگ سسٹم چلا رہے ہیں، ایک فائل یا فولڈر کو ایک جگہ سے دوسری جگہ کاپی کرنا سب سے بنیادی کام ہے جسے آپ روزانہ انجام دیتے ہیں۔ کام کے مصروف دن، اسکول میں پراجیکٹ اسائنمنٹ کے دوران، یا کسی پروجیکٹ کی جاری ترقی کے دوران، فائلوں کو مقام A سے مقام B تک کاپی کرنا ناگزیر ہے۔

فائلوں یا فولڈرز کی کاپی عام طور پر GUI کا استعمال کرتے ہوئے کی جاتی ہے۔ لینکس ایک کمانڈ لائن یوٹیلیٹی فراہم کرکے ٹرمینل پر کام کرنے کی آپ کی عادت کا خیال رکھتا ہے جو آپ کو فائلوں یا فولڈرز کو ایک جگہ سے دوسری جگہ کاپی کرنے کی اجازت دیتا ہے۔ کا استعمال کرتے ہوئے cp متعدد اختیارات کے ساتھ کمانڈ آپ کو فائلوں اور فولڈرز کو متعدد طریقوں سے کاپی کرنے کی آزادی دیتا ہے۔

میں آپ کو اس مضمون کے بارے میں بتاتا ہوں جہاں آپ اس کے بارے میں سیکھیں گے۔ cp کمانڈ اور ڈائرکٹریز کو ان کے مواد کے ساتھ کاپی کرنے کے طریقے۔

کے ساتھ دستیاب اختیارات cp کمانڈ

یہ سب سے عام اختیارات ہیں جو کے ساتھ استعمال ہوتے ہیں۔ cp ایک ڈائریکٹری اور اس کے تمام مواد کو کاپی کرنے کے تناظر میں کمانڈ۔

اختیاراتتفصیل
-vوربوز موڈ (ترقی دکھاتا ہے)
-r/Rبار بار ڈائریکٹریوں کو کاپی کریں۔
-nموجودہ فائل یا فولڈر کو اوور رائٹ نہ کریں۔
-میںاوور رائٹ کرنے سے پہلے پرامپٹ کریں۔

ڈائرکٹری کو ایک جگہ سے دوسری جگہ کاپی کریں۔

آئیے سب سے بنیادی استعمال کے ساتھ شروع کریں۔ cp کمانڈ. ہم اس کمانڈ کو آپشن کے ساتھ استعمال کریں گے۔ -r.

کا استعمال کرتے ہوئے -r آپشن اس بات کو یقینی بناتا ہے کہ آپ جس ڈائرکٹری کو کاپی کر رہے ہیں اس کے اندر موجود ذیلی فولڈرز اور فائلیں بھی کاپی ہو جائیں گی۔

نحو:

cp -r [ذریعہ_مقام] [ٹارگٹ_لوکیشن]

مثال:

میرے پاس اپنی موجودہ ورکنگ ڈائرکٹری کے اندر دو ڈائرکٹریز ہیں جنہیں 'پروجیکٹ' اور 'ورک اسپیس' کہتے ہیں۔

اس مثال میں، میں استعمال کروں گا cp -r ڈائرکٹری 'پروجیکٹ' کو اس کے تمام مواد کے ساتھ ایک نئے مقام یعنی '/home/gaurav/workspace' پر کاپی کرنے کا حکم۔ اس کا سیدھا مطلب ہے کہ میں 'پروجیکٹ' نام کی ڈائرکٹری کو 'ورک اسپیس' نامی ڈائریکٹری میں کاپی کر رہا ہوں۔

یہ ڈائریکٹری 'پروجیکٹ' کے مندرجات ہیں۔ کا استعمال کرتے ہوئے ls اس کے مواد کو ظاہر کرنے کا حکم۔

gaurav@ubuntu:~/project$ ls -al کل 288 drwxr-xr-x 6 gaurav gaurav 4096 ستمبر 17 18:26 ۔ drwxr-xr-x 88 gaurav gaurav 266240 17 ستمبر 18:24 -x 2 gaurav gaurav 4096 ستمبر 17 18:25 dem3 drwxr-xr-x 2 gaurav gaurav 4096 ستمبر 17 18:25 dem4 -rw-r-r-- 1 gaurav gaurav 24 ستمبر 17 tempc@gaurav@ ubuntu: ~/project$

اب، کا استعمال کرتے ہوئے cp -r کمانڈ ہم ڈائرکٹری 'پروجیکٹ' کو کسی بھی مطلوبہ جگہ پر کاپی کر سکتے ہیں۔

gaurav@ubuntu:~$ cp -r /home/gaurav/project /home/gaurav/workspace gaurav@ubuntu:~$

آؤٹ پٹ:

gaurav@ubuntu:~/workspace$ ls -al کل 408 drwxrwxr-x 4 gaurav gaurav 4096 ستمبر 17 18:27 ۔ drwxr-xr-x 88 gaurav gaurav 266240 Sep 17 18:24 .. drwxrwxr-x 3 gaurav gaurav 4096 Mar 22 2018 .metadata drwxr-xr-x 6 gaurav gaurav 40976 Sep 18:24 -- 1 gaurav gaurav 1535 ستمبر 16 17:13 source.c gaurav@ubuntu:~/workspace$ 

اوپر والے آؤٹ پٹ میں، ہم دیکھ سکتے ہیں کہ ڈائرکٹری 'پروجیکٹ' کو اصل مقام سے اس نئے مقام '/home/gaurav/workspace' پر کاپی کیا گیا ہے۔ اب ڈائرکٹری 'پروجیکٹ' کو کھولیں اور چیک کریں کہ آیا اس کے اندر موجود تمام مواد کو بھی کاپی کیا گیا ہے۔

gaurav@ubuntu:~$ cd ./workspace/project gaurav@ubuntu:~/workspace/project$

نوٹ: میں نے استعمال کیا ہے۔ ./ مکمل راستے میں داخل ہونے کے بجائے یہاں۔ اس کا سیدھا مطلب ہے کہ یہ میری ہوم ڈائریکٹری کا راستہ ہے اور ورک اسپیس میرے گھر یا موجودہ ورکنگ ڈائرکٹری میں واقع ہے۔ اس پر مزید وضاحت کے لیے، آپ اس مضمون کو دیکھ سکتے ہیں۔

آؤٹ پٹ:

gaurav@ubuntu:~/workspace/project$ ls -al کل 28 drwxr-xr-x 6 gaurav gaurav 4096 ستمبر 17 18:27 ۔ drwxrwxr-x 4 gaurav gaurav 4096 Sep 17 18:27 .. drwxr-xr-x 2 gaurav gaurav 4096 Sep 17 18:27 dem1, drwxr-xr-x 2 gaurav gaurav 4096 dem276 drwxr-xr-x 2 gaurav gaurav 4096 Sep 17 18:27 dem3 drwxr-xr-x 2 gaurav gaurav 4096 Sep 17 18:27 dem4 -rw-r-r-- 1 gaurav gaurav 24 Sep 17 18:27 gaurav@temp. ~/workspace/project$ 

اس آؤٹ پٹ سے، ہم یہ نتیجہ اخذ کر سکتے ہیں کہ ڈائرکٹری 'پروجیکٹ' کے تمام مواد کو بھی نئے مقام پر منتقل کر دیا گیا ہے۔

متعدد ڈائریکٹریز کو ایک جگہ سے دوسری جگہ کاپی کرنا

متعدد ڈائریکٹریوں کو کاپی کرنے کے لیے، cp کمانڈ کو اسی طرح استعمال کیا جاسکتا ہے جیسا کہ اوپر بتایا گیا ہے۔ یہاں صرف تبدیلی یہ ہوگی کہ آپ کو کاپی کرنے کے لیے متعدد ڈائریکٹریوں کے متعدد سورس پاتھ میں داخل ہونے کی ضرورت ہوگی۔

نحو:

cp -r [source_path_1] [source_path_n] [منزل_پاتھ]

آئیے اس کمانڈ کو ایک مثال کے ساتھ چیک کریں۔

مثال:

gaurav@ubuntu:~/workspace$ cp -r ./snap ./project/home/gaurav/tomcat

یہاں، میں نے اپنی موجودہ ورکنگ ڈائرکٹری سے دو ڈائریکٹریز 'snap' اور 'project' کو ایک نئے مقام '/home/gaurav/tomcat' پر کاپی کیا ہے۔

اب ہم چیک کرتے ہیں کہ آیا ڈائریکٹریز کو ان کے مواد کے ساتھ نئے مقام پر کاپی کیا گیا ہے۔

gaurav@ubuntu:~/tomcat$ ls -al کل 9316 drwxrwxr-x 5 gaurav gaurav 4096 ستمبر 19 12:16 drwxr-xr-x 88 gaurav gaurav 266240 Sep 19 12:15 .. drwxr-xr-x 6 gaurav gaurav 4096 Sep 19 12:16 پروجیکٹ drwxr-xr-x 7 gaurav gaurav 4096 Sep 12:15

چیک کیا جا رہا ہے کہ آیا ان ڈائریکٹریز کے مواد کو بھی کاپی کیا گیا ہے۔

gaurav@ubuntu:~/tomcat/snap$ ls couchdb eclipse htop pycharm-community vim-editor gaurav@ubuntu:~/tomcat/snap$ 
gaurav@ubuntu:~/tomcat/project$ ls dem1، dem2 dem3 dem4 temp.c gaurav@ubuntu:~/tomcat/project$

استعمال کرنا cp وربوز موڈ کے ساتھ کمانڈ

کا استعمال کرتے ہوئے cp آپشن کے ساتھ کمانڈ کریں۔ -v وربوز موڈ کو فعال کرتا ہے۔ یہ فیچر ٹرمینل پر موجود فائلوں کو دکھاتا ہے جو کاپی کی جا رہی ہیں۔ جس فائل یا فولڈر کی کاپی کی جا رہی ہے اس کا نام آپ کے ٹرمینل پر ظاہر ہوتا ہے۔

نحو:

cp -vr [source_directory] [target_location_path]

مثال:

gaurav@ubuntu:~$ cp -vr ./workspace/apache ./space

اس مثال میں، ڈائرکٹری 'اپاچی' کو ایک نئے فولڈر 'اسپیس' میں کاپی کیا گیا ہے۔ میں نے استعمال کیا ہے۔ -v کے ساتھ آپشن -r، تاکہ اپاچی ڈائرکٹری کے تمام مشمولات بھی کاپی ہوجائیں۔

آؤٹ پٹ:

'./workspace/apache' -> './space/apache' './workspace/apache/apache-tomcat-8.0.52.tar.gz' -> './space/apache/apache-tomcat-8.0. 52.tar.gz' gaurav@ubuntu:~$

آؤٹ پٹ ڈائرکٹری دکھاتا ہے جس کی کاپی کی جارہی ہے۔ ایک سے زیادہ فائلوں کو کاپی کرنے کی صورت میں بھی یہی عمل کیا جا سکتا ہے۔

استعمال کرتے وقت اوور رائٹنگ سے گریز کریں۔ cp کمانڈ

کبھی کبھی استعمال کرتے وقت cp ایک سے زیادہ فائلوں یا فولڈرز کو کاپی کرنے کے لیے کمانڈ، آپ ان فائلوں کو اوور رائٹنگ کر سکتے ہیں جو پہلے ہی نئے مقام پر کاپی ہو چکی ہیں۔ اس سے بچنے کے لیے اسے استعمال کرنے کا مشورہ دیا جاتا ہے۔ -میں کے ساتھ آپشن cp کمانڈ. یہ آپ کو کسی بھی فائل یا فولڈر کو اوور رائٹ کرنے سے پہلے اشارہ کرے گا۔

نحو:

cp -ri [source_directory_path] [target_location_path]

نوٹ: یہاں، نحو میں میں نے استعمال کیا ہے۔ -r آپشن بھی. یہ ڈائریکٹریز کے مواد کو بھی کاپی کرے گا۔ یہ یہ بھی چیک کرے گا کہ آیا ڈائرکٹری کے اندر ان ذیلی فولڈرز اور فائلوں میں سے کسی کو اوور رائٹ کیا جا رہا ہے۔

مثال:

gaurav@ubuntu:~$ cp -ri ./workspace/snap ./tomcat cp: './tomcat/snap/pycharm-community/current' کو اوور رائٹ کریں؟

یہاں، میں نے 'snap' نامی ڈائریکٹری کو ایک نئے مقام پر کاپی کرنے کی کوشش کی۔ لیکن ڈائرکٹری کا نام 'snap' نئے مقام پر پہلے سے موجود ہے۔ لہذا، موجودہ سنیپ ڈائرکٹری کو اوور رائٹ کرنے سے پہلے مجھے ٹرمینل کی طرف سے اشارہ کیا جائے گا۔

آپ ٹائپ کر سکتے ہیں 'جی ہاں'یا'نہیں' اس اشارے کے جواب کے طور پر۔

صورت میں، اگر آپ استعمال نہیں کرتے ہیں -میں آپشن، موجودہ ڈائرکٹری کو نئی ڈائرکٹری سے اوور رائٹ کر دیا جائے گا۔

کے ساتھ فائلوں اور ڈائریکٹریوں کی اوور رائٹنگ کو چھوڑ دیں۔ cp کمانڈ

ہم استعمال کر سکتے ہیں -n ٹرمینل کو براہ راست ہدایت کرنے کا اختیار کہ کبھی بھی اوور رائٹ نہ کریں اور صرف اسی طرح کی فائلوں اور ڈائریکٹریوں کو استعمال کرتے ہوئے چھوڑ دیں۔ cp کمانڈ.

نحو:

cp -nr [source_directory_path] [target_location_path]

اس کمانڈ کا استعمال کرتے ہوئے آپ اس بات کا یقین کر سکتے ہیں کہ آپ کی فائلیں اور فولڈرز کو اوور رائٹ نہیں کیا جائے گا۔

مثال:

gaurav@ubuntu:~$ cp -ri ./workspace/snap ./tomcat gaurav@ubuntu:~$

یہاں، ڈائرکٹری 'snap' پہلے سے ہی ہدف والے مقام پر موجود ہے۔ لہذا، استعمال کرتے ہوئے -n آپشن اس ڈائریکٹری کو اوور رائٹ نہ کرنے کو یقینی بنائے گا۔

کے برعکس -میں آپشن، یہاں آپ کو اوور رائٹنگ کے بارے میں نہیں کہا جائے گا۔

نتیجہ

کا استعمال کرتے ہوئے cp لینکس میں ڈائریکٹریز اور ان کے مواد کو کاپی کرنے کا حکم ایک آسان عمل ہے۔ کے بارے میں مزید جاننے کے لیے cp دوسرے دستیاب اختیارات کے ساتھ کمانڈ، آپ ٹائپ کرکے دستی صفحہ چیک کر سکتے ہیں۔ آدمی سی پی آپ کے لینکس ٹرمینل میں۔