সমস্ত সংযুক্তিগুলির সাথে কীভাবে একটি org- মোড ফাইলটি সরানো যায়?


21

আমার কয়েকটি ফাইল রয়েছে, উদাহরণস্বরূপ file-1.org, file-2.orgএকই ডিরেক্টরিতে data/সংযুক্তিগুলির জন্য ডিরেক্টরিটি ভাগ করে নেওয়া ।

আমি অন্য কোনও জায়গায় চলে যেতে চাই file-1.org, data/সেই অবস্থানে একটি নতুন ডিরেক্টরি তৈরি file-1.orgকরতে এবং নতুন ডিরেক্টরিতে অন্তর্ভুক্ত সমস্ত সংযুক্তি সরাতে চাই । এটি করার কোনও স্বয়ংক্রিয় উপায় নেই?


1
এটি দরকারী মনে হচ্ছে, তবে এটির উপস্থিতি নেই। সহজ বিকল্পটি হ'ল ফাইলগুলি সরাসরি স্থানান্তর করা এবং তারপরে org-attach-syncসেগুলি নতুন আইটেমের সাথে সিঙ্ক করতে ব্যবহার করা।
গ্লুকাস

1
হতে পারে, লিঙ্কযুক্ত ফাইলগুলি সরানো খুব ভাল ধারণা নয়। এটি হতে পারে যে ডেটা ফোল্ডারের ফাইলগুলি অন্য org-ফাইলগুলিতে রেফারেন্স করা হয় যেখানে এই ফাইলগুলি অদৃশ্য হয়ে গেলে লিঙ্কগুলি বিচ্ছিন্ন হয়। ওহ না, এমন কোনও অর্গ-ফাইল নেই ... যতক্ষণ না আপনি বিশেষ ক্ষেত্রে ভাঙা লিঙ্কগুলি সম্পর্কে অবগত না হয়ে যান; আপনি আগে কখনও ভাবেননি ;-)। হতে পারে, অনুলিপি করা আরও ভাল বিকল্প। অথবা একজনকে অন্তত সর্বাধিক সুস্পষ্ট মামলার সন্ধান করা উচিত (উদাহরণস্বরূপ, একই ফোল্ডারে লিঙ্কযুক্ত org- ফাইলগুলি)।
টোবিয়াস

1
Org ফাইলগুলি কি গিটের মতো কোনও সংস্করণ নিয়ন্ত্রণ সিস্টেম দ্বারা পরিচালিত হয়? আমি যখন গিটে কোনও org ফাইলে সংযুক্তি যুক্ত করি, সংযুক্তিগুলি স্বয়ংক্রিয়ভাবে সংগ্রহস্থলের প্রতি প্রতিশ্রুতিবদ্ধ হয়।
মেলিওরাটাস

org-lint ভাঙা লিঙ্কগুলি খুঁজে পেতে সহায়তা করতে পারে
আলভারা

উত্তর:


1

এই কমান্ডটি আপনি যা চান তা করতে পারে:

find -E data -type f -iregex ".*($(cat file-1.org | grep -i ':id:' | perl -pe 's/^\s*:id:\s*(\w{2})([\w-]+)$/$1\\\/$2/i' | paste -s -d'|' -)).*" -exec rsync -R '{}' ~/temp/my-new-directory \;

আপনি file-1.orgযে সংযুক্তাগুলি সরাতে চান সেই org ফাইল এবং ~/temp/my-new-directoryআপনার নতুন ডিরেক্টরিটির অবস্থানের সাথে প্রতিস্থাপন করুন । dataএগুলির মধ্যে সংযুক্তি ফাইলগুলির সাথে একটি ডিরেক্টরি তৈরি করা হবে (আপনি যদি অনুলিপি পরিবর্তে সরাতে চান --remove-source-filesতবে rsyncকমান্ডে পাস করুন )।

এটি ম্যাকোজে পরীক্ষা করা হয়েছিল। আপনাকে -Eঅন্য প্ল্যাটফর্মের পতাকাটি বাদ দিতে হতে পারে ।

উল্লেখ্য: দয়া করে এই একটি একবার করেন আপনার ফাইল কপি । আমি ইম্যাক্সের বিশেষজ্ঞ নই, org- মোড সংযুক্তি কখনও ব্যবহার করি নি এবং এই জাতীয় হ্যাকি ফাইল ম্যানিপুলেশন ব্যবহার করে আমি অভিজ্ঞ নই। এটি আপনার org- মোড ফোল্ডারটিকে বিস্মৃতিতে ফুঁকতে পারে তাই প্রথমে এটি ব্যাক আপ করুন।


0

মার্সেল সামিনের উত্তরের ভিত্তিতে, নিম্নলিখিত লিপিটি আমার জন্য আর্চলিনাক্সের অধীনে কাজ করেছিল:

find data -regextype awk -type f -iregex ".*($(cat file-1.org | grep -i '^:id:' | perl -pe 's/^\s*:id:\s*(\w{2})([\w-]+)$/$1\/$2/i' | paste -s -d'|' -)).*"  -exec rsync -R '{}' ~/temp/my-new-directory \;

অনুলিপি করা ফাইলগুলির একটি তালিকা পেতে নিম্নলিখিত হ্রাস স্ক্রিপ্ট ব্যবহার করুন:

find data -regextype awk -type f -iregex ".*($(cat file-1.org | grep -i '^:id:' | perl -pe 's/^\s*:id:\s*(\w{2})([\w-]+)$/$1\/$2/i' | paste -s -d'|' -)).*"

^গ্রেপ কমান্ড ব্যতীত আমি ": id:" ধারণকারী ইমেল লিঙ্কগুলি থেকে মিথ্যা ইতিবাচক বিষয় পেয়েছি।

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