Как знать соответствующую командную строку cmd для щелчка UI?

Я могу нажать "проигрыватель фильмов" от GUI Ubuntu, но как я мог знать соответствующую командную строку cmd. Я хочу выполнить проигрыватель фильмов от строки команды.

И это не только о фоновой команде для проигрывателя фильмов, я хочу знать всю фактическую команду, которая была выполнена оболочкой X-окна, когда я нажимаю на один из значка в меню.

Большое спасибо.

4
задан 02.06.2010, 19:22

10 ответов

откройте консоль и войдите

PS - вид start_time x

это должно дать Вам список активных процессов, отсортированных по времени начала, с новым процессом внизу. Например, я только что запустил Firefox и получил это:

19713 ?        S      0:00 /bin/sh /usr/lib/firefox-3.6.3/firefox
19718 ?        S      0:00 /bin/sh /usr/lib/firefox-3.6.3/run-mozilla.sh /usr/lib/firefox-3.6.3/firefox-bin
19722 ?        Sl     0:01 /usr/lib/firefox-3.6.3/firefox-bin
19737 pts/2    R+     0:00 ps --sort start_time x

Конечно, ps --sort start_time x всегда новый процесс.

6
ответ дан 07.12.2019, 19:09

Щелкните правой кнопкой по значку и выберите Свойства. Это скажет Вам командную строку, связанную с ним в большинстве случаев.

4
ответ дан 07.12.2019, 19:09

Если Вы хотите проигрыватель фильмов, можно управлять из командной строки также, использовать mplayer.

1
ответ дан 07.12.2019, 19:09

Это было бы totem.

0
ответ дан 07.12.2019, 19:09

Три основных графический интерфейса пользователя для Ubuntu являются Gnome, KDE, Xfce. Эти проекты вся попытка следовать Бесплатным Настольным стандартам по freedesktop.org. Xfce, кажется, следует Настольному стандарту Записи, который определяет, как пункты меню обрабатываются, среди прочего.

Следующие инструкции должны работать в Gnome, KDE и Xfce.

