Могу ли я использовать время A | B для измерения времени, необходимого для запуска A | B?

Под разделом [Desktop Entry] должна быть строка, указывающая тип файла, для которого он отображается: MimeType=.

Чтобы ограничить это файлами mp4, это должно быть MimeType=video/mp4. Чтобы ограничить все видео: MimeType=video/*; к видео И папкам:MimeTypevideo=video/*;inode/directory; .

Также в разделе [Desktop Entry] нужно иметь Type=Service (NOT Application) и строку Actions=, где необходимо указать имя или имена действий или действий меню сервиса, каждое действие которых является отдельным разделом этого файла с отдельным name, вида [Имя действия рабочего стола].

Строка Exec= должна быть установлена под каждым разделом [Имя действия рабочего стола] (NOT в разделе [Desktop Entry]).

Вот пример с несколькими действиями.

[Desktop Entry]
Type=Service
Name=Download subtitles (filebot)
ServiceTypes=KonqPopupMenu/Plugin
Actions=en;fr;ro;it;
MimeType=video/*;inode/directory;
Icon=gnome-subtitles
Encoding=UTF-8
X-KDE-Priority=TopLevel
X-KDE-Submenu=Subtitles

[Desktop Action en]
Exec=filebot -get-subtitles -rename -non-strict %f
Icon=gnome-subtitles
Name=English (filebot)
Termial=true

[Desktop Action fr]
Exec=terminator -e "filebot -get-subtitles --lang fr -rename -non-strict %f" -p ttt
Icon=gnome-subtitles
Name=Français (filebot)

[Desktop Action ro]
Exec=terminator -e "filebot -get-subtitles --lang ro -rename -non-strict %f" -p ttt
Icon=gnome-subtitles
Name=Româneşte (filebot)

[Desktop Action it]
Exec=terminator -e "filebot -get-subtitles --lang it -rename -non-strict %f" -p ttt
Icon=gnome-subtitles
Name=Italiano (filebot)

, который даст это для видео и каталогов:

enter image description here

У вас может быть одно или несколько действий.

Другие настройки в разделе [Desktop Entry]:

X-KDE-Priority=TopLevel будут отображать действие (или его группу: см. ниже) непосредственно в меню, как на изображении выше; без этого он будет в группе «Действия».

X-KDE-Submenu=something сгруппировки в одном меню-группе под названием «что-то» все действия из файлов, в которых есть эта строка. (Даже если действия находятся в разных файлах меню службы, как описано в этот вопрос; также см. этот вопрос.)

1
10.07.2017, 14:02
2 ответа

Зависит от оболочки. например. В Bash есть ключевое слово time, которое определяет время всего конвейера. Внешняя реализация timeбудет только время Aв вашем примере. Обходной путь может заключаться в явном запуске дополнительной оболочки :

.
time sh -c "A | B"
2
27.01.2020, 23:33

Вы также можете использовать подоболочку, например.

 time ( A | B )

по крайней мере, когда timeявляется встроенным bash (, но тогда подоболочка бесполезна ). Если вы хотите использовать время (1)команду (см. это ), вам лучше явно запустить некоторые sh -c, например , на которые ответил iikkachu

0
27.01.2020, 23:33

Теги

Похожие вопросы