ইউনিক্সে এমপুট ব্যবহার করে অন্য সার্ভারে একাধিক ফোল্ডার এফটিপি করবেন কীভাবে?


18

আমি একটি সার্ভারে লগ ইন (পুট্টি ব্যবহার করে)। সেখান থেকে আমি অন্য সার্ভারে এফটিপি ব্যবহার করে সংযুক্ত করছি। আমি এমপুট ব্যবহার করে প্রথম সার্ভার থেকে দ্বিতীয় সার্ভারে বেশ কয়েকটি ফোল্ডার অনুলিপি করতে চাই।

ভালো লেগেছে:

ftp> mput folder1 folder2 folder3

তবে আমি পেয়েছি "ফোল্ডার 1: একটি সরল ফাইল নয়" "... এবং আরও কিছু। এই ফোল্ডারের প্রত্যেকটিতে সাবফোল্ডার, ফাইল (কিছু বাইনারি, কিছু না) রয়েছে।

স্টাফগুলিকে জিপ না করে এবং স্থানান্তরিত না করে কীভাবে আমি চাই তা পূরণ করতে পারি?

উত্তর:


19

কমান্ড লাইন এফটিপি বেশ আদিম।

আপনি পুনরাবৃত্তভাবে কোনও দূরবর্তী সাইটের দিকে ফাইল / ফোল্ডার প্রেরণ করতে পারবেন না।

আপনি যদি স্থানীয় হিসাবে একই দূরবর্তী দিকের ডিরেক্টরি কাঠামোটি পুনরায় তৈরি করতে চান তবে আপনাকে অবশ্যই mkdirপ্রতিটি পাথের ম্যানুয়ালি প্রয়োজন এবং mput *সেই ডিরেক্টরিতে সমস্ত কিছু দূরবর্তী দিকে প্রেরণ করতে ব্যবহার করতে হবে।

এটিকে সহজ করার জন্য দুটি বিকল্প:

  1. আদিম এফটিপি কমান্ড ব্যবহার বন্ধ করুন (এনসিএফটিপি একটি ভাল বিকল্প)

  2. ফোল্ডারগুলিকে টান দেওয়ার জন্য টার ব্যবহার করুন, ফাইলটি প্রেরণ করুন এবং দূরে সরিয়ে ফেলুন।


1
জন্য +1 tar-> put-> untar
ডেভ

1
-1 কারণ প্রশ্নটি জিজ্ঞাসা করে যে "জিনিসটি জিপ না করে কীভাবে চাই তা আমি কীভাবে সম্পাদন করতে পারি এবং তারপরে স্থানান্তর করতে পারি?", এতে বোঝা যায় যে সেই ব্যক্তির দূরবর্তী মেশিনে শেল অ্যাক্সেস নেই।
স্টেইন শ্যাচট

11

এটি সাধারণ এফটিপি প্রোগ্রামের সাথে সম্ভব নয় কারণ এমপুট পুনরাবৃত্তি ব্যবহার করে না। আপনি এনসিএফটিপি ব্যবহার করতে পারেন এবং তারপরে 'এমপুট-আর ফোল্ডার' কল করতে পারেন।

শুভকামনা, ফ্যাবিয়ান


আমি সম্প্রতি একটি RHEL 5 বাক্সে ঠিক এটি করেছি। ইপেল প্যাকেজে এক্সিকিউটেবলের নাম রাখা হয়েছে এনসিফিটপুট।
দমনকারী

সার্ভারের কনফিগারেশনে কিছু পরিবর্তন করতে পারে না। আমি কেবল একজন ব্যবহারকারী ...

এটি আপনার ক্লায়েন্টের উপর নির্ভর করে। সার্ভারে নেই।
হাফদান

আমি এইভাবে এটি করতে পছন্দ করি ধন্যবাদ.
মোজতাবা রেজাeিয়ান

11

আমি একটি বাশ স্ক্রিপ্ট তৈরি করেছি:

#!/bin/bash
ftp_site=ftp.yoursite.net
username=my_user_name
passwd=my_password
remote=/path/to/remote/folder
folder=$1
cd /path/to/local/folder/$folder
pwd
ftp -in <<EOF
open $ftp_site
user $username $passwd
mkdir $remote/$folder
cd $remote/$folder
mput *
close
bye

এবং এটি দিয়ে বলা

find . -type d -exec ./recursive-ftp.sh {} \;

কাজ মনে হচ্ছে।


0

সুরক্ষিত অনুলিপি স্কিপ-এ একটি-রিরসিভ ফ্ল্যাগ রয়েছে যা আপনি দরকারী মনে করতে পারেন।


প্রশ্নটি সহজ এফটিপি এক্সেস সম্পর্কে .. scp / sftp নয়!
মোজতাবা রেজাeিয়ান

-1

আপনি যে কমান্ডগুলি আপলোড করতে চান সেই ডিরেক্টরিগুলিতে পাওয়ারসেল সিডি খুলুন:

1. gci -r | % {if ($_.PSIsContainer) {$t = $((($_.fullname -split "\\")[$(((pwd) -split "\\").length)..200]) -join "/"); "mkdir ""$t""`r`nmput ""$t/*"" ""$t"""}} | sc .\mput_all
2. notepad .\mput_all

ফলাফলগুলি আপনার এফটিপি উইন্ডোতে আটকান। উপভোগ করুন। বেস ডিরেক্টরি থেকে সমস্ত ফাইল স্থানান্তর করতে এমপুট * যুক্ত করতে ভুলবেন না।


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