Как к строке замены файла, который присутствует в файле tar через UNIX

[
$ awk -F '[\t,]' '{print $1, NF-1}' some_file
] [

], где[

] [
    ] [
  • ][]-F[] устанавливает разделитель полей, i. e. либо tab, либо запятая[
  • ] [
  • ][]$1[] ссылки первое поле[
  • ] [
  • ][]NF[] является встроенной переменной, которая содержит количество полей в записи[
  • ] [
  • ]оператор awk выполняется для каждой записи (i. e. для каждой строки)[
  • ] [
]
1
04.03.2015, 10:35
1 ответ

Так что вся моя установка была беспорядком. postconf по-прежнему настроен на запись почты в/var/mail/USERNAME . «Отправленные» и «черновые» письма Dovecot были сохранены в/home/USERNAME/mail/using mbox

, поэтому я перенастроил все это и решил использовать mailDir Для этого я перенастроил postfix, сделав

postconf -e "home_mailbox = Maildir/"
postconf -e "mailbox_command ="

и изменив dovecot mail_location variable (в dovecot.conf)

mail_location = maildir:~/Maildir

И, кажется, все хорошо, «почта» больше не беспокоит меня бесполезными извещениями и конверсией. Похоже, он ищет только почту в/var/mail/USERNAME. Я могу ошибаться, я не эксперт по почте.

Надеюсь, когда-нибудь это кому-то поможет.

-121--244237-

У меня была та же проблема (centos 6 64 bit). Я обнаружил, что некоторые системные пакеты пропали. Я прошел, запустив:

yum установить -y pciutils системы-логотипы, которые libxml2 dmidecode net-tools virt-what apr apr-util curl mailcap libjpeg libtool-ltdl unixODBC libxslt zlib

убедитесь, что у вас установлены зависимости. См. - https://docs.puppetlabs.com/pe/latest/install_system_requirements.html

-121--186189-

Прежде всего следует понимать, что TAR-файл обычно не сжимается (если он имеет расширение .tar.gz или .tar.xz ).

И ваш tar -xvf xyz.tar извлекает файлы и перечисляет имена, sed работает со списком имен файлов, даже не содержимое файла.

Если у вас есть точно такие же замены длины, как у оригиналов, то вы можете теоретически (как tar файлы не имеют контрольной суммы) заменить последовательности в .tar . Однако лучше сначала извлечь все файлы во временном каталоге, затем перейти по дереву с помощью

find . -name "*.sh" -print0 | xargs -0 sed -i -e 's/Hollywood/Oscar/'

и затем заново создать tar-файл из этого временного каталога.

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

2
27.01.2020, 23:37

Теги

Похожие вопросы