জন্য গনোম টার্মিনাল> = 3.8 তৈরি, / সম্পাদনা / CLI মাধ্যমে প্রোফাইলের পড়া, আপনি ব্যবহার করতে পারেন dconf-cliবা gsettings। আমার পছন্দ dconf-cli।
জিনোম টার্মিনালের ডকনফ ডিরেক্টরিটি
/org/gnome/terminal/legacy/profiles:। সমস্ত অপারেশন এই দির মধ্যে ঘটে। আমি এটি সংরক্ষণ করি $dconfdirযা নীচের স্ক্রিপ্টগুলিতে দেখানো হয়েছে।
একটি নতুন প্রোফাইল তৈরি করুন
ন্যূনতম পদক্ষেপ হয়
- কমান্ড চালিয়ে প্রোফাইলের জন্য একটি ইউইউডি তৈরি করুন
uuidgen
- এটি এতে যুক্ত করুন
list:dconf write "$dconfdir/list" "[..., 'UUID']"
- এটি সেট করুন
visible-name:dconf write "$dconfdir/:UUID"/visible-name "'NAME'"
এর পরে, অনেকগুলি সেটিংস সেট না করা সত্ত্বেও, টার্মিনালের জিইউআই সেটিংসে একটি নতুন প্রোফাইল প্রদর্শিত হবে যাতে আপনি জিইউআইয়ের মাধ্যমে সেটিংস সম্পাদনা করতে পারেন।
একটি কার্যনির্বাহী স্ক্রিপ্ট:
#!/bin/bash
dconfdir=/org/gnome/terminal/legacy/profiles:
create_new_profile() {
local profile_ids=($(dconf list $dconfdir/ | grep ^: |\
sed 's/\///g' | sed 's/://g'))
local profile_name="$1"
local profile_ids_old="$(dconf read "$dconfdir"/list | tr -d "]")"
local profile_id="$(uuidgen)"
[ -z "$profile_ids_old" ] && local lb="[" # if there's no `list` key
[ ${#profile_ids[@]} -gt 0 ] && local delimiter=, # if the list is empty
dconf write $dconfdir/list \
"${profile_ids_old}${delimiter} '$profile_id']"
dconf write "$dconfdir/:$profile_id"/visible-name "'$profile_name'"
echo $profile_id
}
# Create profile
id=$(create_new_profile TEST)
আপনার লেখার মানটির চারপাশে উদ্ধৃতিগুলি সম্পর্কে সতর্ক থাকুন। ম্যানুয়ালটিতে যেমন বলা হয়েছে ,
কী কী সেট করার সময় আপনার একটি নির্দিষ্ট করা দরকার VALUE। মান ফরম্যাট করে একটি ধারাবাহিকভাবে GVariant, তাই যেমন একটি স্ট্রিং স্পষ্ট কোট অন্তর্ভুক্ত করা আবশ্যক: "'foo'"। মানগুলি মুদ্রণের সময়ও এই ফর্ম্যাটটি ব্যবহৃত হয়।
আপনি চাইলে ক্লাইপের মাধ্যমে প্রোফাইলের আরও বিকল্পগুলি সেট করতে পারেন। চালান
dconf write /org/gnome/terminal/legacy/profiles:/:UUID/KEY "'NAME'"
নির্ধারণ করা. আপনি dconf-editorউপলভ্য বিকল্পগুলি পরীক্ষা করতে ব্যবহার করতে পারেন । এর মতো পথে নেভিগেট করুন
/org/gnome/terminal/legacy/profiles:/:9ca4ab84-42f2-4acf-8aa9-50e6351b209a/। এমন একটি পুরানো প্রোফাইল যাচাই করা আরও ভাল which
একটি প্রোফাইল সদৃশ
আপনি dconf dumpএকটি পুরানো প্রোফাইল করতে পারেন এবং loadএটি একটি বিদ্যমান প্রোফাইলের কাছে। সুতরাং কোনও প্রোফাইলের সদৃশ করতে আপনাকে উপরের পদক্ষেপগুলি ব্যবহার করে একটি নতুন তৈরি করতে হবে এবং এটিকে ওভাররাইড করার জন্য কোনও পুরানো ব্যক্তির প্রোফাইল অনুলিপি করতে হবে। ওভাররাইড করার পরে এর নামকরণ মনে রাখবেন।
একটি কার্যনির্বাহী স্ক্রিপ্ট:
# ... codes from last script
duplicate_profile() {
local from_profile_id="$1"; shift
local to_profile_name="$1"; shift
local profile_ids=($(dconf list $dconfdir/ | grep ^: |\
sed 's/\///g' | sed 's/://g'))
# If UUID doesn't exist, abort
in_array "$from_profile_id" "${profile_ids[@]}" || return 1
# Create a new profile
local id=$(create_new_profile "$to_profile_name")
# Copy an old profile and write it to the new
dconf dump "$dconfdir/:$from_profile_id/" \
| dconf load "$dconfdir/:$id/"
# Rename
dconf write "$dconfdir/:$id"/visible-name "'$to_profile_name'"
}
# Create a profile from an existing one
duplicate_profile $id TEST1
এর নামের সাথে একটি প্রোফাইলের ইউআইডি পেতে:
get_profile_uuid() {
# Print the UUID linked to the profile name sent in parameter
local profile_ids=($(dconf list $dconfdir/ | grep ^: |\
sed 's/\///g' | sed 's/://g'))
local profile_name="$1"
for i in ${!profile_ids[*]}; do
if [[ "$(dconf read $dconfdir/:${profile_ids[i]}/visible-name)" == \
"'$profile_name'" ]]; then
echo "${profile_ids[i]}"
return 0
fi
done
}
id=$(get_profile_uuid Default)
ডিফল্ট হিসাবে একটি প্রোফাইল সেট করুন
কেবলমাত্র প্রোফাইলের ইউআইডিটি কীতে লিখুন default:
dconf write $dconfdir/default "'$UUID'"
উল্লেখ