Меню Рубрики

Linux отменить последнюю команду

unixforum.org

Форум для пользователей UNIX-подобных систем

Отмена предыдущего действия в терминале

Модератор: Bizdelnick

Отмена предыдущего действия в терминале

Сообщение Bart7 » 04.06.2009 17:55

Re: Отмена предыдущего действия в терминале

Сообщение drBatty » 04.06.2009 18:01

удаляет не терминал, а команда rm.
это команда опасна тем, что ничего не спрашивает, и удаляет без возможности восстановления.
бороться можно двумя способами:
1)поменять rm, например у вас её наверное уже для вас поменяли, она у вас спрашивает, уверенны ли вы. А вы наверное ей заткнули рот ключом -f. Можно сделать так-же вариант с корзинкой, как в виндовс.
2)сделать жёсткие ссылки на важные каталоги в недоступном месте, тогда удалив каталог у себя, вы не сможете удалить его в недоступном месте.

Есть ещё третий способ: СРАЗУ после удаления вырубить комп нафиг, и нести HDD на восстановление. может восстановят. Однако это вам встанет в $$$

Источник

Отменить команду утилиты Linux

Можно ли отменить операции, выполняемые в терминале, например, удаление файла через rm ?

  1. Искажения
  2. Утилиты Undelete
  3. Утилиты резервного копирования
  4. LibTrash
  5. Управление версиями (FUSE)

12 ответов

Для каждой операции в терминале нет общего «отмены». Если вы хотите восстановить файл после использования rm , вам нужно будет искать программное обеспечение для восстановления.

Опция предотвращения будущих ошибок заключается в том, чтобы сделать alias es для альтернативных команд для удаления файлов. Добавьте их в свой

/.bashrc и привыкнуть использовать их вместо rm .

Если вы используете rmi , вам будет предложено подтвердить удаление в будущем. Попытайтесь избежать привычки сразу нажать y после того, как вы внесете команду rmi , так как это победит цель.

Вы также можете перемещать файлы, удаленные командой trsh в терминале, в ваш корзину (в KDE и Gnome):

Если вы используете trsh , у вас будет ограниченная возможность «восстановить». Остерегайтесь, что

может по-прежнему вызывать неустранимую потерю данных.

В командной строке нет корзины.

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

Вы можете использовать trash-cli , если вы используете KDE при запуске gui , Это утилита командной строки для удаления /восстановления с использованием средств утилизации KDE.

Вы можете сделать rm псевдоним для trash (сначала вам нужно установить trash ). Добавьте это в свой

Это предпочтительнее alias rm=’mv —target-directory=$HOME/.Trash’ , так как

/.Trash НЕ является папкой мусора для gnome. Лучше ИМХО позволить trash определить, где находится фактическая папка мусора.

btw Я бы разместил это в комментарии, но мне не хватает репутации.

Еще два технических решения еще не названы:

  1. libtrash : динамическая библиотека, которая может быть предварительно загружена в вашей оболочке, которая перехватывает удаление /удаление системных вызовов и перемещение файлов в папку для мусора (как и псевдоним, но работает для любого приложения при предварительной загрузке).
  2. Файловая система версий. Если вы удалите (или отредактируете или скопируете или . ) файл, вы можете просто вернуться к старому состоянию. Это можно сделать с файловой системой FUSE и одним из ее файловые системы версий .

Здесь есть большой вопрос, заслуживающий внимания. Команды Shell не чаты (они не проверяют, что вы хотите), и они ожидают, что вы знаете, что делаете. Это имеет фундаментальное значение для дизайна . Это особенность, а не ошибка.

Некоторые люди чувствуют себя мачо, когда они используют такие команды, которые, я думаю, довольно глупы, но важно понять опасности. Вы можете нанести большой урон в терминале, даже если вы не root. Я думаю, вы, вероятно, действительно заботились о rm , но, поскольку вы сказали «Можем ли мы отменить операции, выполняемые в терминале», я подумал об этом стоило сказать. Общий ответ — нет, вы не можете.

Вариант 1: см. Отменить файлы Linux из файловой системы ext2 . На этой странице указывается программа, написанная Себастьяном Хетце из компании LunetIX, которая (как следует из названия) удаляет недавно удаленные файлы из файловой системы ext2. Пример использования:

  • Исходный веб-сайт исчез. Ссылка, приведенная выше, относится к Интернет-архиву.
  • Сайт (ы) находятся в смеси английского и немецкого языков.
  • Как указано выше, инструмент разработан специально для файловой системы ext2. Это вряд ли будет работать на любой другой тип файловой системы; особенно не одни, кроме ext N .

Вариант 2: У меня на компьютере работает rsnapshot (rsync), который делает моментальные снимки по моим выбранным папкам. Он постепенно делает это каждый час, 2 часа или все, что вы скажете CRON. После полного дня он восстанавливает эти снимки в один дневной снимок и через 7 дней в неделю и так далее и так далее. Это заставляет меня возвращаться во времени около месяца или около того на каждый час! Это довольно хорошо с дисковым пространством, поскольку оно создает символические ссылки на файлы, которые никогда не менялись .

