আরএসআইএনসি - ফাইলস-থেকে অপশনটি ব্যবহার করছে না?


13

আমি চালানোর জন্য চেষ্টা করছি rsync -a --files-from=~/.rsync_file_list ~/destinationএবং এটা আমার বলে: rsync error: syntax or usage error (code 1) at options.c(1652) [client=3.0.7]। আমি কী ভুল করছি সে সম্পর্কে কেউ আমাকে আলোকিত করতে পারেন?

ফাইলটিতে ~/.rsync_file_listকেবল ~/নতুন লাইনের দ্বারা পৃথক পৃথক ফাইলের নামের একটি তালিকা রয়েছে (যদিও আমি একই ফলাফলের সাথে একই লাইনে সেগুলিও তালিকাভুক্ত করার চেষ্টা করেছি)।

আমি যদি rsync -a ~/file ~/file2 ~/file3 ~/destinationএটি চালান ঠিক কাজ করে। তাহলে আমি --files-fromবিকল্পটি কী অনুভব করছি ?


চেষ্টা করুনsed "s#~/#/home/wolf/#g" -ie ~/.rsync_file_list
অ্যান্ডি

@ অ্যান্ডি: হায়, একই ফলাফল result
ওল্ফ

উত্তর:


20

ঠিক আছে, আমি সমস্যাটি খুঁজে পেয়েছি।

  1. ফাইলের নামযুক্ত ফাইলটিতে কেবল ফাইলের নাম থাকতে হবে; কোনও পথ নেই, আপেক্ষিক বা অন্যথায়;
  2. নির্দিষ্ট করার পরে --files-from=FILE, আরএসআইএনসি-র একটি সূত্র ডিরেক্টরি প্রয়োজন যা তালিকাভুক্ত ফাইলগুলি সন্ধান করতে পারে।

সুতরাং কমান্ড হওয়া উচিত rsync -a --files-from=~/.rsync_file_list $HOME/ /destination

.rsync_file_list পড়া উচিত:

file 1
file 2
file 3

3
সংশোধন: প্রদত্ত ফাইলে ফাইলের নাম উত্স ডিরেক্টরি অনুসারে এআরই, তবে এটির উপরে (না ../) হতে পারে না cannot শীর্ষস্থানীয় স্ল্যাশগুলি অগ্রাহ্য করা হবে, সুতরাং নিখুঁত পাথ কাজ করে না।
ওল্ফ

আমি বিশ্বাস করি আপনি নিজের উত্তর সম্পাদনা করতে পারেন এবং উত্তরের পরে নিজেই খুঁজে পাওয়া এটি খুব সুন্দর সংযোজন এবং প্রাসঙ্গিক তথ্য যোগ করতে পারেন।
ভিনসিয়াস এম

0

"~" ব্যবহার করা কোনও "ফাইল-থেকে" ফাইলের মধ্যে কাজ না করতে পারে যদি না আরএসসিএন "~" প্রতীকটি সনাক্ত এবং অনুবাদ করতে যথেষ্ট স্মার্ট থাকে।

যখন আপনি আপনার শেলের কমান্ড লাইনে একটি কমান্ডের অংশ হিসাবে "~" নির্দিষ্ট করেন, এটি নিজেই শেল যা প্রোগ্রামের সাথে যুক্তি দেওয়ার আগে আপনার হোম ডিরেক্টরিতে "" "রূপান্তর করে। সুতরাং আপনি টাইপ করা সত্ত্বেও rsync -a ~/file, যা rsync"দেখায়" আসলে তা সমাধানের পথ, বা rsync -a /home/foo/file

দেখুন ব্যাশ টিল্ডা সম্প্রসারণ আরও তথ্যের জন্য।

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