আমি জিইআইআই ছাড়াই কীভাবে থুনারে প্রতীক স্থাপন করব?


9

আমি একটি স্ক্রিপ্ট ব্যবহার করে থুনারের একটি ফাইলে প্রতীক যুক্ত করতে চাই, তবে আমি এটিতে কোনও নথিপত্র পাই না।

এটা করা কি সম্ভব? এবং যদি তা হয়, কিভাবে?

একই প্রশ্ন জিজ্ঞেস করা হয়েছিল এখানে , কিন্তু তারা একটি উল্লেখ ~/.cache/Thunar/metafile.tdbফাইল যা আমার সিস্টেমে কোন অস্তিত্ব নেই। আমি মনে করি যে প্রশ্ন এবং উত্তর পুরানো।


আপনি কি নিশ্চিত যে এর অস্তিত্ব নেই? ~/.cacheআপনি জানেন এমন একটি লুকানো ফাইল ...
শেঠ

~/.cache/Thunar/এমনকি অস্তিত্ব নেই। থুনার কোনও ফাইলের সাথে একটি চিহ্ন যোগ করার পরেও নয়। আমার থুনার সংস্করণ 1.6.3 ইনস্টল করা আছে।
রিমকো হাসিং

উত্তর:


13

থুনার, সংস্করণ 1.6 সাল থেকে, মেটাটাটা সঞ্চয় করার জন্য gvfs-metadata ডেমন ব্যবহার শুরু করেছে। মেটাডেটা সঞ্চিত আছে ~/.local/share/gvfs-metadata, তবে আপনি ফাইলগুলি থেকে এটি পড়তে পারবেন না (এটি আমার মনে হয় কিছু বাইনারি ফর্ম্যাটে সঞ্চিত )। মেটাডেটা পড়ার জন্য আপনি gvfs-infoকমান্ডটি এভাবে ব্যবহার করুন :

gvfs-info -a metadata:: /some/location  

যা এর মেটাডেটা প্রিন্ট করবে /some/location

আপনি যদি মেটাডেটা পরিবর্তন করতে চান তবে আপনি gvfs-set-attributeএই আদেশটি ব্যবহার করতে পারেন :

gvfs-set-attribute /some/location -t stringv metadata::mdtype value  

/some/locationফাইল বা ফোল্ডারের অবস্থান যা আপনি মেটাডেটা সম্পাদনা করতে চান, -t stringvকমান্ডকে স্ট্রিং ইনপুট আশা করতে বলে, আপনি যে মেটাটাটা mdtypeপরিবর্তন করতে চান তা নির্ধারণ করে (যেমন emblems) এবং মেটাডেটা হিসাবে new valueসেট valueকরে mdtype। উদাহরণ স্বরূপ:

gvfs-set-attribute Downloads -t stringv metadata::emblems emblem-default  

Downloadsফোল্ডারটি defaultপ্রতীক দেয় ।

noneপ্রতীকগুলি সরাতে মানটি সেট করুন । পরিবর্তনগুলি দেখতে আপনাকে ফাইল ম্যানেজারটি পুনরায় চালু করতে হবে।


আমি একটি ছোট স্ক্রিপ্ট লিখেছি যা আপনাকে একবারে একাধিক ফোল্ডার / ফাইলের প্রতীক পরিবর্তন করতে দেয়:

run() {    
cd # make sure we're in the home directory
echo 'What emblem do you want to apply?'
read emblem

if ! [ -z $emblem ]; then
    for i in $@
    do
        echo 'Changing stuff...'
        $(gvfs-set-attribute $i -t stringv metadata::emblems $emblem)
    done
    echo 'Done!'
else
    echo 'Emblem must be specified! Exiting...'
    exit  
fi
}

init() {

if [[ -z $@  ]]; then
    echo "No arguments provided"
else   
    run $@
fi
}

init $@  

সূত্র:


@ রেমকোহাজিং দয়া করে আমার সম্পাদিত উত্তরটি পরীক্ষা করুন, আমি একটি ত্রুটি করেছি এবং এখন এটি সংশোধন করেছি।
শেঠ

আমি জানতে চেয়েছিলাম, কারণ আমি এমন একটি স্ক্রিপ্ট লিখতে চেয়েছিলাম যা আমার ড্রপবক্স ফোল্ডারের স্থিতি নির্দেশ করার জন্য প্রতীকগুলি সেট করে। আমি জানতে পেরেছিলাম যে সদ্য যুক্ত হওয়া প্রতীকগুলি দেখতে এবং পরে আপনার আপডেট হওয়া উত্তরে এটি পড়তে আমাকে থুনার পুনরায় চালু করতে হবে। আপনি কি জানেন যে কোনওভাবে দৌড়ানোর সময় থুনার এই পরিবর্তনগুলি গ্রহণ করতে পারে কিনা?
রিমকো হাসিং

@ রেমকোহাজিং না, এটি সত্যই সম্ভব নয় আফ্রিক। থুনারকে নিয়মিত পরিবর্তনের জন্য জরিপ করতে হবে এবং এতে প্রচুর সংস্থান প্রয়োজন। থুনারের সমস্ত চলমান দৃষ্টান্ত বন্ধ করার জন্য আমি স্ক্রিপ্টটি সম্পাদনা করতে এবং আপনার ড্রপবক্স ফোল্ডারগুলিতে আপনি কী করতে চাইছেন তার উপর নির্ভর করে একটি নতুন উদাহরণ খুলতে পারে।
শেঠ

খুব সুন্দর স্ক্রিপ্ট এবং কমান্ড। এটি ফাইল এবং ডিরেক্টরিতে পুরোপুরি কাজ করে। তবে, আমার ড্রপবক্স ফোল্ডারটি তার নিজস্ব পার্টিশন / dev / sda2 তবে এটি ~ / ড্রপবক্সে মাউন্ট করে। আমি ~ / ড্রপবক্সের জন্য প্রতীকটি স্থাপন করার চেষ্টা করেছি তবে এটি কার্যকর হয়নি। কোন ধারনা? আপনাকে ধন্যবাদ
jbrock

@jbrock আপনি ফাইল ম্যানেজারটি পুনরায় চালু করেছেন? এটি পুনরায় আরম্ভ না করা পর্যন্ত পরিবর্তনগুলি প্রভাবিত করে না। যদি এটি সমাধান না করে তবে আমি ভয় করি আমি জানি না। আপনি একটি নতুন প্রশ্ন জিজ্ঞাসা করতে পারেন। আমি সাহায্য করতে চাই, তবে বর্তমানে এই নির্দিষ্ট সমস্যাটি পরীক্ষা করার মতো সংস্থান আমার নেই। দুঃখিত!
শেঠ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.