যেহেতু stat
একটি "ডিভাইস" ক্ষেত্রটি ফেরত আসে, তাই আমি জানতে আগ্রহী ছিলাম যে অন্তর্নিহিত stat()
লাইব্রেরি কলটি কোনও পসিক্স অনুগতভাবে প্রোগ্রামের মাধ্যমে এই তথ্যটি পেতে পারে।
সি কোডের এই স্নিপেট:
#include <stdio.h>
#include <sys/stat.h>
#include <sys/types.h>
int main (int argc, const char *argv[]) {
struct stat info;
stat(argv[1], &info);
printf("min: %d maj: %d\n",
minor(info.st_dev),
major(info.st_dev)
);
return 0;
}
কমান্ড লাইনে তালিকাভুক্ত ফাইল ( argv[1]
) লিঙ্কযুক্ত ডিভাইসটির জন্য প্রধান এবং গৌণ ডিভাইস আইডি দেবে । দুর্ভাগ্যক্রমে, major()
এবং minor()
পসিক্স নয়, যদিও ম্যান পেজ দাবি করেছে যে তারা জিএনইউ / লিনাক্স ছাড়াও "অন্যান্য অনেক সিস্টেমে উপস্থিত" রয়েছে।
তারপরে আপনি ডিভাইস প্রধান / গৌণ সংখ্যা এবং ডিভাইস নোডের মধ্য থেকে উদাহরণস্বরূপ /proc/diskstats
, এবং মানচিত্রের মধ্যে চিঠি পেতে পারেন, যার থেকে পয়েন্টগুলি মাউন্ট করতে হবে /proc/mounts
, ওরফে। /etc/mtab
।
সুতরাং এটি করার জন্য একটি কমান্ড-লাইন ইউটিলিটি বেশ সহজ হবে।
tr
ব্যবহার করে চূড়ান্ত কলটি সরিয়ে ফেলতে পারেনawk -F'% '...