[Powered by Google Translate] Tommy: এই ভিডিওতে, আমরা সম্পর্কে জানতে পারবেন পুনঃচালিত এবং পাইপ. এ পর্যন্ত, আমরা ফাংশন ব্যবহার করছি না printf যাও টার্মিনালে আউটপুট তথ্য এবং GetString ভালো ফাংশন ব্যবহারকারী যাও আমাদের ইনপুট প্রদান করার অনুমতি দেয় প্রোগ্রাম কীবোর্ড ব্যবহার করে. চলুন শুরু করা যাক দ্রুত একটি প্রোগ্রাম যা একটি লাইন পায় কটাক্ষপাত করা ব্যবহারকারী থেকে ইনপুট এবং আউটপুট তারপর এটা. লাইন 7, আমরা একটি স্ট্রিং জন্য হলে ব্যবহারকারীকে করছেন, এবং তারপর লাইন 8, আমরা এটা মুদ্রণ করেছেন ফেরত. চলুন এবং কম্পাইল আমাদের প্রোগ্রাম চালানো. গ্রেট. আমরা স্ট্রিং উপলব্ধ ফিরে প্রতিধ্বনিত হয় আমাদের এ টার্মিনাল. এই কি কারণ printf ফাংশানের একটি লেখেন স্ট্রীম নামক মান আউট, বা গুলি-t-d-আউট. যখন stdout-এ কিছু লেখা হয়, এটি ডিফল্ট এর দ্বারা টার্মিনাল দ্বারা প্রদর্শিত হয়. সুতরাং যে সব বেশ, ভালো কথা, কিন্তু আছে কি যদি, পরিবর্তে সহজভাবে পংক্তি প্রদর্শন করা, আমরা একটি ফাইলে সংরক্ষণ চেয়েছিলেন? উদাহরণস্বরূপ, আমরা মনে রাখতে চাইবেন ঠিক কি আমাদের প্রোগ্রাম হয়েছিলো যখন আমরা দিয়েছেন এটি একটি নির্দিষ্ট ইনপুট পরে. একটা পদক্ষেপ আমাদের সি প্রোগ্রাম এই, না ব্যবহার করে কিছু লেখার ফাইলের জন্য বিশেষ ফাংশন যে আমরা করব অন্য ভিডিওতে দেখুন. যদিও আরও সহজ,, একরকম হবে একটি ফাইল stdout-এ পুনর্নির্দেশ. এই ভাবে, যখন printf stdout-এ লিখেছেন, বিষয়বস্তু ইচ্ছাশক্তি একটি ফাইল যাও বদলে করা টার্মিনাল দ্বারা প্রদর্শিত হয়. আমরা একটি বৃহত্তর-তুলনায় সাইন যোগ করে ঠিক তা করতে পারে, অনুসরণ কমান্ড ব্যবহার করে একটি ফাইল নামের দ্বারা, আমরা আমাদের প্রোগ্রাম চালানো ব্যবহার. সুতরাং, শুধু বদলে নির্বাহ. / পুনর্নির্দেশ, আমরা করতে পারেন . চালানো / পুনর্নির্দেশ, অনুসরণ সাইন তুলনায় অধিক দ্বারা, অনুসরণ দ্বারা file.txt ভালো ফাইলের নাম,. এর কি চলুন দেখা যাক. ঠিক আছে. এই সময়, টার্মিনালে কিছুই দেখানো হয় বিজ্ঞপ্তি, কিন্তু আমরা আমাদের বিষয়বস্তু পরিবর্তন করা আছে সি প্রোগ্রাম এ সব. চলুন এখন ls সঙ্গে এই ডিরেক্টরির বিষয়বস্তু পরীক্ষা করুন. ঠিক আছে. আমরা এখন আমাদের একটি নতুন ডিরেক্টরির মধ্যে ফাইল file.txt বলা আছে, যা ফাইলের নামের আমরা সরবরাহ যখন আমরা আমাদের দৌড়ে প্রোগ্রাম পুনঃনির্দেশ. চলুন file.txt খুলুন. এবং এখানে, আমরা যে stdout-এ পুনর্নির্দেশ আউট ছিল দেখতে পারেন লিখিত ফাইল নামক file.txt যাও. সুতরাং এর আবার আগের কমান্ডটি প্রয়োগ করুন যাক, কিন্তু একটি সরবরাহ বিভিন্ন ইনপুট এই সময়. ঠিক আছে. চলুন এখন file.txt কটাক্ষপাত করা. আমরা এখানে যে ফাইলটি মুছে ফেলা হয়েছে দেখতে পারেন, তাই আমাদের মূল ইনপুট আর হয় না. যদি আমরা পরিবর্তে এই ফাইলটি সংযুক্ত করতে চান, নতুন নির্বাণ ফাইলের বিষয়বস্তু নীচে বিদ্যমান ইনপুট, আমরা করতে পারেন দুই বৃহত্তর-তুলনায় চিহ্ন ব্যবহার পরিবর্তে শুধুমাত্র একটি. চলুন যে চেষ্টা. এখন, যদি আমরা আবার খুলুন file.txt, আমরা আমাদের উভয় দেখতে পারেন ইনপুট লাইনে. কিছু ক্ষেত্রে, আমরা কোনো বাতিল করতে পারেন আমাদের প্রোগ্রামের আউটপুট. পরিবর্তে শুধুমাত্র একটি ফাইল আউটপুট লেখার এবং তারপর মুছে ফেলা হচ্ছে ফাইল যখন আমরা সঙ্গে সম্পন্ন হলে, আমরা একটি বিশেষ লিখতে পারেন ফাইল নামক এবং / dev / নাল. কখন / কোন কিছু লেখা হয় dev/null-- বা সংক্ষেপে শুধু devnull - এটি স্বয়ংক্রিয়ভাবে বাতিল করা হয়. Devnull তাই আপনার জন্য তথ্য অন্ধকূপ হিসাবে মনে করি. তাই এখন আমরা কিভাবে চেয়ে সাইন পুনর্নির্দেশ দেখা যাবে করেছি stdout-এ, যাক কিভাবে আমরা রিডিরেক্ট মান দেখতে পারেন - বা গুলি-t-d-মধ্যে - stdout-এর অ্যানালগ. যদিও ফাংশন চান printf প্রবাহ নামক যাও লিখুন stdout-এ, GetString এবং অনুরূপ কর্ম প্রবাহ থেকে পড়া বলা stdin, ডিফল্টরূপে যা,,, হল প্রবাহ অক্ষর কীবোর্ড এ টাইপ. আমরা stdin সাইন কম ব্যবহার পুনর্নির্দেশ করতে পারেন, অনুসরণ দ্বারা একটি ফাইলের নাম. এখন, বরং এ জন্য ইনপুট হলে ব্যবহারকারীকে টার্মিনাল, একটি প্রোগ্রামের ফাইল খোলার জন্য আমরা নির্দিষ্ট করা এবং ব্যবহার করা ইনপুট হিসাবে তার লাইন. এর কি চলুন দেখা যাক. গ্রেট. file.txt প্রথম লাইন টার্মিনালে করেনি ছাপা হয়েছে কারণ আমরা GetString কলিং একবার করছি. যদি আমরা GetString আমাদের প্রোগ্রামে অন্য কল ছিল, file.txt পরবর্তী লাইন হিসাবে ব্যবহৃত হয়েছে করবে কল ইনপুট. আবার, আমরা এ সব পরিবর্তন আমাদের সি প্রোগ্রাম করেন নি. আমরা কেবলমাত্র পরিবর্তন করছি আমরা কিভাবে এটিকে চালাতে. এবং এছাড়াও, মনে রাখবেন আমরা এই সময় আছে stdout-এ পুনঃনির্দেশিত না, তাই প্রোগ্রামের আউটপুট এখনও ছিল টার্মিনালে প্রদর্শিত হবে. আমরা অবশ্যই, উভয় stdin পুনর্নির্দেশ করতে পারেন ভালো এবং stdout-এ. এখন, file2.txt রয়েছে file.txt প্রথম লাইন. এইসব অপারেটর ব্যবহার করে, তাই, আমরা পড়তে পারব টেক্সট ফাইল থেকে লিখুন. এখন, এর দেখতে দিন কিভাবে আমরা একটি প্রোগ্রামের আউটপুট হিসাবে ব্যবহার করতে পারেন অন্য প্রোগ্রামের ইনপুট. তাই এখানে আরেকটি সহজ সি প্রোগ্রাম আমি এখানে hello.c বলা হয়. হিসাবে আপনি দেখতে পারেন, কেবল এই আউটপুট "হাই ! ব্যবহারকারী যাও আছে ". যদি আমি ইনপুট হিসাবে হ্যালো আউটপুট ব্যবহার রিডিরেক্ট করতে চান - অন্য প্রোগ্রাম - আমি প্রথম নামক কোনো ফাইল হ্যালো এর stdout-এ পুনর্নির্দেশ পারে input.txt তারপর, যে একই মধ্যে পুনর্নির্দেশ stdin পুনঃনির্দেশ ফাইল - input.txt. সুতরাং আমি. / হ্যালো> input.txt করতে পারেন. এই চালানো Enter টিপুন. অনুসরণ করছে. / পুনর্নির্দেশ < input.txt, এবং যে চালানো হয়. সুতরাং আমরা এই একটি সেমিকোলন সঙ্গে একটি বিট, যার সাহায্যে খাটো করতে পারেন আমাদের একই লাইনে দুই অথবা অধিক কমান্ড সঞ্চালন করুন. সুতরাং আমি,. বলতে পারেন / হ্যালো> input.txt, সেমিকোলন, . / Final.txt. সুতরাং, যদি আমরা খোলা final.txt আপ, আমরা কি ঠিক আছে আমরা খুঁজছি: বর্ণানুসারে অনন্য নামের তালিকা, সংরক্ষিত একটি টেক্সট ফাইল. যাইহোক, আমরা বলেন সাজান <থাকতে পারে students.txt | uniq> final.txt না ঠিক একই জিনিস, অপারেটরদের আমরা দেখা করেছি প্রতিটি ব্যবহার এই ভিডিও. আমার নাম টমি, এবং এই CS50.