Источник

Information Security Squad

stay tune stay secure

🐧 Различные способы повторить вашу последнюю команду в Linux

Привет ! Сегодня я научу вас, как повторить вашу последнюю команду в Linux.

Вам не нужно повторно вводить ранее выполненные команды в вашей командной консоли.

Конечно, мы используем клавишу со стрелкой ВВЕРХ, чтобы выбрать последние выполненные команды, и нажимаем ENTER, чтобы выполнить их.

Однако есть и другие способы сделать это.

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

Все эти команды были протестированы на моем настольном компьютере с Linux и Ubuntu 18.04 LTS с оболочкой BASH.

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

Как повторить вашу последнюю команду в Linux

Давайте сначала запустим несколько команд.

Как я упоминал ранее, мы можем выполнить последнюю команду, просто нажав стрелку ВВЕРХ и нажав клавишу Enter.

Это наиболее распространенный способ, используемый многими пользователями для выполнения предыдущей команды.

Этот метод будет работать во всех оболочках, независимо от используемого вами дистрибутива Linux.

Однако, как я уже сказал, есть несколько других способов сделать это.

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

Метод 1 — Использование восклицательных знаков:

Чтобы выполнить любую последнюю выполненную команду, просто введите двойной восклицательный зна к и нажмите клавишу Enter:

Добавьте «sudo» перед «!!» чтобы выполнить последнюю команду от имени пользователя root, как показано ниже.

Эта команда также выполнит предыдущую команду:

Круто, не правда ли?

Вам не нужно вводить последнюю команду полностью.

Это может быть полезно, когда вы уже выполнили очень длинную команду и не хотите вводить эту команду полностью.

Способ 2 — повторить N-ую команду:

Возможно, вы выполнили много команд и хотите повторить определенную команду.

Что вы будете делать?

Вы можете сделать это, набрав определенное слово предыдущей команды.

Чтобы повторить предыдущую команду, которая начинается с определенного слова / буквы, например, un, просто введите:

Приведенная выше команда выполнит последнюю команду, которая начинается с букв «un».

Пример вывода для вышеуказанной команды:

Как видите в приведенном выше примере, вам не нужно вводить всю команду (т.е. uname -r).

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

Кроме того, если вы знаете полное имя команды, просто введите его, как показано ниже:

Система выполнит последнюю команду.

Что делать, если вы не хотите повторять последнюю команду, а просто отобразить ее.

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

Если это так, найдите префикс номера команды, которую вы хотите выполнить:

Метод 3 — Использование обратного поиска:

Другой способ сделать это — поиск в истории командной строки с помощью сочетания клавиш CTRL + R.

Нажмите клавиши CTRL + R для поиска по истории командной строки.

Я лично предпочитаю этот метод.

Он ищет историю в интерактивном режиме, что, на мой взгляд, безопаснее, чем слепое выполнение команд из истории BASH.

Посмотрите на следующий пример.

В следующем примере я искал «itsec», и система показала последнюю команду «sudo netctl restart itsecforu» в истории, которая содержала слово «itsec»

Затем я нажимаю клавишу Enter для немедленного выполнения команды или клавишу со стрелкой вправо для завершения команды и нажимаю клавишу Enter для ее выполнения.

На всякий случай, если вы хотите отредактировать / изменить последнюю команду перед ее выполнением, просто нажмите клавишу со стрелкой влево, затем отредактируйте последнюю команду и нажмите ENTER, чтобы выполнить ее.

Некоторые команды могут начинаться с одинаковых букв.

В таких случаях продолжайте нажимать клавиши CTRL + R, чтобы вернуть команду, которую вы хотели выполнить.

Метод 4 — Используя символ дефиса с номерами префикса команды:

Вот еще один способ выполнить предыдущую команду.

Способ 5 — Использование CTRL + p и CTRL + o:

Я не хочу вводить какие-либо команды вручную.

Есть ли способ повторить последнюю команду простым нажатием определенной клавиши (клавиш) на моей клавиатуре? Да, конечно!

Нажмите CTRL + P, чтобы перейти к последней команде, а затем нажмите CTRL + O, чтобы выполнить ее.

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

Способ 6 — Использование команды «fc»:

Это еще один способ повторить последнюю выполненную команду.

Команда «fc» используется для просмотра, редактирования и повторного ввода ранее введенной команды.

Чтобы повторить последнюю команду, используя fc, просто запустите:

Теперь вы знаете, как повторить последнюю команду, не вводя ее в терминале.

Если вы хотите просмотреть вывод ваших последних команд без необходимости их повторного ввода, эти методы вам помогут.

Если вы знаете какие-либо другие методы, пожалуйста, дайте мне знать в разделе комментариев ниже.

Я проверю и обновлю руководство с вашими дополнениями.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Как восстановить программу в mac os
  • Как восстановить несохраненный документ word mac os
  • Как восстановить загрузку mac os x
  • Как восстановить recovery hd mac os
  • Как восстановить mac os через интернет