একটি সাধারণ টার কমান্ড
tar cvf foo.tar ./foo >foo.out 2>foo.err
তিনটি আউটপুট আইও স্ট্রিম রয়েছে
- foo.tar থেকে সংরক্ষণাগার ডেটা
- STDOUT এ ফাইলের নামের তালিকা (foo.out এ পুনঃনির্দেশিত)
- STDERR এ ত্রুটি বার্তা (foo.err এ পুনঃনির্দেশিত)
তারপরে আমি ফাইল নামগুলির তালিকা না পড়েই ত্রুটি বার্তাগুলির জন্য foo.err পরিদর্শন করতে পারি।
আমি যদি সংরক্ষণাগার ডেটা (নেটট্যাট বা একটি বিশেষ সংক্ষেপণ প্রোগ্রামের মাধ্যমে পাইপ) দিয়ে কিছু করতে চাই তবে আমি টারের -f -
বিকল্পটি এইভাবে ব্যবহার করতে পারি
tar cvf - ./foo 2>foo.err | squish > foo.tar.S
তবে এখন আমার ফাইলের নামের তালিকাটি আমার ত্রুটি বার্তাগুলির সাথে মিশ্রিত হয়েছে কারণ টারের -v
আউটপুট স্পষ্টতই STDOUT এ যেতে পারে না (যেখানে আর্কাইভের ডেটা প্রবাহিত হয়) তাই তার পরিবর্তে তার চালক STTERR তে চালাকভাবে লেখেন।
কর্ন শেল ব্যবহার করে, একটি কমান্ড তৈরির উপায় রয়েছে যা সংরক্ষণাগার প্রবাহকে অন্য কমান্ডে পাইপ দেয় তবে এখনও -v
কোনও ত্রুটি বার্তাগুলি থেকে আউটপুট আলাদাভাবে ক্যাপচার করে ।
tee
? এটি এটির জন্য বেশ কার্যকর বৈধ ব্যবহারের মতো বলে মনে হচ্ছে।