Удалить линию энного из каждой строки, совпадающие с шаблоном

У меня есть несколько файлов, как файл1, файл2 ... и т. д. В том же каталоге каждый файл может содержать несколько строк, соответствующих шаблону.
Я хотел бы удалить в ню строчку из каждой строки соответствующий шаблон , например, С П = 3 и файл1 контента, как

1 совпадение
2 шаблон
3 одинаковых рисунка
4 не подходит здесь
5 не подходит здесь
6 другой шаблон
7 опять же, не подходит
8 нет
9 последней строке

ожидаемый выход

1 совпадение
2 шаблон
3 одинаковых рисунка
4 не подходит здесь
7 опять же, не подходит
8 нет

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


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

+520
Connor Wilson 5 янв. 2020 г., 09:47:56
33 ответов

В ЗШ, я знаю, что я могу найти историю с помощью Ctrl+Р. Однако, часто я начинаю вводить команду прямо в командной строке, но потом понимаю, что я должен быть поиск истории. Когда я нажмите сочетание клавиш Ctrl+р, он приносит пустой история поиска запрос вроде этого:

history search prompt not pre-filled

Обратите внимание, как там текст на мой запрос, но не в поиск запрос истории. Как мне начать поиск истории с текстом, который уже есть в приглашении, так это выглядит так:

history search prompt pre-filled

+995
Yijie Bu 03 февр. '09 в 4:24

файловая система XFS управляет квота отличается от других ФС. И вам нужно активировать флаг rootflags=квота в /и т. д./По умолчанию/харч.

Подробно: редактировать /и т. д./По умолчанию/харчи, добавив или изменив значение

GRUB_CMDLINE_LINUX="rootflags=квота"

запустить update-grub и выполняет перезагрузку. Квота должна быть активирована. Этот процесс может немного отличаться в зависимости от дистрибутива.

+959
beluchin 16 мар. 2012 г., 00:50:54
Другие ответы

Связанные вопросы


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

