Код: Выделить всё
cd /usr/share/applications/
for i in $(ls); do
app_name=$(basename "$i" .desktop)
tr_i=$(echo $app_name | sed -e 'y/abcdefghijklmnopqrstuvwxyz/фисвуапршолдьтщзйкыегмцчня/' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/ФИСВУАПРШОЛДЬТЩЗЙКЫЕГМЦЧНЯ/');
if grep --quiet "Keywords\[ru\]" $i; then
gr_i=$(cat $i | grep 'Keywords\[ru\]'| cut -d= -f2);
newline=$(echo "$gr_i;$tr_i;");
sed -i "s@$gr_i@$newline@" $i;
elif grep --quiet "Comment\[ru\]" $i; then
gr_i=$(cat $i | grep 'Comment\[ru\]'| cut -d= -f2);
newline=$(echo "$gr_i;$tr_i;");
sed -i "s@$gr_i@$newline@" $i;
fi
done;
Keywords[ru]
если оно есть, в противном случае в Comment[ru]
При отсутствии поля keywords - добавлять его почему-то не возымело успеха И то, что при добавлении к описанию будет отображаться набор букв - небольшой продолб в общей эстетичности. Может стоит еще проработать...
Но в целом оно уже работает примерно как и было задумано в первом посте.