Отмена выбора не имеет ни одного замечательного разрешения зависимости, но можно отчасти думать об отмене выбора как проклятия, базирующиеся "синаптический". Однако Вы только хотите сделать выборы с отменой выбора; на самом деле не делайте установки.
После того, чтобы заставлять выборы выполнить это:
apt-get dselect-upgrade
Лучший из обоих миров.
Если Вы используете bash
, можно использовать fc
управляйте для отображения истории в способе, которым Вы хотите:
fc -ln -1
Это распечатает Вашу последнюю команду. -l
список средств, -n
средства не к строкам префикса с числами команды и -1
говорит для показа просто последней команды. Если пробел в начале строки (только первая строка на многострочных командах) является надоедливым, можно избавиться от этого достаточно легко с sed
. Превратите это в функцию оболочки, и у Вас есть решение согласно просьбе (getlast >> LOGBOOK
):
getlast() {
fc -ln "$1" "$1" | sed '1s/^[[:space:]]*//'
}
Это должно функционировать, как Вы попросили в своем вопросе.
Я добавил небольшое изменение путем добавления "$1" "$1"
к fc
команда. Это позволит Вам говорить, например, getlast mycommand
распечатать последний вызов командной строки mycommand
, таким образом, если Вы забыли сохранять прежде, чем выполнить другую команду, можно все еще легко сохранить последний экземпляр команды. Если Вы не передаете аргумент getlast
(т.е. вызвать fc
как fc -ln "" ""
, это распечатывает просто только последнюю команду).
[Примечание: Ответ, отредактированный для составления комментария @Bram и проблемы, упомянутой в ответе @glenn jackman.]
Одна проблема с ответом @camh состоит в том, если у Вас есть команда, которая охватывает несколько строк, это только показывает первую строку:
$ echo "one
> two
> three"
one
two
three
$ fc -lnr | head -1
echo "one
Попробуйте это:
$ alias getlast='fc -nl $((HISTCMD - 1))'
$ echo "one
> two
> three"
one
two
three
$ getlast
echo "one
two
three"
cmdhist
зафиксирует это: "Если установлено, удар пытается сохранить все строки многолинейной команды в той же записи истории. Это позволяет легкое переиздание многострочных команд".
– Mark McKinstry
08.05.2012, 00:17
Вместо того, чтобы использовать стрелку вверх, можно использовать "!!"
относиться к предыдущей команде.
например.
$ some -long --command --difficulty="very hard to remember"
$ echo "!!" >> LOGBOOK
примечание: это не заключает буквенный текст в кавычки
ls | less
-> echo !! >> LOGBOOK
-> echo ls | less >> LOGBOOK
.
– camh
08.05.2012, 04:04
Можно сделать это со следующей командой при использовании оболочки удара:
$> history -a LOGBOOK
Это добавит все Ваши команды от текущей сессии до того файла, можно также добавить псевдоним на ~/.bashrc файл, чтобы сделать это с единственной командой:
$> alias getlast="history -a LOGBOOK"
fc -lnr | head -n 1
может быть сокращен доfc -lnr -1
. – Bram 07.05.2012, 14:45help fc
для моей документации. Страница справочника удара имеет больше деталей, включая это использование отрицательных индексов. Устранениеhead
хорошо, потому что одна оставленная команда встроена поэтому теперь нет никакого ветвления/должностного лица. – camh 07.05.2012, 14:59fc
... – imz -- Ivan Zakharyaschev 08.05.2012, 00:46