নেটক্যাটের মাধ্যমে ফাইল পাঠানো হচ্ছে


23

আমি একটি কম্পিউটার থেকে অন্য কম্পিউটারে ফাইল প্রেরণের জন্য এই জাতীয় কিছু ব্যবহার করছি:

ফাইল সরবরাহ করতে (কম্পিউটার এ)

cat something.zip | nc -l -p 1234

ফাইলটি পাওয়ার জন্য (কম্পিউটার বিতে):

netcat server.ip.here. 1234 > something.zip

আমার প্রশ্ন ... আমি কি এর বিপরীত কাজ করতে পারি? ধরা যাক কম্পিউটার বিতে আমার ফাইল আছে এবং আমি এটিকে এটিকে প্রেরণ করতে চাই তবে আমি উপরে যেভাবে লিখেছি তা নয়, তবে এমন একটি কম্পিউটার তৈরি করে যা ফাইল (এ) 'শ্রবণ' সার্ভার হতে হবে এবং যে কম্পিউটারটি 'প্রেরণ' করছে তা সংযুক্ত করে ( খ) সার্ভারে ফাইল পাঠাতে হবে? এটা কি সম্ভব? আমি মনে করি এটি হতে পারে তবে আমি কীভাবে এটি করব তা নিশ্চিত নই।

যদি আমার উপরের ব্যাখ্যাটি ভুল হয়ে যায়: আমি সার্ভারে ফাইলটি পরিবেশন করার পরিবর্তে 'সার্ভার' ফাইলটি কীভাবে প্রেরণ করব এবং তারপরে এটি থেকে নেওয়া (যেমন আমি উপরে করেছি)?


দ্রষ্টব্য: আপনি যদি ব্যবহার করছেন ncকারণ scpখুব ধীর এবং আপনার এনক্রিপশনের প্রয়োজন নেই, আপনি স্যুইচ করতে চাইতে পারেন udpcast: superuser.com/questions/692294/…
অচলিত

উত্তর:


38

আপনার সার্ভারে (এ):

nc -l -p 1234 -q 1> something.zip </ dev / নাল
আপনার "প্রেরক ক্লায়েন্ট" (বি) তে:
বিড়াল some.zip | নেটক্যাট সার্ভার.আইপি.এইর 1234


হ্যাঁ, আমি ভেবেছিলাম যে আমি কোনওভাবে পক্ষগুলি স্যুইচ করতে হবে তবে আমি নিশ্চিত না যে কীভাবে :)। ধন্যবাদ, এটি কাজ করে!
ফিল

এটি একটি দুর্দান্ত নেটকাট ট্রিক।
ডেভপ্যারিলো

2
< /dev/nullঅংশ কেন ?
törzsmókus

7
কারণ নেটক্যাট উভয়ই স্টিডিন পড়ে এবং একসাথে স্টডআউট লেখায়, স্টিডিন থেকে নেটওয়ার্কে পাঠানো যে কোনও কিছু প্রেরণ করে এবং স্টাডআউটে নেটওয়ার্ক থেকে প্রাপ্ত কিছু মুদ্রণ করে। </ Dev / null নিশ্চিত করে যে, প্রাপ্ত ফাইলটি শেষ হয়ে গেলে নেটক্যাট কনসোল থেকে ইনপুট পাওয়ার জন্য অনির্দিষ্টকালের জন্য সেখানে বসে থাকে না (যা এটি কোনওভাবেই পড়া উচিত নয়!) এবং এটি নিশ্চিত করে যে এটি গব্বল না করে doesn't টার্মিনাল থেকে উপলব্ধ যে কোনও ইনপুট যেমন আপনি চালাতে চান পরবর্তী কমান্ডটি টাইপ করে।
মার্টিনউইগই

4
যদি আপনার কাছে থাকে তবে pvআমি "সার্ভার ক্লায়েন্ট" হিসাবে অপারেটিং করার পরামর্শ দেব pv soemthing.zip | ..., যা পাইপের মধ্যে পড়া ফাইলটির অগ্রগতি প্রদর্শন করবে।
থারস্মমনার

6

একটি নোট হিসাবে, তাহলে আপনি ফাইল অনুমতি, মালিকানা এবং টাইমস্ট্যাম্প সংরক্ষণ করতে চাই, আমরা ব্যবহার আলকাতরা দিয়ে netcat ডিরেক্টরি এবং ফাইল স্থানান্তর করতে।

সিস্টেম গ্রহণ করার সময়:

nc -l -p 12345 -q 1 | tar xz -C /path/to/root/of/tree

সিস্টেম প্রেরণ থেকে:

tar czf - ./directory_tree_to_xfer | nc <host name or IP address of receiving system> 12345 

আশা করি এইটি কাজ করবে.


1
উত্তরের উত্তম সংযোজন, তবে দয়া করে এটি একটি মন্তব্য হিসাবে রাখুন, পৃথক উত্তর হিসাবে নয়।
আগস্ট

2
এই সাব-বোর্ডে রেপ পয়েন্টের অভাবের কারণে উপরে কোনও মন্তব্য যুক্ত করা যায়নি, সুতরাং আমাকে উত্তর হিসাবে এটি দিতে হয়েছিল, যদিও আপাতদৃষ্টিতে, আপনাকে নিজের উত্তরগুলিতে মন্তব্য করার অনুমতি দেওয়া হয়েছে।
বি.কাটজ

3

কম্পিউটার এ: nc -l -p 1234 > filename.txt

কম্পিউটার বি: nc server.com 1234 < filename.txt

খুব কাজ করা উচিত;)


0

কম্পিউটারে নেটকাটের আর একটি উদাহরণ শুরু করুন বি। কম্পিউটারে যা করেছেন কেবল তা করুন, তবে এটি বি থেকে পরিবেশন করুন নতুন সার্ভারকে একটি নতুন বন্দর দিন।


আমি একই কাজ করতে চাই না, আমি আদেশগুলি অন্য কিছুতে পরিবর্তন করতে চাই (এটি সম্ভব কিনা আমি নিশ্চিত নই) ... আমার প্রশ্নের সাহসী পাঠ্যটি দেখুন look আমার অর্থ হ'ল আমি বি থেকে পরিবেশন করতে চাই না আমি চাই ইনপুটটির জন্য সার্ভার শোনার ... এবং তারপরে আমি অ-শ্রবণকারী বি থেকে ফাইল কন্টেন্ট প্রেরণ করতে চাই A.
ফিল

নেটকাট কীভাবে কাজ করে তা তা নয়।
ডেভপ্যারিলো

1
যেমন আপনি গৃহীত উত্তর থেকে দেখতে পারেন - হ্যাঁ, নেটকাট এটিও কীভাবে কাজ করতে পারে।
ফিল

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