frag_list=`кошка ссылке | грэп "фраг" | у awk '{печати$2}" 

должны сделать это

+947
Jeff Kowalczyk 1 мая 2012 г., 23:45:29

Перебирайте имена, и использовать расширение параметр для преобразования:

для F в *.*.*.тхт; я="${f%.txt}"; Эхо МВ -я - "$F" и "${я//./_}.тхт"; сделано

Параметр модель расширения, ${Ф//./_} заменяет все .S С _в имени файла ().

Это позволит сделать "сухой ход", чтобы фактическое переименование состоится, удалить Эхо:

для F в *.*.*.тхт; я="${f%.txt}"; МВ -я - "$F" и "${я//./_}.тхт"; сделано

Если вы хотите иметь дело с любым расширением, а не просто .тхт:

для F в *.*.*.*; сделать pre="${Ф%.*}"; СУФ="${Ф##*.}"; \
 Эхо МВ -я - "$F" и "${предварительно//./_}.${СУФ}"; сделано

После проверки удалить Эхо фактических действий:

для F в *.*.*.*; сделать pre="${Ф%.*}"; СУФ="${Ф##*.}"; \
 МВ -я - "$F" и "${предварительно//./_}.${СУФ}"; сделано

Универсальные, для произвольного числа точек, по крайней мере один:

для F в *.*; сделать pre="${Ф%.*}"; СУФ="${Ф##*.}"; \
 МВ -я - "$F" и "${предварительно//./_}.${СУФ}"; сделано
+915
MargoDes 9 дек. 2011 г., 04:03:27

Вы не можете сделать это: если пользователь может создавать файлы, они будут принадлежать ему, и он сможет изменить их и стереть их.

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

  • Пользователю нужно загрузить файл через HTTP.
  • Пользователь должен совершить для системы контроля версий. Он сможет совершить новые версии.
+897
bouke 17 июл. 2014 г., 18:18:42

В Гноме-скриншот -ж команда не будет писать что-либо на стандартный вывод, так что вы не можете его в другую программу. В любом случае, вам не нужно, вижу мужчину гном-скриншот:

 -с, --буфер обмена
 Отправить захватить непосредственно в буфер обмена.

Поэтому все, что вам нужно, это гном-скриншот -победитель.

+824
befider 24 мар. 2010 г., 12:26:00

Я пытаюсь найти файлы, которые находятся в собственности и имеют основной группы корень. Есть параметр доступен для поиска такой файлы? Очень важно, чтобы все файлы в определенном каталоге не принадлежит корню, так что я хотел бы проверить периодически, чтобы убедиться, что кто-то на сервере не случайно создание файлов принадлежит корень (а именно меня). Конечно, на chown -R пользователь:пользователь /путь работает, но я хочу быть в состоянии проверить.

+822
kolesnica 13 мар. 2016 г., 14:19:10

Я использовал этот ответ, так что вопросы на тему: где все мои индексных дескрипторов используется? когда наш НАН закончились около 2 лет назад:

$ найти . -тип D -print0 команды \
 | хотя ИФС= читать -РД " я; сделать эхо $("ЛС" - это "я" | туалет -л) "я"; делать \
 | сортировки -Н

Пример

$ найти . -тип D -print0 команды \
 | хотя ИФС= читать -РД " я; сделать эхо $("ЛС" - это "я" | туалет -л) "я"; делать \
 | сортировки -Н
...
110 ./Смешанная/nodejs/узел-версии v0.8.12/выход/выхода/параметра obj.целевой/v8_base/дэпс/В8/ГРЦ
120 ./Смешанная/nodejs/узел-версии v0.8.12/док/API-интерфейса
123 ./apps_archive/мониторинга/среда/среда-check_sip-1.3 в/usr/lib64/в Nagios
208 ./Смешанная/nodejs/узел-версии v0.8.12/дэпс/в OpenSSL/OpenSSL и/док/крипто
328 ./Смешанная/nodejs/узел-версии v0.8.12/дэпс/В8/ГРЦ
453 ./Смешанная/nodejs/узел-версии v0.8.12/теста/простые

Иноды проверки устройства

В зависимости от вашего NAS, он не может предложить полноценный ДФ команды. Поэтому в этих случаях вы можете прибегнуть к помощи tune2fs вместо:

$ команду sudo tune2fs -л как /dev/sda1, поскольку |грэп -я инода
Функции файловой системы: has_journal ext_attr resize_inode dir_index тип_файла needs_recovery степени flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Инода граф: 128016
Свободных inodes: 127696
Иноды в группе: 2032
Инода блоков в группе: 254
Первый инода: 11
Инода размер: 128
Журнал инф: 8
Журнал резервного копирования: инода блоков

Пересечение границы файловой системы

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

Пример

Говорю у меня /домашний каталог автомонтирование через NFS акции с интуитивным интерфейсом, которого зовут Малдер.

$ DF-ч /дома/Сэм 
Размер файловой системы используется выгоде использования% установленной на
Малдер:/экспорта/в RAID1/дома/Сэм
 917G 572 г 299 г 66% /домашний/Сэм

Обратите внимание, что точки монтирования до сих пор считается местной системе.

$ DF-ч /дома/ .
Размер файловой системы используется выгоде использования% установленной на
- 0 0 0 - /дома
/Дев/маппер/VolGroup00-LogVol00
 222 Г 159Г 52Г 76% /

Теперь, когда я начинаю найти:

$ найти / -xdev | команда grep '^/дома'
/дома

Его нашли /дома , но ни один из значит содержание, потому что они на другом устройстве!

Типы файловых систем

Вы можете использовать переключатель, чтобы найти, -fstype ключевое для управления типа файловых систем, найти , будут искать.

 -тип fstype ключевое 
 Файл на файловую систему типа Type. Допустимые типы файловой системы 
 различаются различные версии Unix; неполный список 
 типы файловых систем, которые принимаются на некоторые версии Unix или 
 другое: УФС, 4.2, 4.3, НФС, ТМН, МФС, S51K, S52K. Вы можете использовать 
 -функции printf с %Ф директивы для вашего
файловые системы.

Пример

Какую файловую систему у меня есть?

$ найти . -с printf "%ф\п" | сортировка -у
в ext3

Так что вы можете использовать это, чтобы контролировать пересечение:

только в ext3

$ найти . -fstype ключевое в ext3 | глава -5
.
./gdcm
./gdcm/gdcm-2.0.16
./gdcm/gdcm-2.0.16/упаковка
./gdcm/gdcm-2.0.16/Wrapping/CMakeLists.txt

только НФС

$ найти . -fstype ключевое НФС | глава -5
$ 

в Ext3 & Ext4 и

$ найти . -fstype ключевое в ext3 -о-fstype ключевое в ext4 | глава -5
.
./gdcm
./gdcm/gdcm-2.0.16
./gdcm/gdcm-2.0.16/упаковка
./gdcm/gdcm-2.0.16/Wrapping/CMakeLists.txt
+803
Aeed79 8 июн. 2015 г., 00:43:18

Проблемы:

  1. перегрева, вызванного флэш-плеер http://forums.adobe.com/thread/487472
  2. внушительное количество пыли в микро теплоотвода, что делает вещи хуже

Последствия:

  • Выключение системы автоматически из-за перегрева

Решение:

  • Очистить микро-теплоотвод исправила эту проблему.

В может случае при воспроизведении Flash-видео с YouTube или похожих страниц, моя система выключится после 3 минут игры. Это происходит только с флешки фильмы играет с плагин Adobe Flash из веб-браузера (Firefox или Chrome).

Системы:

В openSUSE 11.4 для i586
АМД Атлон Х2
ОПЕРАТИВНАЯ ПАМЯТЬ 1 ГБ
Видеокарты GeForce 6100 настоящим 405
+741
MAREEKMIA 5 авг. 2016 г., 06:23:21

Я был установка кали линукс 2016.2 64-разрядный на свой ноутбук. В моем ноутбуке, жесткий диск всегда обозначается ПДД в то время как флэш-накопители по БДС или СДЕК.

Но во время установки, при выборе раздела, на котором система была установлена, я заметил, что на флэшке было показано, как АСД, в то время как жесткий диск СДБ, я установил кали линукс на /dev/sdb2 буд ет экспортироваться (второй раздел жесткого диска, который обычно обозначается как /dev/sda2).

При загрузке системы после установки в меню grub появился нормально, но Кали не загрузиться, он показал мне сообщение об ошибке: что-то вроде:

на /dev/sdb2 буд ет экспортироваться не может быть найден

и показали консоль (пакет initramfs).

Я обнаружил, что мой компьютер выключателях название жесткого диска с sda на SDB в наличии флэш-накопитель (который будет ПДД, а при последовательных флешек показывает, как шурс и т. д.). Поэтому при отсутствии флэш-диск, система не загружается и показывает консоль ошибок и initramfs.

Как исправить ошибку в маркировке дисков?

Пожалуйста, помогите.

+695
user10869577 26 июл. 2018 г., 14:28:13

Вы можете выполнить команду АПТ политики и политики склонны MySQL-клиента и запустить, если вы хотите АПТ политики MySQL-клиента-5.5

Вы также должны установить pastebinit АПТ устанавливаем pastebinit и выполните две команды Кот /и т. д./кв/источников.список | pastebinit -б paste.debian.net

также ВАС МОЖЕТ ЗАИНТЕРЕСОВАТЬ сайт Pastebin выход АПТ политики и MySQL-клиента-5.5 кв. политике MySQL-клиента

Вы, вероятно, нужно сделать небольшое закрепление apt, но мы будем решать это. Также не забудьте очистить кэш АПТ чистые.

+692
jayesh varotariya 27 февр. 2017 г., 17:44:27

Вы можете попробовать использовать команды загрузки адреса со следующим параметром ядра: параметр init=/бин/Баш

+667
alexalexalex 4 окт. 2011 г., 04:04:00

Просто запустите:

$ shopt extglob

Она вернется в текущее состояние:

$ shopt extglob 
extglob на
$ shopt -у extglob 
$ shopt extglob 
extglob от

Показать все варианты, просто запустите:

$ shopt
+603
csherbak 16 июн. 2018 г., 02:22:10

Может быть, стоит взглянуть на эту ВИМ плагин http://www.vim.org/scripts/script.php?script_id=1697

+582
sangwanchai 30 дек. 2012 г., 16:35:34
СЭД '/введите свой пароль.*/Файл {п;п;н;д;}' 
+568
Avi Keshari 19 мая 2012 г., 10:01:13

У вас есть алса-инструменты установлены? Я Ахд подобной проблеме и устанавливать их решал. Попробуйте:

суда apt-получить установку алса-инструменты
+523
adrian close 8 июн. 2013 г., 10:29:24

Я пытаюсь получить доступ к удаленному серверу: вот моя команда СШ приведенный ниже-

битеч@hdpedge01:~/.СШ$ СШ [email protected] -я ~/.по SSH/id_rsa -в

Я получаю отказано в доступе ошибка:

OpenSSH_6.0p1 в Debian-4+deb7u6, в OpenSSL 1.0.1 Т 3 мая 2016
debug1: чтение данных конфигурации в /etc/СШ/файле ssh_config
debug1: в /etc/СШ/файле sshd_config строку 19: применение варианты *
debug1: подключение к 151.252.41.105 [151.252.41.105] порт 22.
debug1: установленное соединение.
debug1: идентичность файл /home/битеч/.по SSH/id_rsa тип -1
debug1: идентичность файл /home/битеч/.по SSH/id_rsa-Серт введите -1
debug1: Удаленная версия протокола 2.0, пульт дистанционного версия программы OpenSSH_6.6.1p1 Убунту-2ubuntu2.8
debug1: матч: OpenSSH_6.6.1p1 Убунту-2ubuntu2.8 ПЭТ пакет OpenSSH*
debug1: включение режима совместимости для протокола 2.0
debug1: локальное строке версия протокола SSH-2.0-OpenSSH_6.0p1 в Debian-4+deb7u6
debug1: SSH2_MSG_KEXINIT послал
debug1: SSH2_MSG_KEXINIT получил
debug1: KEX по: сервер->клиент aes128-CTR с помощью HMAC-MD5 и нет
debug1: KEX по: клиент->aes128-CTR для сервера код HMAC-MD5 и нет
debug1: отправка SSH2_MSG_KEX_ECDH_INIT
debug1: ожидая SSH2_MSG_KEX_ECDH_REPLY
debug1: сервер ключа узла: ДСА 28:64:63:В2:91:98:78:БД:Ф9:4Ф:В3:32:Ф1:А4:39:27
debug1: хост 151.252.41.105 известна и совпадает с ключевой узел ДСА.
debug1: найден ключ в /Home/битеч/.СШ/если Вы:3
debug1: ssh_dss_verify: правильная подпись 
debug1: SSH2_MSG_NEWKEYS послал
debug1: ожидая SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS получил
debug1: SSH2_MSG_SERVICE_REQUEST послал
debug1: SSH2_MSG_SERVICE_ACCEPT получил
debug1: проверки подлинности, который может продолжаться: открытый ключ
debug1: Следующий способ проверки подлинности: открытый ключ
debug1: попытка закрытого ключа: /дома/битеч/.по SSH/id_rsa
debug1: key_parse_private_pem: PEM_read_PrivateKey не удалось
debug1: читать УГР закрытого ключа сделано: тип <неизвестно>
Введите парольную фразу для ключа '/дома/битеч/.по SSH/id_rsa':
debug1: key_parse_private_pem: PEM_read_PrivateKey не удалось
debug1: читать УГР закрытого ключа сделано: тип <неизвестно>
Введите парольную фразу для ключа '/дома/битеч/.по SSH/id_rsa':
debug1: key_parse_private_pem: PEM_read_PrivateKey не удалось
debug1: читать УГР закрытого ключа сделано: тип <неизвестно>
Введите парольную фразу для ключа '/дома/битеч/.по SSH/id_rsa':
debug1: key_parse_private_pem: PEM_read_PrivateKey не удалось
debug1: читать УГР закрытого ключа сделано: тип <неизвестно>
debug1: нет больше методов проверки подлинности, чтобы попробовать.
Отказано в доступе (открытый ключ).

Я не понимаю, как отладить эту ошибку. Я пытался изменить пароль через SSH-ключей -Ф id_rsa -п команду, но это всегда дает мне плохие фразу об ошибке.

+523
Rubicone 18 нояб. 2019 г., 23:58:32

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

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

СЭД -е ':looplabel' -е 'с/\(пуск.*\)|\(.*|\[Конец\)/\1 \2/;т looplabel'

Или, используя более короткий метка цикла:

СЭД -е ':т' -е 'с/\(пуск.*\)|\(.*|\[Конец\)/\1 \2/;ТТ'
+421
Philip Schlesinger 8 нояб. 2019 г., 08:53:34

Попробуйте использовать fontopia. Это растровый редактор шрифтов для GNU/Линукс. Он работает с ПСФ, СР, сырые, и PCF шрифты. Существует множество вариантов глифов для редактирования, импорт и экспорт таблиц Юникода, и многое другое.

+391
user222970 16 февр. 2019 г., 08:09:30

Я нашел эту информацию про мелирование tmux поиска :

Согласно developer1, это не возможно в настоящее время в tmux. http://sourceforge.net/mailarchive/message.php?msg_id=27427973

Источник:как выделить результат поиска в tmux?

+388
Flying Lawnmowers 1 нояб. 2017 г., 22:22:04

У меня был тот же вопрос, поэтому я решил провести несколько экспериментов с использованием буферов ввода/вывода и учета.

Я написал простую программу, которая просто запрашивает большой объем памяти и заполняет ее данными:

#включить <Танос.ч>
#включить <строка.ч>
#включить заголовочный файл <stdio.ч>

тап_п() {
 для (int я = 0; я < 5000; я++) {
 пустота* ПТР = функция malloc(1000000);
 функцию memset(ПТР 42, 1000000);
}

 // Зависнуть на некоторое время, чтобы позволить нам проанализируйте /тез.Докл.
ставит("готовая");
в то время как(1);

 возврат 0;
}

Потом я начал бегать его, увеличив объем памяти запрашивается при каждом запуске (5г, 10г, 12г и так далее), и наблюдал за процессом' в/proc/$PID в/Ио и в/proc/$PID в/состояние. Следующие параметры из файла/proc/$PID в/Ио остаются одинаковыми для всех работать (и это было ожидаемо, так как эти параметры показывают системных вызовов на уровне ввода-вывода статистики):

rchar: 1948
из wchar: 9
syscr: 7
syscw: 1

Следующие два параметра, которые (в соответствии с ядра procfs документации) показать фактическое дискового ввода-вывода, вызвана процесса, были поставлены нули (вполне вероятно, что программа Образ был уже кэшированы в памяти от предыдущих казней, поэтому для execve не вызовут настоящий дискового ввода-вывода):

read_bytes: 0
write_bytes: 0

Когда я был близок, чтобы размер оперативной памяти (16Г), ядра начали поменять память программы в достаточно больших количествах (~4Г):

$ кошка /proc/$PID в/статус | VmSwap грэп 
VmSwap: 3908152 КБ

В то же время какие-то странные значения появились в файле/proc/$PID в/Ио:

read_bytes: 307200
write_bytes: 0

Ненулевое значение read_bytes появился, когда ядро постоянно менялись, и осталась практически на прежнем уровне (~300к), а количество буферов, используемых в процессе за каждый последующий запуск (пока он не начал отсчет OOMKiller).

Я повторил эти опыты несколько раз, и картина осталась прежней: write_bytes был ноль все время, и read_bytes изменяется от нуля до какой-то небольшой (относительно памяти количество выгружается) стоимость около 300-400к.

Исходя из этого, я думаю, что в/proc/$PID в/Ио не учитывает фактическое своп читает и пишет, но на нее приходится несколько внутренних ядра деятельности, вызванные подкачки использования.

+379
thet 9 дек. 2018 г., 19:17:18

^ указывает на начало строки; после двух алфавитных символов (прописные или строчные), за которыми следуют две цифры в диапазоне 1-9, за которым следует любое количество символов.

+315
Justin Mai 16 мая 2013 г., 21:52:50

Шаблон подстановки расширяется оболочки до вызова команды. Увидеть г-мужски ответить за полное объяснение.

Большинство снарядов требуется какая-либо форма промежуточной команду для того, чтобы применить преобразование текста на матчи. ЗШ предлагает возможность превращать спички на лету с Глоб квалификаторы:

  • е или + , чтобы выполнить код для каждого матча, который может изменить матч, изменяя ответить строку (или даже изменить количество матчей, изменяя ответить arrray)
  • : последовала история расширения производства модификатора применять некоторые строить-в преобразованиях

Примеры:

команды mkdir */(:s:/:/test:) # использует тот факт, что каждый матч заканчивается /, который его заменяет /тест
команды mkdir *(/е:ответ+=/тест:)
+300
Optio 23 окт. 2018 г., 14:47:59

Предполагая, что вы имели в виду файлы-контейнеры...

Недостатком таких контейнеров является то, что их выживание зависит от внешней файловой системы. Файлы, которые большие, как правило, в конечном итоге, используя несколько фрагментов; если вы потеряете внешнюю файловую систему для любого вида коррупции, вы не сможете восстановить контейнеры либо, даже если исходные данные из этих контейнеров все еще цела. Не зная, где находятся отдельные фрагменты, ты смотришь на неразрешимую загадку. (Находить заголовок Лукс в исходных данных только даст вам первый кусок.)

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

Кроме того, все записи передаются через внешнюю файловую систему, что может повлиять на производительность немного.

Есть лучшие альтернативы, например, ЛВМ, которая позволяет создавать объемы произвольных размеров, дефрагментированный, и он сохраняет метаданные и истории, так что даже если вы должны были потерять как логического тома, у вас есть некоторые шансы на выздоровление.

Помимо создания резервной копии заголовка, что я должен сделать, чтобы убедиться, что файлы в Лукс контейнер всегда будут доступны?

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

+227
terencekwt 3 февр. 2019 г., 12:55:58

enter image description here

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

И после того как я проверить логи Он сказал мне по умолчанию.цели задачи:

Не удалось запустить по умолчанию.цель: сделка является деструктивным

+208
Cathy Kane 12 июл. 2016 г., 13:40:52

Предполагая, что ваши аргументы в "[email protected]", Я считаю, что-то вроде:

ивала "вставить $(е "<( кат-д-Ф1 %г ) " "[email protected]")"

должны сделать это.

+165
SabaRish 16 апр. 2017 г., 21:27:58

Это не осуждается, но обратные апострофы (`...`)- это устаревший синтаксис требует только очень старые из не-POSIX-совместимая Борна-оболочек и $(...) - это POSIX и более предпочтительным по нескольким причинам:

  • Обратные слеши (\) внутри обратные кавычки обрабатываются в неявной форме:

    $ Эхо "`эхо \\а`" "$(эхо \\а)"
    В \а
    $ Эхо "`эхо \\\\а`" "$(эхо \\\\а)"
    \а \\а
    # Заметьте, что это верно для *одинарные* слишком!
    \ \ не $ Foo= "Эхо""; бар=$(Эхо '\\'); Эхо "Foo-это $Foo, бар - $ - бар" 
    Foo-это \ бара \\
    
  • Вложенное цитирование внутри $() является гораздо более удобным:

    Эхо "х $(СЭД ... <<<"$г")"
    

    вместо:

    Эхо "х `СЭД ... <<<\"$г\"`"
    

    или писать что-то вроде:

    IPs_inna_string=`в awk "/\кот /и т. д./\моеимя`/"'{печати 1$}' /и т. д./хостов
    

    потому что $() использует совершенно новый контекст для закавычить

    который не портативный, как Bourne и Korn оболочек требует, чтобы эти обратные косые черты, в то время как bash и тире нет.

  • Синтаксис для вложения команду заменами проще:

    х=$(команда grep "$(каталог "$путь")" файл)
    

    чем:

    х=`команда grep "\`имя_каталога \"путь\"\` файл"`
    

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

    Еще несколько примеров:

    Эхо " Эхо " ЛС` # неверны
    \ Эхо `Эхо \`ЛС` # правильно
    Эхо $(Эхо $(ЛС)) # правильно
    
  • Это решает проблему непоследовательного поведения при использовании backquotes:

    • Эхо '\$х' выходы \$х
    • Эхо " Эхо "\$X"с выходами
    • Эхо $(Эхо '\$х') выходы \$х
  • Обратные кавычки синтаксис имеет исторические ограничения на содержание встроенных команд и не может справиться с некоторыми допустимыми сценариями, которые включают backquotes, а в новом - $() форма, может обработать любые допустимые встроенных скриптов.

    Например, в противном случае действует встроенные скрипты не работают в левой колонке, но делать работу постандарту IEEE:

    Эхо ` Эхо $(
    кошка <<\ВФ кот <<\ВФ
    а здесь-док " с " Здесь-док с )
    ВФ ВФ
    ` )
    
    
    Эхо ` Эхо $(
    Эхо АВС # комментарий с Эха Азбука # комментарий с )
    ` )
    
    
    Эхо ` Эхо $(
    Эхо ""Эхо")'
    ` )
    

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

