удалять файлы после вставки в tarball

Я хочу ограничить количество файлов, которые попадают в tar-мяч, и вырезать их после того, как они были вставлены в tarball и станут независимыми от текущего каталога. Я пробовал это: tar -C ~/semios/tmp/ -cjvf ~/semios/tmp/test.tar.bz2 $(cd ~/semios/tmp/; ls *| head -5) | xargs rm -f tar -C ~/semios/tmp/ -cjvf ~/semios/tmp/test.tar.bz2 $(cd ~/semios/tmp/; ls *| head -5) | xargs rm -f но это оставляет файлы, в которых они находятся, поскольку подробный параметр tar только печатает имя файла, а не весь путь, я думал, что могу исправить его аргументом -C но он не похож на него. любые подсказки?

  • Обработка временных меток вывода tcpdump в режиме реального времени
  • xargs не работает в Linux, поскольку работает в Unix
  • Понимание -regex с GNU find
  • Поиск строки в каталоге. Получить вывод без имени файла.
  • Предоставление параметров scp с помощью xargs
  • Проблемы с find, xargs и egrep
  • использование измененного содержимого файла в качестве аргументов
  • xargs repl_str не расширяет второй заполнитель
  • 2 Solutions collect form web for “удалять файлы после вставки в tarball”

    Предполагая, что на путях нет злых символов (пробелы, символы новой строки):

     ... $(ls ~/semios/tmp/*| head -5) | xargs -d '\n' rm -f 

    или

     ... | { cd ~/semios/tmp/; xargs -d '\n' rm -f; } 

    или

     tar -C ~/semios/tmp/ -cjvf ~/semios/tmp/test.tar.bz2 \ $(cd ~/semios/tmp/; ls * | head -5 | { while read file; do echo "$file"; rm -f "$file"; done;}) 

    редактировать

    Поскольку xargs использует любые пробелы как разделители по умолчанию, xargs должна быть установлена ​​как единственный разделитель. Но из-за $() этот пример может сбой даже с пробелом в имени.

    или

    $ tar -cjf test.tar.bz2 $(find ~/semios/tmp/ -name "*"| head -5 | xargs rm -f)

    Interesting Posts

    Samba не запускается на сервере Ubuntu 16.10

    Как я могу автоматизировать отправку похожих писем с одним измененным словом?

    Centos6: увеличение пространства без потери данных

    Почему некоторые файлы Linux имеют суффикс 'd'?

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

    Установка файлов .deb в Debian LXDE

    Использование TMUX при загрузке Linux CentOS

    offlineimap: Как предотвратить перемещение перемещаемых сообщений по мере их появления после синхронизации?

    Является ли чипом MMU (модуль управления памятью) необходимым для поддержки виртуальной памяти процессором?

    Есть ли у linux механизм Blackbox, когда система врезалась в встроенный Linux?

    Символ функции получает суффикс «.part» после компиляции

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

    gvim -p предел открытых вкладок?

    Не удается выйти из эмулятора терминала

    Есть ли простой способ остановить и переиздать команду?

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