নেটক্যাট ব্যবহার করে সার্ভারে পাঠ্য ফাইল সামগ্রী পাঠানো হচ্ছে?


13

5144 পোর্টে একটি ডিমন প্রক্রিয়া শোনা যাচ্ছে, যা আমি সংশোধন করতে পারছি না।

আমি সার্ভারে একটি টেক্সট ফাইলের বিষয়বস্তু প্রেরণের জন্য নেটক্যাট ব্যবহার করতে চাই, তবে এটি + netcatটিপ না দেওয়া পর্যন্ত টার্মিনালটিকে ঝুলিয়ে রাখার কারণ হয় :CtrlC

cat file.txt | nc -u 127.0.0.1 5144

আমি এটিকে কাজ করতে সক্ষম হওয়ার একমাত্র উপায় হ'ল nc -u 127.0.0.1 5144ম্যানুয়ালি ফাইলের সামগ্রীগুলি চালনা এবং অনুলিপি করা।

কোন ধারনা?


আরও মনে রাখবেন:

  1. cat file.txt | ...বাড়ে bash: ...: command not foundএবং আমি টার্মিনাল ব্যবহার চালিয়ে যেতে পারি
  2. | ব্যবহার nc -u 127.0.0.1 5144 < file.txtকরার মতো একই আচরণের দিকে নিয়ে যায় উপরে

বললে কি হয় cat file.txt | …? কীভাবে nc -u 127.0.0.1 5144 < file.txt?
স্কট

আপনার কি ইউ ব্যবহার করা দরকার? এছাড়াও, আপনি কি অন্য পক্ষের জন্য চেষ্টা করেছিলেন, এনসি-এল-পি? এবং আপনি এনসি -পি চেষ্টা করেছেন? (এমন একটি এনসি রয়েছে যা -l -p ব্যবহার করে এবং আমি মনে করি যে -p ছাড়া -p ব্যবহার করে)। আপনি কেবল একটি পক্ষ দেখিয়েছেন, ক্লায়েন্ট / আরম্ভের দিক। আপনি সার্ভারের পক্ষে কী করছেন? একটি পরীক্ষা হিসাবে চেষ্টা করুন, এনসি শুনতে 1234 পোর্টে শুনতে এবং দেখুন কিনা বিড়াল ... | এনসি ... এটি কাজ করে। আমি এটি আগে কখনও দেখিনি, তাই এটি সম্ভবত একটি দুর্বল, তবে সম্ভবত এটি এই নির্দিষ্ট ডেমনটির কাছে মজাদার কিছু যা কৃত্রিম জিনিসগুলি গ্রহণ করে না।
বারলপ

আমি ডিমন পরিবর্তন করতে পারি না can't @ স্কট: bash: ...: command not foundএবং "<file.txt" ব্যবহার করা | এর মতোই কাজ করে অপারেটর (নেটকাট সবে হ্যাং)
আমিল

আপনি কি আরও সুনির্দিষ্ট হতে পারেন? এটা " bash: ...: command not found" বলে ? নাকি এটি " bash: cat: command not found" বা " bash: nc: command not found" বলে? এবং তারপরে এটি কি শেল প্রম্পটে প্রস্থান করে, বা এটি স্তব্ধ হয়? (আমি আপনাকে বিশদটি এই সংযোজনটি যুক্ত করতে উত্সাহিত করতে উত্সাহিত করি, সুতরাং অস্ট্রেলিয়ায় যারা এখনই জেগে আছেন তাদের আপনার লক্ষণগুলি কী তা জানতে এই সমস্ত মন্তব্যগুলি পড়তে হবে না))
স্কট

@ স্কট: ধন্যবাদ, আমি আপনার প্রশ্নের উত্তরগুলি মূল প্রশ্নের সাথে সংহত করেছি। কোন ধারনা?
আমিল

উত্তর:


7

আপনি যদি নেটকাটের জিএনইউ সংস্করণ ব্যবহার করছেন তবে আপনি ইওএফ-এ সংযোগ বন্ধ করতে -c পতাকা ব্যবহার করতে পারেন।

-সি, - স্টিডিন থেকে ইওএফ-তে ঘনিষ্ঠ সংযোগ বন্ধ করুন

আপনি যদি এই সরঞ্জামটির মূল সংস্করণ ব্যবহার করেন তবে আপনি-কি পতাকা ব্যবহার করতে পারেন।

-কিউ সেকেন্ডগুলি স্টিডিতে ইওএফ এবং সেকেন্ডের বিলম্বের পরে ছেড়ে যায়

মূল সংস্করণটির একটি উদাহরণ:

cat file.txt | nc -u -q 0 127.0.0.1 5144

আমি আপনার মূল কমান্ডে "-q 0" যুক্ত করেছি। ফাইলটি প্রেরণের পরে এটি সংযোগটি বন্ধ করে দেয়।


পার্থক্য করতে: মূল সংস্করণটি -l -p <port>শোনার জন্য নির্দিষ্ট করতে হবে । জিএনইউ সংস্করণটি কেবল নেয় -l <port>
tueftl

1

ধরে নিই যে ইওএফ সংযোগ প্রেরণের পরেও অলস থাকবে, আপনি -w timeoutবিকল্পটি ব্যবহার করতে পারেন , যা timeoutশূন্যের সমান হওয়ার জন্য কাজ করে (নির্বোধ -qবিকল্পের বিপরীতে ...)

cat file.text | nc -u localhost 4300 -w0

0

আপনি যদি ফ্রিবিএসডি থেকে উইন্ডোজ এ স্থানান্তর করছেন:

FreeBSD 'র: cat file.txt | nc -N 10.0.0.5 5144

-N EOF এর পরে নেটওয়ার্ক সকেট বন্ধ করবে

উইন্ডোজ: nc -l -p 5144 > output.txt

-lবন্ধ কানেকশন শুনা বন্ধ করবে (বিপরীতে -L)

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