ফাইলের অংশে সিমলিংক?


14

সিমলিংকের মতো অন্য ফাইল থেকে বাইটের কেবল একটি উপ-অনুক্রম, তবে ফাইলটির কেবলমাত্র অংশটি উল্লেখ করা সম্ভব?


4
আপনি যদি যা করার চেষ্টা করছেন তার উদ্দেশ্যটি যদি আপনি ব্যাখ্যা করেন তবে আমরা একটি সমাধানের পরামর্শ দিতে পারি।
JRT

উত্তর:


12

না। আপনাকে অবশ্যই পুরো ফাইলটি উল্লেখ করতে হবে, বা আপনার আগ্রহী ফাইলটির অংশ অবশ্যই অনুলিপি করতে হবে।


12

হ্যাঁ, কিছুটা সীমাবদ্ধতার সাথে লিনাক্সে এটি কিছুটা সম্ভব (কিছুটা হলেও) সম্ভব।

পদ্ধতিটি হ'ল একটি পঠন-লিখন লুপ ডিভাইস তৈরি করা যা ফাইলের একটি উপসেটে মানচিত্র করে।

উদাহরণ:

#!/bin/bash
for ((i=0;i<10000;i++)); do
    printf "%7d\n" $i
done >/var/tmp/file
losetup -v -f -o 512 --sizelimit 512 /var/tmp/file
losetup -a
head -2 /var/tmp/file
echo ...
tail -2 /var/tmp/file
echo ===
head -2 /dev/loop0
echo ...
tail -2 /dev/loop0 
printf "I was here" > /dev/loop0
grep here /var/tmp/file
losetup -d /dev/loop0

আউটপুট:

loop device: /dev/loop0
/dev/loop0: [0808]:136392 (/var/tmp/file), offset 512, size 512
      0
      1
...
   9998
   9999
===
     64
     65
...
    126
    127
I was here   65

আমি বিশ্বাস করি অফসেট এবং আকার উভয়ই একটি ব্লক আকারের (512 বাইট) একাধিক হতে হবে।

লুপ ডিভাইসটি তৈরি এবং অ্যাক্সেস করার জন্য আপনাকে সম্ভবত রুট হওয়া দরকার।

আপনার যদি একটি সিমিলিংকের প্রয়োজন হয় তবে আপনি একটি তৈরি করতে পারেন যা লুপ ডিভাইসে নির্দেশ করে।


2

ফাইল সিস্টেমে এটি সম্ভব (একটি ফাইলের একটি অংশের দিকে ইঙ্গিত করে একটি সাধারণ সিমলিংক তৈরি করা) যা "ফাইল হিসাবে ডিরেক্টরি হিসাবে" ধারণাকে বাস্তবায়িত করে , যা হাজির হয়েছিল - অন্যান্য লেখক ছাড়াও - রিসফার্সের পরিকল্পনায় , তবে রিসফার্সের প্রয়োগ বাস্তবায়িত সমস্যাগুলির জন্য পছন্দ করা হয়নি

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