Как создать имя файла для конвейера для удаления всех файлов?

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

ls | sed -rn 's/(.*)\.jpg$/mv -n & \1.jpeg/pi' | sh 

Как создать файл, названный так, чтобы запущенный выше конвейер удалял все файлы в текущем каталоге. Таким образом, посредством инъекции кода.

Пожалуйста, дайте команду, используемую для создания этого файла.

One Solution collect form web for “Как создать имя файла для конвейера для удаления всех файлов?”

Приведенная вами команда (несколько неуклюже) переименует все файлы в текущем прямо из * .jpg в * .jpeg, его можно изменить, чтобы удалить все файлы, но вряд ли подходит для этой задачи.

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

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Вероятно, вы нанесете ущерб. Это все на вас, сначала протестируйте, чтобы вы не погубили что-то, о чем заботитесь, и ожидайте судебных исков против вас с вашей целью, если вас поймают злобно, делая это в своей системе.

Теперь это не в порядке, вы хотите создать файл, который соответствует вводу sed, но создает подходящий вывод, чтобы все еще делать то, что вы хотите.

Создайте файл с именем ;rm *;.jpg (или ;rm -rf *;.jpg для более агрессивного удаления). Вы можете запустить это через часть sed, чтобы увидеть, что он будет делать:

  • echo ";rm * ; .jpg" | sed -rn 's/(.*)\.jpg$/mv -n & \1.jpeg/pi'

EDIT: В качестве дополнительной заметки команда, которую вы указали, может быть выполнена, чтобы выполнить (почти) все, что вам нравится, как пользователь, выполняющий ее, удаление всех файлов является довольно невообразимым (и разрушительным) использованием этой слабости. Может быть, рассмотреть что-то более красочное (и легче отменить)?

  • Fish-Shell не сохранит мои псевдонимы
  • Команда Unix zip обновляет существующий архив, а не создает новый
  • Сценарий оболочки, использующий функцию (), не находящую команду
  • Как завершить приостановленный процесс в SSH?
  • Как распечатать последнее время входа?
  • Порядок подстановки команды Linux
  • Получите только файлы, измененные за последние 30 минут, используя sftp get
  • Команда `ls -ltu` не может отображать папки / файлы на основе последнего времени доступа
  • В чем разница между запуском программы в качестве демона и разворачиванием ее в фоновом режиме с помощью «&»?
  • Bash надежный способ тестирования файла существует
  • error = $ (mkdir test 2> & 1) В чем смысл этого выражения?
  • Interesting Posts

    Структура раздела подкачки

    Предоставляет ли команда unattended-upgrade безопасным пользователям, не использующим sudo?

    Как вы используете переменные со значениями, содержащими пробелы в команде сценария Z-shell (zsh)?

    Как использовать rsync для резервного копирования каталога без подкаталога git

    Формат ACL для OSX / Darwin

    как объединить разные файлы, имеющие один и тот же заголовок, но немного другое имя файла?

    Альтернатива добавлению «user_allow_other» в /etc/fuse.conf для обеспечения безопасности?

    Архивные файлы RAR дают неполные результаты извлечения

    tmux, Vim и Solarized

    Проверка активности пользователя в сценарии Bash

    сделайте мой ноутбук для ноутбука Debian автоматически подключенным к резервному соединению

    как сохранить скрипт python при закрытии шпатлевки

    Поиск сценария оболочки из Emacs

    Raspbian / Debian – установить .deb в автономном режиме

    Является ли набор макросов mdoc доступным для систем, отличных от BSD, по умолчанию?

    Linux и Unix - лучшая ОС в мире.