Поскольку Michael Mrozek иллюстрирует, можно запустить X приложений, которые отображаются на рабочем столе жены. Все, что необходимо сделать, установлено DISPLAY
переменная среды к правильному значению (почти всегда :0
) … и вовлекают себя авторизованный.
Это решение требует, чтобы у Вас было разрешение считать Вас файлы жены. Доступ к X-серверу требует аутентификации “cookie”, который является паролем, это случайным образом сгенерировано, когда X запускается и сохраненный в файле. Файл часто ~/.Xauthority
; если это не, это должно быть обозначено в XAUTHORITY
переменная среды. В соответствии с Ubuntu с установкой по умолчанию (использующий Gdm), сеансовые куки Вашей жены не находятся в ~wife/.Xauthority
но в файле с автоматически сгенерированным именем; см., что ssh ОТОБРАЖАЕТ переменную. См. также, Поскольку корень может я запускать графическую программу на другом пользовательском рабочем столе?, Linux: wmctrl не может открыть дисплей, когда сессия инициировала через ssh+screen.
Если у Вашей жены есть открытый текстовый терминал, можно использовать write
как предложено user7440 записать некоторый текст в ее терминале. Это требует, чтобы терминал принял такие уведомления; можно включить и выключить это с mesg y
или mesg n
, и я не знаю то, что состояние по умолчанию находится на современных эмуляторах терминала.
Более сложный механизм это write
talk
. Протокол разговора является предком программ чата; можно говорить с любым на машине, это выполняет сервер разговора и чей порт UDP 517 или 518 (существует два варианта протокола), не фильтрован. Так устанавливают talkd Установите talkd http://bit.ly/software-small, клиент, такой как ytalk Установите ytalk http://bit.ly/software-small, и ytalk wife
. Существует также X-клиент, xtalk Установите xtalk http://bit.ly/software-small. Насколько я знаю, разговор просто упал с радара (все, кто заботится об использовании один из современного чата procotols), и нет никакого компонента системы, который генерировал бы уведомление KDE о запросе разговора.
В то время как Вы говорите, что не можете работать, какой-либо клиент IM … был бы командная строка, к которой клиент IM, работающий на Вашей домашней машине, получил доступ через SSH быть в порядке? Существуют такие, напримерweechat, Установите weechat http://bit.ly/software-small. Вы все еще были бы в зависимости от некоторого сервера для соединения Вас с Вашей женой, но к нему только получат доступ от Вашей домашней машины, не с Вашего телефона.
Это обычно просто C
. Команды ls
и pwd
произойдите из GNU Coreutils
пакет в (большинство?) Дистрибутивы Linux (и возможно некоторые другие системы). Можно найти код их домашней страницы.
Для coreutils
а именно, Вы создаете их с обычными шагами: после распаковки источника, проблемы:
./configure --prefix=/some/path
# type ./configure --help to get the available options
make
make install # could require root access depending on the path you used
Будьте осторожны - устанавливающий основные утилиты как те, которые по копии Вашего распределения их, плохая идея. Используйте любой диспетчер пакетов, с которым Ваша система идет для этого. Можно установить на другом префиксе хотя (устанавливающий где-нибудь в корневой каталог хорошая идея, если Вы хотите экспериментировать).
Обратите внимание на это, хотя существует a cd
исполняемый файл, cd
Вы будете использовать при большинстве обстоятельств, не отдельный исполняемый файл. Это должна быть сборка оболочки - в (иначе, это не могло изменить текущий каталог оболочки - это должно быть сделано самим процессом), таким образом, это записано на том же языке как оболочка (который часто является C
также).
Другие примеры:
Можно найти намного больше из них онлайн.
Только для добавления немного больше к ответу Mat, хотя Unix реализует их как автономные программы, много команд также реализованы в bash
(для сохранения его имеющий необходимость породить новый процесс), посмотрите bash
страница справочника для получения дополнительной информации, или взглянули на встроенный оболочкой тег.
bash
также записан в C
Может стоить отметить, что эти команды не должны быть записаны в C - действительно, несколько мини-использования дистрибутива Linux lua
реализации их и других.
cd
должна быть оболочка, встроенная для работы эффективно.
– AProgrammer
31.12.2011, 17:20