Источник: почему $(...) предпочтительнее, чем `...` (обратная кавычка)? в BashFAQ

См. также:

+147
Matyas Koszik 25 сент. 2018 г., 14:14:58

Этот небольшой скрипт будет цикл через каждый файл в текущем каталоге и сравнить ее отметку времени последнего изменения ассортимента, который построен в начала и конца метки времени (здесь, 10 октября). Соответствующие файлы будут добавлены в файлы массиве, и если есть какие-то файлы в массив, он призывает превратить на них. Настройки -gt и 0 до -ГТ 1 , Если вы хотите иметь по крайней мере два файла (или более).

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

#!/usr/Бен/ОКР Баш

старт=$(дата +%З -Д '10 2016 окт')
конец=$(дата +%з -д-11 октября 2016')

файлы=()
для F в *
делать
 д=$(стат -с%з "$ф")
 [[ $д -Ге $старт ]] && [[ $д -Ле $конец ]] && файлы+=("$Ф")
сделано

[[ ${#файлы[*]} -ГТ 0 ]] && конвертировать -задержка 10 -петля 0 "${файлы[*]}" animation.gif

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

старт=$(дата +%З -Д '10 2016 окт')
конец=$(дата +%з -д-11 октября 2016')
файлы=()
для((Я=начало;Я<=конец;я++)); у [[ -ф "${я}.форматы JPG" ]] && файлы+=("${я}.в JPG"); сделано
[[ ${#файлы[*]} -ГТ 0 ]] && конвертировать -задержка 10 -петля 0 "${файлы[*]}" animation.gif
+146
n8udd 27 сент. 2014 г., 02:23:24

Чтобы удалить, например, 4-ю строку снизу с помощью СЭД:

ТАС ввода | ООО '4Д' | ТАС

Чтобы перезаписать входной файл:

tmpfile=$(mktemp)
ввод ТАС | е 4Д' | оду > "$tmpfile" && МВ "$tmpfile" ввод
+126
jookerff 23 нояб. 2010 г., 07:15:02

для procmail является проблематичным Филипп Гюнтер (и, вполне возможно, в данном случае бесполезно, так как .пересылать файлы или эквивалент смогут отправить письма напрямую в программу, пропуская, таким образом, излишне сложности с procmail).

Резюме: удалить procmail и портов; код не является безопасным и не следует использовать в качестве основы для дальнейшей работы.

Как люди могут знать, я был сопровождающим перед procmail так, еще в конце 1990-х, хотя 2001.

Таким образом, некоторые другие решения могут быть целесообразны; это зависит от почтового транспортного агента (MTA). Другим вариантом могло бы быть использование МТА для доставки в локальный файл или IMAP, то есть ваша программа парсинга этого файла или IMAP. Это бонус продолжает принимать по электронной почте и сохранение его где-то; что происходит, когда ваша программа глючит или иначе удается запустить? Меньше проблем, чем во время доставки почты...

Эксим

Вероятно, либо копию почтового сервера sendmail .вперед метода или выяснить, как сделать это правильно в Eximese. (Я сделала оборт, так как он принимает много времени, чтобы копаться в Эксим документы.) Есть elspy если вы хотите сделать по-СМТП-время сканирования программа моды...

Постфикс

https://serverfault.com/questions/258469/how-to-configure-postfix-to-pipe-all-incoming-email-to-a-script#258491

Гоша, что кажется долгим и сложным.

С sendmail

Установить файла запись пересылать всю почту для домена (а также .домен на субдомены, при необходимости) в местной пользователей, здесь ipetrov вместо

example.com местные:ipetrov вместо
.example.com местные:ipetrov вместо

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

$ кошка ~ipetrov вместо/.вперед
"|файле/etc/smrsh/процесс"
$ 

которая может быть как простой, как

$ кот в /etc/smrsh/процесс
#!/Бен/ш
кошка >> /главная/ipetrov вместо/allmails
$ 

потому что письма подается на стандартный поток ввода (это может быть плохо, если несколько экземпляров этого процесса запустить одновременно; предположительно ваш фактический код обрабатывает такие гонки или иное идемпотентных...верно?). Этот метод может также работать на любой другой MTA, который копирует с sendmail вперед синтаксис, предполагая, что вы можете сделать в МТА чтобы перенаправить все сообщения конкретного пользователя.

Это предполагает файла поддержка, confFORWARD_PATH установлено, что sendmail-это позволило запустить код (см. smrsh(8) обратите внимание, что некоторые производители могут изменить каталог без обновления документации (бегущие строки /на/путь/к/smrsh | fgrep / может поможет)) и что-то вроде SELinux можно не ломать вещи.

Еще один вариант для sendmail заключается в использовании программа, таких как MIMEDefang и выполнение бизнес-логики необходимо есть. (Различные другие МТА поддерживает программа, или что-то вроде этого.)

Простой передачи почты демон протокола (в OpenBSD)

От взгляда на smtpd.конф(5) (обновлен для OpenBSD 6.4 изменения)

акция "mymda" Мда "/путь/к/вашему/команда" пользователя jdoe
матч от любых действий домен example.com "mymda"
+101
Saxosus 18 окт. 2010 г., 04:50:05

Я пытаюсь заменить строку

"['Б', 170], <С\!--Ma_P_ST1_vCPU_Used-->" 

с

"['Б', 555], <с\!--Ma_P_ST1_vCPU_Used-->" 

в HTML-файл.

Это то, что я пробовал.

СЭД "Ы/['Б', 170], <\!--Ma_P_ST1_vCPU_Used-->/['Б', 170], <\!--Ma_P_ST1_vCPU_Used-->/" Code_edit.html

Пробовал с несколькими маскировки. Не помогает.

+84
user12045 23 июл. 2015 г., 22:17:33

Это трудно и возможно лишь с серьезными ограничениями. Географической информации интернет-пользователей, как правило, недоступны. Ближайший один получает, чтобы посмотреть свой IP в гео-IP базы данных. Такие бесплатные базы данных только дать грубую классификацию (страна); все остальное, вероятно, довольно дорогие.

Более того, что: IP-адреса могут быть подделаны, сотового телефона пользователи часто "находится" в регионах, весьма отдаленных от их фактического положения и VPN и подобные сервисы позволяют пользователям скрывать свой реальный IP-адрес, одурачивание любой IP-местоположение на основе методов.

Короче говоря: если у вас нет очень веских причин для этого И знаете, что вы делаете, я бы не советовал этого делать.

Если вам необходимо реализовать такую вещь (нет!), в iptables будет хорошим вариантом. Просто искать в учебнике или прочитать Man-страницу (с акцентом на вариант для сопоставления).

+33
Abdoulaye ba 27 мая 2018 г., 03:07:06

У нас есть сервер компилятора RHEL6, который был построен, используя старый доморощенный построить платформу. Команда, которая построена на платформе был расформирован, а все члены перешли на. Итак, мы пытаемся выяснить все, что они сделали, чтобы реализовать старый "стандарт безопасности".

Всякий раз, когда узел перезагружается, несколько файлы перезаписываются (в/etc/файл resolv.Conf, в файл /etc/файл nsswitch.conf и т. д.). Мы искали систему для экземпляров строки в этих файлах, и мы не можем их найти. Насколько я могу сказать, хозяин не агент марионетка (старая платформа была построена на кукол). Хозяев бы вызвать марионетку один раз построить, чтобы снести конфиги от кукловода, но это все. Нет кукол аудита на месте.

Установлен NetworkManager не не, а узел работает статическая конфигурация сети, поэтому он не должен потянуть информацию от DHCP.

Я не вижу никаких заметных процессов, которые запускаются во время запуска в /etc/инит.д, и я также проверил каждый уровень. Глядя на логи загрузки я не вижу ничего, что кажется, что это может быть причиной проблемы.

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

Есть ли способ, чтобы отслеживать процессы, которые пытаются получить доступ к файлу? Или пытаться изменить файл? Если я могу сделать это, я мог бы легко отследить, какой процесс выполняется, изменяет параметры, а также, надеюсь, отследить каждый файл, который становится измененной.

+18
Vamshi Chandra 3 июн. 2015 г., 00:56:18

Показать вопросы с тегом

$200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available blue chew viagra scam buy viagra buy viagra online buy viagra online canada pharmacy buy viagra online without script canada pharmacy viagra generic canadian pharcharmy online viagra canadian viagra canadian viagra without a doctor prescription cheap viagra cialis vs viagra cost of viagra female viagra female viagra pills free viagra free viagra samples generic viagra generic viagra 100mg generic viagra available generic viagra canada price generic viagra online pharmacy generic viagra sildenafil citrate generic viagra without a doctor prescription herbal viagra how does viagra work how long does viagra last how much does viagra cost how to take viagra for maximum effect i took viagra mom levitra vs viagra mom gives son viagra natural viagra natural viagra alternatives that work natural viagra substitute nizagara 100 mg vs viagra online viagra online viagra without subscription over the counter viagra real life viagra demonstration revatio vs viagra side effects of viagra sildenafil sildenafil 100mg sildenafil 20 mg sildenafil 20 mg tablet sildenafil 20 mg tablet vs viagra sildenafil citrate sildenafil citrate 100mg sildenafil citrate 20 mg sildenafil coupons sildenafil dosage sildenafil dosage recommendations sildenafil generic sildenafil side effects sophia viagra sophia viagra bikini sophia viagra hot stendra vs viagra stepmom gives son viagra viagra viagra 100mg viagra before after photo actual viagra boner viagra canada online pharmacy viagra coupon viagra coupons viagra coupons from pfizer viagra dosage viagra dosage recommendations viagra erection viagra erection after ejaculation viagra for men viagra for sale viagra for sale on amazon viagra for women viagra generic viagra generic availability viagra generic release date viagra in action viagra on line viagra online viagra online canada pharmacy viagra online pharmacy viagra patent expiration viagra pill viagra pills viagra porn viagra prank viagra prices viagra samples viagra sex viagra side effects viagra substitute viagra vs cialis viagra without a doctor prescription viagra without doctor prescription what is viagra when will generic viagra be available $200 cialis coupon 10 mg tadalafil generic 5 mg cialis over the counter at walmart best price for tadalafil 20 mg buy cialis buy cialis generic tadalafil buy cialis online buy cialis online without script buy tadalafil buy tadalafil online canadian cialis online pharmacy canadian pharmacy cialis cheap cialis cheap cialis generic cialis cialis 20 mg best price cialis 20mg cialis 30 day sample cialis 30 day trial coupon cialis and alcohol cialis before and after cialis canada cialis canada pharmacy online cialis cost cialis coupon cialis coupons cialis coupons printable cialis dosage cialis dosage information cialis for daily use cialis for sale cialis free trial cialis free trial voucher for cialis cialis generic cialis generic release date cialis generic tadalafil cialis lowest price cialis online cialis online pharmacy cialis over the counter cialis over the counter at walmart cialis patent expiration date extended cialis picture testimonials cialis pills cialis price cialis prices cialis reviews cialis side effects cialis tadalafil cialis tadalafil 20 mg cialis vs viagra cialis vs viagra which is better cialis without a doctor's prescription cialis without doctor prescription cost of cialis cost of tadalafil generic at walgreens coupon for cialis by manufacturer does cialis lower blood pressure generic cialis generic cialis at walmart generic cialis canada generic cialis canada pharmacy generic cialis from india generic cialis tadalafil generic tadalafil generic tadalafil 20 mg is there a generic for cialis online cialis purchasing cialis on the internet side effects for cialis side effects for tadalafil side effects of cialis tadalafil tadalafil 20 mg tadalafil 20 mg canadian drug stores tadalafil 20mg tadalafil 20mg lowest price tadalafil 5 mg tadalafil 5mg tadalafil cost at walmart tadalafil dosage tadalafil generic tadalafil generic at walgreens tadalafil generic best prices tadalafil online tadalafil price tadalafil side effects tadalafil tablets tadalafil without a doctor's prescription viagra vs cialis viagra vs cialis vs levitra warnings for tadalafil