উবুন্টু টার্মিনালে "সিডি" এবং "সিডি /" কমান্ডের মধ্যে পার্থক্য কী?


10

দেওয়ার পরে cd \, আমি আমার ডিরেক্টরিতে সাইনটি পরিবর্তন করার >সময় প্রতীকটি পাই ।cd /~/

এছাড়াও lsশো আদেশ আমার মত ডিরেক্টরি dev, root, usrক্ষেত্রে cd /

উত্তর:


15

বাশ-এ, আপনার শেল, \(ব্যাকস্ল্যাশ) একটি পালানোর চরিত্রকে বোঝায়। আপনি শেল সিনট্যাক্সের অর্থপূর্ণ স্থান, কোট এবং অন্যান্য অক্ষরের মতো অক্ষরগুলি থেকে পালাতে চান এমন ক্ষেত্রে এটি ব্যবহার করা উচিত তবে আপনি যে কমান্ডটি চালাচ্ছেন তার ডেটা হিসাবে এটি প্রচার করতে চান। লাইনের শেষ অক্ষর হিসাবে এটি আপনি নতুন লাইনটি এড়িয়ে চলেছেন এবং বাশ আরও ইনপুট (একাধিক লাইন) এর জন্য অপেক্ষা করছেন।

/কেবলমাত্র একটি ফরোয়ার্ড স্ল্যাশ (যার অর্থ ডিরেক্টরি বিভাজক )। কেবল /এটির সাথে মূলটি বোঝা যায়, সুতরাং উদাহরণস্বরূপ ls /রুটের সামগ্রীগুলি তালিকাভুক্ত করে। ওয়ার্কিং ডিরেক্টরিটি পরিবর্তন করে /, আপনার শেলের সূচকটিও ~(হোম ডিরেক্টরির জন্য সংক্ষিপ্ত /home/gert/) থেকে আপনি যে ডিরেক্টরিতে চলেছেন তখন পরিবর্তিত হবে ( /)।


ডেমো

$ touch a filename with spaces
$ ls -l
total 0
-rw-rw-r-- 1 gert gert 0 Jul  1 02:33 a
-rw-rw-r-- 1 gert gert 0 Jul  1 02:33 filename
-rw-rw-r-- 1 gert gert 0 Jul  1 02:33 spaces
-rw-rw-r-- 1 gert gert 0 Jul  1 02:33 with

ওহ নো, নামটি দিয়ে একটি ফাইল তৈরি করা আমার উদ্দেশ্য ছিল a filename with spaces। সুতরাং, আমরা \স্পেস থেকে বাঁচতে এটি ব্যবহার করি । এটি শেলটিকে চারটি আর্গুমেন্ট সরবরাহ করতে বাধা দেয় touch, তবে এর পরিবর্তে অন্তর্ভুক্ত স্পেস সহ একটি একক সরবরাহ করুন।

touch a\ filename\ with\ spaces

$ touch a\ filename\ with\ spaces
$ ls -al
total 24
drwxrwxr-x  2 gert gert  4096 Jul  1 02:35 .
drwxrwxr-x 55 gert gert 20480 Jul  1 02:33 ..
-rw-rw-r--  1 gert gert     0 Jul  1 02:35 a filename with spaces

অবশ্যই, উদ্ধৃতি ( touch "a filename with spaces") ব্যবহার করে কেউ একই জিনিস অর্জন করতে পারে।

এটি নতুন লাইনের মতো বিশেষ অক্ষরগুলি ঘোষণার জন্যও ব্যবহৃত হয়:

$ echo -e "bla\nnewline" # \n means a newline character
bla
newline

আমরা প্রয়োজন -eএখানে বিকল্প echo, কারণ হিসাবে র manpage এটা করা: -e enable interpretation of backslash escapes


আরও স্পষ্টতার জন্য: ওপি-র উদাহরণে সিডি শেষ প্রান্তের (রিটার্ন কী) থেকে পালিয়ে যায়। এর অর্থ এই যে টার্মিনালটি এখনও বাকি কমান্ডের জন্য অপেক্ষা করছে। প্রম্পটটি >দেখায় যে এটি অপেক্ষা করছে। সাধারণ প্রম্পটটি বর্তমান ডিরেক্টরিটি দেখায়, তাই এটি /ব্যবহারের পরে প্রদর্শন করে cd /~আপনার হোম ডিরেক্টরীতে, যার কারণে এটা দেখায় জন্য স্বল্প হাত ~পরিবর্তে /home/user
ধানের ল্যান্ডাউ

1

আপনি যদি একটি ব্যাকস্ল্যাশ প্রবেশ করেন তবে আপনি একাধিক লাইনে আপনার কোমন্ড প্রবেশ করতে পারেন। '>' এর উপসর্গটি এটিই।


1

>সংকেতের অর্থ হচ্ছে যেগুলি বিজ্ঞপ্তি আরো ইনপুট আপনার জন্য অপেক্ষা করছে, কারণ পূর্ববর্তী কমান্ড অসম্পূর্ণ ছিল। আপনি এটিকে যে কোনও কিছু দিয়েই পুনরুত্পাদন করতে পারেন, শুধু নয় cd। শুধু টাইপ করুন whateveryouwant\, এবং আপনি পাবেন >

আপনি যে অংশটি দেখেন ~সেগুলি বর্তমান চলমান ডিরেক্টরিটি নির্দেশ করে। কার্যকরী ডিরেক্টরি পরিবর্তন করতে আপনি কমান্ডটি ব্যবহার করেন cdযার অর্থ ডিরেক্টরি পরিবর্তন করুন (ফোল্ডার)। সুতরাং আপনি যদি cd /এটি করেন, এটি ডিরেক্টরিতে পরিবর্তন করে /। আপনি যদি cd /usr/binএটি করেন তবে তা বদলে যাবে /usr/binইত্যাদি।

lsবর্তমান ডিরেক্টরি / ফোল্ডারে কী আছে তা তালিকাভুক্ত করার জন্য একটি আদেশ। সুতরাং, আপনি যদি করেন cd /(যার অর্থ আপনি ডিরেক্টরিটি পরিবর্তন করেছেন /), lsসেখানে ফাইল এবং ফোল্ডারগুলির তালিকা তৈরি করবে। আপনি যদি করেন cd /etc/এবং তারপরে ls, এটি ফাইল এবং ফোল্ডারগুলিতে থাকা এবং আরও কিছুর তালিকা /etc/করে।


আপনাকে খুব অনেক ধন্যবাদ :-) এই তাত্ক্ষণিক সাহায্যকারী বন্ধুদের জন্য ...
শাইলিগার্
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.