Пункты меню (Также названный 'Средствами запуска', или 'Настольные Записи' хранятся в /usr/share/applications.

Вы знаете, что это приложение называют "Проигрывателем фильмов", так чтобы найти, что соответствующий файл делает это:

stefanl@HOST:/usr/share/applications $ grep -i "movie player" *.desktop
totem.desktop:Name=Movie Player

Grep показывает мне, что 'totem.desktop' содержит соответствующее содержание. От этого я знаю, что "Проигрыватель фильмов" связан с приложением 'тотема'.

Теперь, для наблюдения команды, которая выполняется этим пунктом меню Вы ищете Exec:

stefanl@HOST:/usr/share/applications $ grep Exec totem.desktop 
Exec=totem %U

Формат этих Gnome/KDE/Xfce .desktop файлы далее описан в Настольной Спецификации Записи freedesktop.org. Настольная Спецификация Записи: Исполнительный ключ описывает использование %U ключ:

Список URL. Каждый URL передается как отдельный аргумент исполняемой программе. Локальные файлы могут или быть переданы как файл: URL или как путь к файлу.

3
ответ дан 07.12.2019, 19:09

Примечание: Этот ответ является расширением ответа artistoex.

Эта команда должна отобразить все в настоящее время рабочие команды, выполняемые текущим пользователем, и запустилась в течение прошлых 60 секунд:

ps x --sort -start_time -U YOURUSERNAME -o start,command | \
awk '$1>=recently&&$1<=now' \
recently=$(date --date='60 seconds ago' +%T) now=$(date +%T) | sed 1,1d

Для использования этой команды нажмите на значок или пункт меню для выполнения команды и в то время как программа, которая была просто открыта, все еще работает, выполните вышеупомянутую команду. Не забудьте заменять YOURUSERNAME с именем пользователя Вашего текущего пользователя.

Объяснение:

ps отобразит в настоящее время рабочие процессы. Объяснение ps аргументы:

  • x: включает процессы, не выполняемые через терминал (на самом деле a tty). Добавление -t '?' отобразил бы только процессы, не связанные с терминалом.
  • --sort -start_time: отсортируйте вывод к тому времени, когда процесс запустился (порядок по убыванию)
  • -U YOURUSERNAME: Замена YOURUSERNAME с Вашим именем пользователя покажет только процессы, выполняемые Вашим пользователем. Это ограничение может быть удалено в случае необходимости.
  • -o start,command: Отобразите два столбца в выводе: время начала процесса и команды, которая выполнялась

awk используется здесь, чтобы только показать процессы, выполненные недавно. Объяснение awk аргументы:

  • $1>=recently&&$1<=now: Ограничьте вывод процессами, которые выполнялись в течение прошлых 60 секунд. Для изменения этого периода времени измените следующий аргумент (recently переменное присвоение)
  • recently=$(date --date='60 seconds ago' +%T): установите awk переменная recently используемый в предыдущем аргументе 60 секунд назад в HH:MM:SS формат (ps формат времени).
  • now=$(date +%T): установите awk переменная now к текущему времени (это должно исключить процессы, выполнился меньше чем 24 часа назад, который будет похож, они выполнились в будущем),

Я добавил sed 1,1d удалить первую строку вывода, потому что это покажет в настоящее время выполняющуюся команду, которая бессмысленна отобразиться.

Следует иметь в виду: Используя ps узнать, какой процесс выполнялся, не будет работать как ожидалось на определенные программы. Например, если Вы нажмете на ярлык Firefox, но Firefox уже работает, то новый процесс не будет создан, и время начала старого процесса не будет изменено. Однако этот метод действительно работает довольно хорошо на многие программы.

1
ответ дан 07.12.2019, 19:09

Тем, что появляется в меню, управляют файлы в .desktop файлы в /usr/share/applications. При просмотре какого-либо из этих файлов существует строка Exec= что-то, это - команда, которую Ubuntu выполняет при нажатии на значок.

0
ответ дан 07.12.2019, 19:09

Этот ответ является расширением Крика Havok.

Я думаю, что это - самый легкий путь.

Сначала необходимо получить любой ярлык, который Вы имеете в средстве запуска приложения, скопированном в Ваш рабочий стол. Можно щелкнуть правой кнопкой по любому приложению и выбрать, "Добавьте это средство запуска к Рабочему столу" (при использовании гнома).

Теперь, когда ярлык находится на рабочем столе, можно щелкнуть правой кнопкой по нему и выбрать свойства. Там на вкладке Basic это покажет Вам команду командной строки, которая инициировалась для запуска приложения.

Можно также открыть gedit и открыть значок на рабочем столе. Значки на рабочем столе являются просто текстовыми файлами с ".desktop" расширением. В этом файле Вы будете видеть все параметры того ярлыка включая "Должностное лицо =" часть, которая показывает программу, которую можно назвать из командной строки.

0
ответ дан 07.12.2019, 19:09

Если Вы используете гнома,

 gnome-open <file> 

открытый для гнома затем открывает файл с помощью программы, которая была зарегистрирована для открытия того файла. Однако, если Вы wan't для знания исполнительного приказа суда, который это выполняет можно попробовать

ps ux | grep filename

или Вы могли искать от вывода

ps ux
0
ответ дан 07.12.2019, 19:09

В Xubuntu перейдите к пользователю/доле/приложениям и щелкните правой кнопкой по любым приложениям, Вы хотите вставить панель. Выбор отправляет (связываются) с Рабочим столом. Теперь средства запуска находятся на рабочем столе, можно щелкнуть правой кнопкой по любому и выбрать Свойства для наблюдения командной строки. Щелкните правой кнопкой в панели, выбор создают средство запуска и копируют свойства в настольном средстве запуска для каждого приложения. Теперь можно удалить средства запуска на рабочем столе.

Это - немного больше кольца, чем в Ubuntu (Gnome), но Xubuntu быстрее, потому что это обрезает всех положительных героев.

1
ответ дан 07.12.2019, 19:09

Теги

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