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


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.