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

Я работаю над моей командной строке PS1 и я хочу вывести количество файлов в текущем каталоге.

Я пишу рабочий код, но,
Есть ли способ упростить этот (избыточные) сценарий?

$(ЛС-л | команда grep ^- | туалет -л) $(если [ $(ЛС-л | команда grep ^- | туалет -л) -эквалайзер 1 ]; затем Эхо "файл", иначе Echo "файлы"; интернет)

Моя цель-вывести количество файлов в папке и если заявление нужно обращаться во множественном числе, для управления двух случаях:

  • Файл 1
  • 2 файлов

например, моя папка ~ содержит три файла, так что скрипт должен напечатать слово "файлы"; мой ~/Desktop имеет только один файл, так что скрипт должен напечатать "файл"

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

+200
Vamsi Krishna B 10 февр. 2010 г., 13:23:09
38 ответов

У меня есть XML-файл (client_23.xml) , в котором мне нужно изменить одну строку и удалить один целый тег из него, поэтому я придумал Perl-скрипт:

В мой XML-файл, у меня есть такой блок. Там будет только один экземпляр <привет>collect_model = 1</Здравствуйте> в мой XML-файл:

<мира>
 <привет>collect_model = 1</Здравствуйте>
 <привет>enable_data = 0</Здравствуйте>
 <привет>session_ms = 2*60*1000</Здравствуйте>
 <привет>max_collect = string_integer($экстракт("max_collect"))</Здравствуйте>
 <привет>max_collect = родительства(max_collect, max_collect, 1.0e99)</Здравствуйте>
<привет>вывод('{')</Здравствуйте>
</мира>

Мне нужно изменить эту строку, как это: <привет>collect_model = 0</Здравствуйте> так что мой весь блок должен быть такой после изменения:

<мира>
 <привет>collect_model = 0</Здравствуйте>
 <привет>enable_data = 0</Здравствуйте>
 <привет>session_ms = 2*60*1000</Здравствуйте>
 <привет>max_collect = string_integer($экстракт("max_collect"))</Здравствуйте>
 <привет>max_collect = родительства(max_collect, max_collect, 1.0e99)</Здравствуйте>
<привет>вывод('{')</Здравствуйте>
</мира>

Второе, что мне нужно, чтобы удалить весь этот тег из XML-файл:

<derta-конфигурация>
<данные пользователей>2000</данных пользователей>
<тест-пользователей>2000</тест-пользователей>
 <атрибуты>Привет мир</атрибутов>
<клиент-типы>Клиент1</модели-типы>
<цель>цене.мира</цель>
</derta-конфигурация>

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

Перл-0pe "с#<ивал>collect_model = 0</ивал>#<ивал>collect_model = 1</ивал> с#<derta-конфиг>.* </derta-конфигурация>##см; с#<функция>\х*<имя>DUMMY_FUNCTION.+?</функции>#$файл#см" client_"$client_id".в XML - > "$слово"_new_file.xml

Так что я думаю, мы можем сделать это в shell-скрипт, вместо того, смысл снять два вышеупомянутых вещей через shell-скрипт, а затем вывод, что мы можем пройти в мой скрипт на Perl, который работает на третьем шаге. Так что мы можем передать выход из shell-скрипт, который будет удалить приведенные выше две вещи для меня это ниже скрипт на Perl? Возможно ли это сделать?

Перл-0pe "с#<функция>\ы*<имя>DUMMY_FUNCTION.+?</функции>#$файл#см" client_"$client_id".в XML - > "$слово"_dyn_model.xml

Здесь $client_id - это 23 и $слово - это азбука.

Я просто пытаюсь сделать эту работу, и то, что самым простым способом будет сделать для меня. Я буду иметь только один экземпляр все вышеуказанные две вещи, которые я упомянул.

+999
webodel 03 февр. '09 в 4:24

Я предполагаю, что вы хотите минимальный среду рабочего стола LXDE. Для этого, отключите все, кроме "стандартные системные утилиты" в tasksel для того, можно снять, что тоже, если вы хотите, хотя некоторые из них полезны и они занимают мало места.

Потом после загрузки новой программы командной строки только система (как root, SU или sudo в зависимости от того, как ты настроен) вопрос:

apt-получить установку рабочего стола LXDE-основной

Вы должны быть хорошо идти.

+976
Robert Rocca 30 мая 2017 г., 08:44:05
Другие ответы

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


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

Да, вы можете создать пароль-меньше счета.

судо команды useradd -м гость
судо пароля-д оценки

Важно, хотя, чтобы убедиться, что нет сети демонов, как демон позволит иметь доступ к паролей учетных записей. Это обычно по умолчанию, но лучше проверить. Убедитесь, что PermitEmptyPasswords нет/false в файл/etc/протокол ssh/sshd_config В или просто попробовать и СШ на гостевую и увидеть, если она позволяет. Там могут быть и другие демоны, как Самба, вы должны проверить, как хорошо. Если вы хотите запретить пользователю доступ к локальным файлам, вы можете либо пойти на многое, как создание изолированной среды с pam_chroot.так что и как, или вместо, просто ограничить ваши данные для вас. Использовать вашу домашнюю директорию не дает "другим" класса для чтения файлов и блокировка любых других местах, вы думаете, что вам нужно.

+954
Russian iBear 5 апр. 2014 г., 14:44:08

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

Также убедитесь, что у вас есть разумное губернатор масштабирование процессора. Губернатор контролирует частоту CPU. Ваш выбор:

  • Производительность поддерживает процессор на максимально возможной частоте
  • Режим экономии энергии держит процессор на низкой частоте
  • Пользовательское экспорт имеющихся сведений о частоте на уровне пользователя (через /sys файла системой) и разрешения пользователя-пространство контроля частоты процессора
  • По требованию масштабирование частоты процессора в соответствии с загрузкой процессора (как и в пространстве частоты демоны, но в ядре)
  • Консервативное ведет себя как OnDemand, а увеличивает частоту шаг за шагом

С помощью OnDemand, процессор будет работать только на максимальной скорости при необходимости. В идеале, это будет полностью прозрачна для вас, то машина будет просто работать так быстро, как необходимо для текущей задачи. Чтобы активировать его делать

судо Эхо регулятора OnDemand > /системы/устройства/системы/CPU/cpu0/подсистема cpufreq/scaling_governor

Если я помню правильно, Юпитер апплет может контролировать фанатов, но я не использовал его в то время.

Есть некоторые ноутбуки бренд-конкретные утилиты для Dell и устройствах ThinkPad, но они могут работать для вашего ASUS:

  1. Попробовать i8kutils. Этот пакет будет устанавливать определенные модули и программы, которые являются специфическими для любителей Dell и весьма вероятно, не работать на ноутбуках ASUS. Если это произойдет:

    судо apt-получить установку i8kutils команды modprobe серии i8k i8kfan 0 1

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

Отказ от ответственности: я использовал только данные с их соответствующих брендов ноутбуков. А в худшем случае, вероятно, что они просто не будут работать, насколько я знаю, они могут привести к взрыву и проделать дыру в пространстве времени. Я никогда не пробовал на Dell или не компьютере ThinkPad, так что попробовать их на свой страх и риск.


Пару других вещей, которые вы могли бы попробовать это

  1. (источник) в меню grub нажать е и перейти к строке с всплеск (или nosplash) и вставить pcie_aspm=сила и i915.i915_enable_rc6=1

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

  2. (источник) добавить acpi_osi="Linux", а на GRUB_CMDLINE_LINUX переменной /и т. д./По умолчанию/харч.

+911
user3380666 11 янв. 2013 г., 21:31:13

В этом случае, вы можете полностью обойти вопрос со ссылкой на прохождения сценария sed на стандартный ввод. СШ маршруты местный стандартный ввод в удаленную процесс, судо просто оставляет ее открытой, и sed может прочитать скрипт вывод. Вы можете передавать контент для ввода в документ.

для меня-кошачий хозяев; делать
 СШ "$я" 'судо СЭД -Ф - ...' <<'ВФ'
с/( upload_server = ).*/\1("$а", 10051)/г
ВФ
сделано

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

для меня-кошачий хозяев; делать
 СШ "$я" судо ш <<'ВФ'
СЭД 'с/( upload_server = ).*/\1("$а", 10051)/г' ...
ВФ
сделано

Не понятно из вашего вопроса, являетесь ли вы намеревались вставить "$а" в файле конфигурации, или "что-то" , где значение переменной а в местном Shell-Это что-то. Если вы хотите обратиться к локальной переменной, а затем использовать вот документ с интерполяцией, и защитить $\` в здесь документ с обратным Слэшем. Обратите внимание, что из-за разбора по СЭД и удаленного оболочки во втором фрагменте, значение переменной не должно содержать символы \/' или символом новой строки.

 СШ "$я" судо ш <<ВФ
СЭД 'с/( upload_server = ).*/\\1("$а", 10051)/г' ...
ВФ
+864
C nim 3 янв. 2013 г., 19:19:59

Это также случилось со мной, когда было что-то не так с настройкой разрешения DNS. Проверить, что есть серверы, перечисленные в файле/etc/файл resolv.конф (также, попробовать альтернативные DNS-серверы). Если вы используете systemd не устранена, убедитесь, что файл/etc/файл resolv.конф - это симлинк на /выполнения/systemd в/решения/файл resolv.конф.

+852
Abdul Hannan 9 авг. 2011 г., 15:57:53

Я довольно новыми для Linux и изолированной мой NAS с языка архитектуры и попытался зацикливание устройства:

losetup -Ф
losetup: не удалось найти устройство петли. Может быть, это ядро не знаю
 об устройстве петли? (Если да, перекомпиляции или `modprobe петля'.)

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

Так что из-за языка или есть другие проблемы?

Моя версия ядра 3.2.26.

+845
Christophe Wagner 28 июл. 2010 г., 17:36:12

Я запустил гидру на Rasppberry ПИ. Были некоторые проблемы с программой, но помимо этих, есть скрытая утечка памяти в программе. Источник довольно большой и не могу найти проблему. К сожалению, при достижении лимита памяти, программа не краш - вместо этого он возвращает кучу сообщений об ошибках. Когда я говорю кучу, я имею в виду сотни. enter image description here

Поэтому я подумал, что если я не могу ООН-выделить память в рамках программы, я, возможно, потребуется, чтобы сбросить весь процесс. Так что мне нужно:

  1. Охранник процессе использования ресурсов
  2. Остановить процесс изящно (аналог клавиш CTRL+C ипрограмма говорит:"поступил сигнал 2" тогда)
  3. Начать процесс снова

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


Если вы знаете, Гидры и вы хотите узнать, какие ошибки я нашел хоть что-то в коде:

[Ошибка] вилка для детей не удалось: не удалось выделить память
[Ошибка] socketpair создание не удалось: слишком много открытых файлов

Вторая часть ошибок происходит от perror с системной функции. Это последняя ошибка.

+823
Craig Gidney 22 мая 2011 г., 01:03:12

Файл syslinux без модулей

файл initrd.ИМГ ldlinux.с32 корень ldlinux.sys .ГФС файле syslinux.cfg для vmlinuz

файл syslinux.cfg для

Linux по умолчанию
Подскажите 0
Тайм-аут 0
Метки Линукс
 Vmlinuz Линукс 
 И initrd initrd он.ИМГ
 Добавить петлю=лейбл=киоска rootfstype=файл корень=/петли/корень.ГФС загрузки=петля РО тихий Уровень=3 РД.systemd не.show_status=автоматический РД.в udev.log_priority=3 разъем VGA=текущая Вт.global_cursor_default=0

Как удалить это сообщение?

Файл syslinux 6.03 Эдд 20150813 Авторское право (c) 1994-2014 г. Питер Анвин соавт
+822
Michelle Harris 2 авг. 2014 г., 19:50:24

Я ниже скрипт:

#!/бин/Баш
кошка list.txt | при МФС=" читать -Р; 
#Удалить все недопустимые символы
делать
 а=${а// /_}
 а=${а// /_}
а=${а//\'/}
а=${а//-/_}
а=${а,,}
путь_к_файлу="/ "приложения"/"
б=$путь_к_файлу долларов".КШМ"
 Эхо $б
сделано

Ожидаемые результаты должны быть:

/программы/ahold_region
/программы/alb_sfy_region
/программы/awg_census_region
/программы/bjs_total_ta
/программы/delhaize_region
/программы/dollar_value_area

Реальные результаты:

.csvlications/ahold_region
.csvlications/alb_sfy_region
.csvlications/awg_census_region
.csvlications/bjs_total_ta
.csvlications/delhaize_region
.csvlications/dollar_value_area

Похоже, Баш использует .КШМ заменить первые 4 символа в $путь_к_файлу.

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

+822
undu 22 июн. 2017 г., 06:59:27

Одно слово: журналов.

http://www.thegeekstuff.com/2011/05/ext2-ext3-ext4/

Как вы говорите о встроенных im предполагая, что Вы имеют некоторую форму флэш-память? Производительность очень колючие на журналируемую ext4 на флэш. Ext2 является рекомендуемой.

Вот хорошая статья об отключении журналирования и настройки ФС без журналирования, если необходимо используйте ext4: http://fenidik.blogspot.com/2010/03/ext4-disable-journal.html

+808
Zeynep Adiguzel 21 апр. 2016 г., 16:45:11

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

команду ldconfig -п | libcppunit грэп

возвращается пустая строка.

Чтобы установить его, я бежал (не имеют корневой доступ):

./настроить --префикс=некоторые папки/домашний/

сделать

сделать установить

даже с LDFLAGS а CFLAGS включены и все файлы помещаются в папку установки. Кроме того, переменные окружения устанавливаются в папку установки (в переменной LD_LIBRARY_PATH, library_path указано в lib; CPATH включить; путь к bin), но это не будет работать. При попытке получить доступ к этой библиотеке с составлением другую программу, она возвращает ошибку, как указано в названии. С другой стороны, я сделал то же самое для другой библиотеки (порт), которая прекрасно работает и распознается команду ldconfig -п | грэп libpopt!!

Кто-нибудь знает, что я делаю неправильно или что я могу попробовать, чтобы решить это?

При запуске

ЛД -lcppunit -ЛПНП -л/какую-то папку/дома/

он говорит мне, что он мог найти в библиотеке файлов, но и возвращает символ _start можно найти и не установив начальную точку.

Предприятие Работает В RedHat Linux 6.5 С

+788
Vivian Esohe 29 авг. 2019 г., 15:33:00
ПС-эо pcpu,пид,пользователь,параметр args | рода -К1 -р-н | головные -10

Работает для меня, показывают топ-10 ЦП с помощью нитей, отсортированный численно

+780
ALS X3 20 июл. 2013 г., 19:46:49

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

<Город />
Тип Базового
AuthName "Защищен Паролем"
AuthUserFile /путь/к/.помощью пароля через htpasswd
Требуют действительного пользователя
</Расположение>

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

+773
pushkar 17 янв. 2013 г., 10:49:26

Если вы имеете в виду инструкции по сборке двух общих подходов:

Проверить нужную функциональность против вывода флаги из cpuinfo для того, пример вывода:

флаги : ППУ вме де ЧОП ВСК ПМа Пае МРЗ cx8 апик сентября mtrr ЭПГ СМА cmov ПЭТ pse36 clflush ДЦ с ACPI ММХ fxsr SSE за поддержкой SSE2 СС НТ ТМ пбэ операции в NX pdpe1gb rdtscp лм constant_tsc arch_perfmon УИБ БЦ rep_good НОПЛ xtopology nonstop_tsc aperfmperf eagerfpu пни pclmulqdq dtes64 монитор ds_cpl файл VMX сульфаметоксазола есть ТМ2 ssse3 фма cx16 xtpr pdcm псмд АСД sse4_1 sse4_2 x2apic popcnt movbe tsc_deadline_timer ня команду xsave Аух f16c rdrand lahf_lm про Ида Арат ЭПБ xsaveopt ПЛН оч dtherm tpr_shadow vnmi flexpriority епт vpid fsgsbase tsc_adjust bmi1 поддержкой AVX2 СМЭП bmi2 асэд invpcid

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

Как уже отмечалось, фактическое опкоды не возможно, чтобы увидеть, как инструкция по сборке (на базе Intel, по крайней мере) переводятся в ОП-коды, которые выполняются процессором.

+748
cth77 31 мар. 2013 г., 15:56:57

У меня есть небольшой скрипт на Python

#!/usr/Бен/ОКР питон3

импорт some_python3_module

деф главным образом():
 # делать

если __имя__ == '__главный__':
главная()

и не может запустить этот скрипт с Питон3, поскольку рос задает PYTHONPATH переменной в некоторой версия 2.7.-местами, смысл в Python 3 не могу найти модули дист-пакеты каталог. Я бы хотел, чтобы переопределить это поведение без изменения внешнего envorinment. То есть, я хочу сбросить PYTHONPATH, но только на этот скрипт, и желательно изнутри, так что дело все равно будет работать. Это возможно?

Не уверен, если это лучше подходит для superuser.com

+650
Brennan Alexander 2 мая 2014 г., 11:40:55

Проверьте, если у вас есть каталог, каталог/etc/ssl или сертификаты. Вы должны. Это может быть ссылкой, но в любом случае, там должен быть как минимум один файл в нем, и когда вы откроете, что оно должно начаться что-то вроде этого:

-----НАЧНИТЕ СЕРТИФИКАТА-----
MIIDzzCCAregAwIBAgIDAWweMA0GCSqGsib3dqebbquamignmqswcqydvqqgewjb
VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaxrzc3lzdgvtzsbp

Если нет, то вам нужно установить это. Я не знаком с "энтропии", на сабайон менеджер, но вы должны быть в состоянии поиск доступных репозиториях пакет, который предоставляет что-то, начиная с пути в/etc/ssl и сертификаты.


Если есть сертификаты, взгляните:

  • В Firefox: Правка->Настройки->Дополнительно->Диспетчер Сертификатов->Власти

  • Хром: Настройки->Дополнительно->протокол HTTPS и SSL->сертификаты->власти

Обратите внимание на "власти" в конце. Вот что вы хотите добавить материал, а не "сервера". Если там ничего нет сейчас, это источник вашей проблемы. Если есть, что-то странное, может быть, но это не больно, чтобы попробовать.

Выберите "Импорт" и перейдите в каталог/etc/ssl и сертификаты. Ее следует подбирать на .ЭЛТ - файлы есть. Добавить их все и посмотреть, если это помогает.

Вы должны в конечном итоге с десятками органы власти, и они должны включать в себя, например, в VeriSign, Инк и от GlobalSign. Если нет, то ваш список сертификатов сокращается в какой-то дурацкий способ.

+607
Al Harris 2 сент. 2017 г., 12:34:41
  1. Когда новый поток породил, область памяти, выделенной для стека потока. Пространство для локальных переменных потока выделяется из этой области. СС переменные не являются строго частью стека, т. е. они не вытолкали выскочил из стека, но они существуют в той же местности на вершине стека.

    Где этот район находится в адресном пространстве зависит от многих факторов. Когда новый поток создается с pthread_create, программист может передать указатель на область памяти, который будет использоваться в качестве потока стека. Расположение этой памяти зависит от того, как была выделена память. Если нет предварительного выделения памяти, то память выделяется с помощью функции mmap с нулем как в addr параметр, который позволяет ядру решить, где памяти. Для x86_64, память, выделенная таким образом расположен между стека и кучи.

  2. Новый Канары значение используется для каждого потока. Смотрите ответ на этот вопрос.

+568
Uri Dorozko 27 мая 2016 г., 08:51:07

Используйте команду ДД , как следуйте :

судо ДД, если=/dev/нуль=/Дев/SDX в && синхронизация

Затем с помощью программы fdisk для создания нового раздела , mkfs, а для создания ФС.

+554
caveman39 12 февр. 2010 г., 14:28:07

Я не могу загрузить мои установки CentOS после того как я переустановить Windows 10 на две машины.

Я путать о жратве-установка и обновление-жратва. Я переустановил Windows, на мой двойной загрузки ПК, и после этого я не могу загрузиться в свою систему CentOS. Я искал в интернете для часов, но я не получил решение. Что может быть уникального в моем случае: "корневой" раздел на /dev/sda6/корень, т. е. если я монтировался, не монтировать корневой раздел, но он имеет "метку" или подраздел называется корень. (Я понятия не имею, почему он был установлен так, я просто думаю, что это было по умолчанию в установщик CentOS)

Между прочим я за эти гиды: (остальные аналогичны)

Выход загрузочного ремонт upoladed здесь: http://paste.ubuntu.com/p/HGzXK6SWX4/ Загрузки-ремонт не выписывают каких-либо предупреждений или сообщений об ошибках. Что странно, что он не упоминает какие-либо установки Linux, просто имена Тома говорит нам, что это было в CentOS. Я бы ожидал жратвы установлен на строку с /dev/sda2. Также я ожидаю, что мой раздел EFI имеет флаг загрузки, а не Диспетчер загрузки Windows (см. В ссылке сайт Pastebin).

ОС-проберитесь не найти мой раздел установки Linux:

Xubuntu в@Xubuntu в:~$ судо ОС-зондового контроля
/dev/[email protected]/efi/Microsoft/Boot/bootmgfw.efi:Windows Диспетчер загрузки:для Windows:Эфи
жратва-зонд: ошибка: не удается найти жратву диск для /dev/sdb1. Проверить устройство.карте.

С помощью GRUB-установить тоже не получилось. Я попробовал с ... загрузки-каталог вариант. Не повезло...

Xubuntu в@Xubuntu в:~$ судо жратвы-установить /Дев/СДА
Установка для i386-PC платформу.
жратва-установить: ошибка: не удалось получить канонический путь `aufs'.

Я не нашел ни одного полезного сообщения по этому поводу. Не понятно, что означает ошибка.

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

Xubuntu в@Xubuntu в:~$ sudo эти горе -т в Btrfs -о subvol=корень на /dev/sda6 /MNT в
Xubuntu в@Xubuntu в:~$ для меня в /sys /dev и /proc и /выполнить; делать судо Маунт -б $я /тугриков$я; сделано
Xubuntu в@Xubuntu в:~$ sudo так сделать chroot в /MNT
в bash-4.2# жратва-установка /Дев/СДА
Баш: жратва-установить: команда не найдена
Баш-4.2 обновление-жратва# 
Баш: обновление-харчи: команда не найдена
в bash-4.2# выход
выход
Xubuntu в@Xubuntu в:~$ что жратва-установить
выполнить /sbin/GRUB и установить
Xubuntu в@Xubuntu в:~$ sudo эти горы --персонализация каталог /usr на/sbin/ /шоссе и/usr на/sbin
Xubuntu в@Xubuntu в:~$ sudo так сделать chroot в /MNT
Баш-4.2# жратва-установить
жратва-установить: ошибка при загрузке разделяемых библиотек: libdevmapper.так.1.02.1: невозможно открыть разделяемый объектный файл: нет такого файла или каталога

Я явно достиг своего предела и я не могу решить эту проблему. Я не любил в CentOS, но я настроил все на нем, и я не хочу его переустановить. Любая помощь приветствуется.

+544
eclux 4 окт. 2016 г., 03:28:17

Это очень распространенный узор с awk. Собрать соответствующие строки в "записи", печатать записи, когда вы собрали все это, если оно соответствует определенному условию.

файл хвост -Ф |
на awk '/\[л]/ { Если (Р && храниться) печать сохраняется; сохраняется = ""; П=0 }
 /\[logTypeA]/ { П=1 }
 { хранимые = хранятся (хранились ? ОРС : "") $0 }
 Конец { если (п) печать хранила }'

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

+518
Idris After 5 окт. 2011 г., 14:55:11

На более свежих версий GNOME-терминал, сдвиг+сочетание клавиш Ctrl+ и клавишу Shift+сочетание клавиш Ctrl+ работа для прокрутки по линии, но у меня нет возможности проверять на 2.31.

+517
Anton Eliasson 12 янв. 2018 г., 20:10:24

в качестве объекта, я хотел бы знать, когда был построен компьютер, а также последнюю дату установки ОС

+435
makevoid 9 февр. 2013 г., 06:49:47

Не уверен, что это подходит сюда..

Мы недавно установил Линукс Минт Петра на этот маленький форм-фактор Dell настольных.

Странно то, что звук не работает, но работает на динамик, подключенный к аудио. Я проверил все детали я мог об микшера ALSA, звуковая карта, звука и т. д. Все кажется прекрасным. Также посмотрел, если бы поле было любого отключения кнопка включения/выключения, но нет и в помине.

Раньше, когда окно было в Windows XP, там действительно было на борту звук, и, таким образом, нет необходимости использовать внешние динамики для аудио.

Кто-нибудь сталкивался с этим вопросом, или что-нибудь еще я могу проверить. Любой результат, поиск в интернете говорит только об общей звуковой карты проблемы, но это конкретно в случае встроенной звуковой не работает.

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

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

$ кошка /proc/asound/карты
 0 [ICH6 ]: ICH4 - процессор Intel ICH6
 Корпорация Intel ICH6 с AD1981B на IRQ 23

$ команда sudo lshw
*-мультимедиа
 описание: контроллер мультимедийный аудио 
 продукт: 82801FB/ФБМ/фр/с FW/FRW (ICH6 семьи) аудио контроллер АС'97 
 поставщик: корпорация Intel
 физический идентификатор: 1е.2
 автобусная информация: [email protected]:00:1e.2
 версия: 03
 ширина: 32 бита
 часы: 33мгц
 возможности: ПМ bus_master cap_list
 конфигурации: драйвера=snd_intel8x0 задержки=0
 ресурсы: IRQ номер:23 ioport:ec00(размер=256) ioport:e8c0(размер=64) память:dfebfe00-dfebffff памяти

 

$ lsmod распечатывает | pcspkr грэп 
pcspkr 12630 0

$ lsmod распечатывает | грэп СНД 
snd_intel8x0 33069 3
snd_ac97_codec 105668 1 snd_intel8x0
ac97_bus 12642 1 snd_ac97_codec
snd_pcm 89488 3 snd_ac97_codec,snd_intel8x0
snd_page_alloc 14230 2 snd_intel8x0,snd_pcm
snd_seq_midi 13132 0
snd_seq_midi_event 14475 1 snd_seq_midi
snd_rawmidi 25094 1 snd_seq_midi
snd_seq 55383 2 snd_seq_midi_event,snd_seq_midi
snd_seq_device 14137 3 snd_seq,snd_rawmidi,snd_seq_midi
snd_timer 24447 2 snd_pcm,snd_seq
СНД 60790 13 snd_ac97_codec,snd_intel8x0,snd_timer,snd_pcm,snd_seq,snd_rawmidi,snd_seq_device,snd_seq_midi
soundcore 12600 1 СНД
+408
JB Rocks 25 авг. 2011 г., 04:28:44

Сервере CentOS 7 имеет постфикс голубятню, и mailx установлены. Я в состоянии сделать IMAP соединение с сервером, в моем Thunderbird клиента работает на моем локальном devbox. Но я не могу отправлять почту через сервер от моего местного Буревестника установлена на моем devbox. После долгих исследований, я определил, что причина в том, что мой провайдер devbox блокирует порт 25. Поэтому я хочу изменить исходящей почты порт на 465. Это предполагает изменения в сервер firewalld и постфикс, в дополнение к изменения в devbox Тандерберд.

Этот вопрос стоит по-другому, чем подобные вопросы в сети StackExchange, потому что я спрашиваю как это сделать в CentOS 7, который имеет выполнение firewalld усложнять.

Проблема с просто меняется порт SMTP заключается в том, что другие почтовые сервера используют порт 25 для отправки электронной почты друг с другом. Если я изменить порт SMTP на 465, никто не будет в состоянии послать электронную почту на мой сервер. Как изменить постфикс, выполнение firewalld, и Thunderbird, так что моя исходящая почта идет через порт 465, в то время как 25 порт остается открытым для приема с других почтовых серверов?

Мне нужен конкретный синтаксис для конкретных конфигурационных файлов. Я уже знаю ответ заключается в настройке реле хозяина. Но как установить, что в CentOS 7?

Вот что я сделал до сих пор:

1.) Я добавил строку 465 инет Н - - - - smtpd в файле/etc/постфикс/мастер.БФ:

 # ========================================= 
 # услуги тип частная unpriv chroot-окружения в WakeUp maxproc Command " и " аргументы
 # (да) (да) (да) (никогда) (100) 
 # ==================================================================== 
 SMTP в инет н - н - - smtpd 
 465 инет Н - - - - smtpd 

2.) Затем я изменил порт SMTP количество в firewalld до 465 путем /usr/lib/firewalld/services/smtp.xml читать следующим образом :

<?формат XML версия="1.0" кодирование="UTF-8"?>
<услуги>
 <короткий>Почты (SMTP)</короткие>
 <Описание>Эта опция позволяет входящих доставки сообщений по протоколу SMTP. Если вам нужно, чтобы позволить удаленным хостам подключаться напрямую к вашей машине для доставки почты, включите эту опцию. Вы $
 <порт="ПТС" порт="465"/>
</службы>

3.) Еще на сервере, я набрал systemctl остановить постфикс после systemctl запустить postfix после systemctl статус постфикса, и все шло хорошо. Затем я набрал брандмауэр cmd --перезагрузка без проблем.

4.) Далее я изменил исходящих SMTP-порт в Thunderbird мой devbox на 465.

5.) На сервере, я тогда следовала @derobert советы и набирается тсрйитр -н-и любой TCP-порт 465 и пытался отправить электронное письмо через сервер, используя мой devbox Thunderbird и были распечатаны на сервере:

тсрйитр -н -я любой TCP-порт 465
тсрйитр: подробный вывод подавляется, используйте -V или -VV для полного декодирования протоколов
слушать на любом, соединени-тип LINUX_SLL (Линукс, приготовленный), захват размер 65535 байт
18:07:36.276193 IP моего.Сервер.ИС.аддр.Урд > мой.DEVBOX.ИС.аддр.37589: флаги [С.], сл 3232257854, АСК 2935370285, выиграть 14480, параметры [МСС 1460,sackOK,TS в Валь 979486294 ККМ 14200749,на nop,wscale 7], Длина 0
18:07:36.361712 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [.], АСК 1, победа 115, параметры [НОП,НОП,ц вал 14200832 ККМ 979486294], длина 0
18:07:36.362152 IP моего.Сервер.ИС.аддр.Урд > мой.DEVBOX.ИС.аддр.37589: флаги [п.], Далее 1:43, АСК 1, победы 114, варианты НОП,НОП,ц вал 979486380 ККМ 14200832], длина 42
18:07:36.366824 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [п.], Далее 1:186, АСК 1, победа 115, варианты НОП,НОП,ц вал 14200832 ККМ 979486294], длина 185
18:07:36.366865 IP моего.Сервер.ИС.аддр.Урд > мой.DEVBOX.ИС.аддр.37589: флаги [.], АСК 186, Победы 122, варианты НОП,НОП,ц вал 979486385 ККМ 14200832], длина 0
18:07:36.454916 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [.], АСК 43, выиграть 115, параметры [НОП,НОП,ц вал 14200920 ККМ 979486380], длина 0
18:07:36.454961 IP моего.Сервер.ИС.аддр.Урд > мой.DEVBOX.ИС.аддр.37589: флаги [П.], сл 43:195, АСК 186, Победы 122, варианты НОП,НОП,ц вал 979486473 ККМ 14200920], длина 152
18:07:36.539237 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [.], АСК 195, победы 123, варианты НОП,НОП,ц вал 14201009 ККМ 979486473], длина 0
18:09:20.466757 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [Ф.], сл 186, 195 АСК, победы 123, варианты НОП,НОП,ц вал 14304941 ККМ 979486473], длина 0
18:09:20.467113 IP моего.Сервер.ИС.аддр.Урд > мой.DEVBOX.ИС.аддр.37589: флаги [Ф.], сл 195, АСК 187, Победы 122, варианты НОП,НОП,ц вал ККМ 979590485 14304941], длина 0
18:09:20.550693 IP моего.DEVBOX.ИС.аддр.37589 > мой.Сервер.ИС.аддр.Урд: флаги [.], АСК 196, победы 123, варианты НОП,НОП,ц вал 14305025 ККМ 979590485], длина 0
^С
11 пакеты, захваченные
12 пакетов, полученных с помощью фильтра
0 пакетов, отброшенных ядром 

6.) Аналогично, также на основе @derobert советы, на devbox я набрал НК мой.сервер.ИС.адрес 465 < /dev/нуль и терминал распечатал 220 mydomain.com команды ESMTP postfix-а в ответ.

Сервер исходящей почты (SMTP) настройки в Thunderbird являются:

Описание: <Не Указано> 
Имя сервера: mydomain.com 
Порт: 465
Имя пользователя: мне
Метод Аутентификации: Обычный Пароль
Безопасность соединения: SSL/TLS и 

Но Тандерберд соединение еще раз, и сообщение не отправляется. Что еще мне нужно делать?

Примечание: при изменении /usr/lib/firewalld/services/smtp.xml опять же, чтобы указать порт 25, и оставить все остальное то же самое с другой 5 шагов выше, я вернуть возможность получать электронную почту с сервера, но я не смогла отправить письмо через сервер.


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


@jsbillings предложил мне определить порт представлений в мастер.см. Чтобы двигаться вперед, я набрал postconf -м в терминале распечатать соответствующее содержание мастер.см. Я до сих пор не смогла отправить письмо, но вот результаты после изменения я делал сегодня в ходе работы на этом:

SMTP в инет н - н - - smtpd
587 инет Н - - - - smtpd
представления инет Н - - - - smtpd 
-о smtpd_tls_security_level=шифровки -о smtpd_sasl_auth_enable=да 
-о smtpd_sasl_type=голубятню -о smtpd_sasl_path=частная/авт 
-о smtpd_sasl_security_options=noanonymous 
-о smtpd_sasl_local_domain=$myhostname 
-о smtpd_client_restrictions=permit_sasl_authenticated,отклонить 
-о smtpd_sender_login_maps=хэш: файл/etc/постфикс/виртуальная 
-о smtpd_sender_restrictions=reject_sender_login_mismatch 
-о smtpd_recipient_restrictions=permit_sasl_authenticated,отклонить
самовывоз с Unix - Н 60 1 самовывоз
очистка Unix и н - н - 0 очистка
на "qmgr" Unix и н - н 300 1 на "qmgr"
tlsmgr с Unix - Н 1000? 1 tlsmgr
переписать с Unix - Н - - тривиальное-переписать
прыжок с Unix - н - 0 отказов
перенести на Unix - н - 0 отказов
трассировки с Unix - н - 0 отказов
проверьте с Unix - Н - 1 проверить
заподлицо с Unix - Н 1000? 0 заподлицо
proxymap с Unix - Н - - proxymap
proxywrite с Unix - Н - 1 proxymap
протокол SMTP для Unix - н - с SMTP
реле с Unix - н - с SMTP
showq Unix и н - н - - showq
ошибка с Unix - Н - - ошибка
повторить с Unix - Н - - ошибка
выбросьте из Unix - Н - - отменить
локальные Unix - н н - - местные
виртуальный Unix и - н н - - виртуальная
ЛСЗ с Unix - Н - - ЛСЗ
наковальня с Unix - Н - 1 наковальня
scache с Unix - Н - 1 scache
+394
Steinar Bjerkaker 24 мая 2010 г., 00:26:31

не должно быть никаких проблем в интерактивном режиме (на телетайп).

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

+390
Vu Ngn 8 апр. 2013 г., 06:08:49

Я использую NIS для управления пользователями на Редхат 6.6 закрытой сети. Мы используем несколько VLAN в закрытой сети. Есть ли возможность назначить привилегии или каким-то образом разрешить определенным пользователям использовать влан, сохраняя при этом другие пользователи с определенной VLAN? Кто-нибудь знает, возможно ли это в нормальный Редхат администрирование пользователей? Или это типа ограничение иметь место только в сетевых коммутаторов?

Мы используем VLAN для успешной изоляции сетей. Я задал вопрос выше, специально, чтобы увидеть, если это полезно, чтобы добавить определенную сеть местных станций, которые уже используют общий VLAN для доступа пользователей к сети. В противном случае, я разрешаю доступ пользователей к конкретной машине, которая имеет доступ к общей сети и определенной VLAN.

+248
Hoshts 2 февр. 2010 г., 08:55:26

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

virtual_private=%В4:10.6.100.0/24,%В4:!192.168.11.0/24,%В4:10.10.0.254/24

..тогда согласно протокола IPSec авто-состояние команды 10.6.100.0/24 и 10.10.0.0/24 сетей допускается и 192.168.11.0/24 запрещено:

000 virtual_private (%прив):
000 - разрешено 2 подсети: 10.6.100.0/24, 10.10.0.0/24
000 - запрещено 1 подсети 192.168.11.0/24
000

Что это разрешено и запрещено значит? Что это значит под капотом? Есть некоторые созданные маршруты? Влияет ли это на какие-то рамки политики xfrm?

+199
user205473 10 янв. 2020 г., 13:32:55

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

Это приводит меня задаться вопросом, если это возможно, чтобы знать, что исходное приложение (например, возможно, ПИД).

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

Напомним, что в настоящее время я использую хклип определить содержимое буфера обмена, например,

хклип -выбор первичной -Т строка -о 2> /dev/нуль
+178
Bruce Jhonson 3 апр. 2013 г., 13:03:22

По какой-то причине, ответы по линиям хвост -Ф файл1 файл2 не совсем то, что я имел в виду.

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

Для этого я использовал что-то больше нравится смотреть -хвост Н1-Н10 файл1 файл2

+167
ravi repaka 8 июл. 2015 г., 18:53:59

Вот то, что диаграмма памяти похоже на VPS под управлением CentOS с 512 МБ оперативной памяти и nginx/пхп-ФПМ/тузды порцию (в основном статические) содержание до пары тысяч посетителей в день.

Weekly memory graph

(те дни, на оси X)

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

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

Это нормальное поведение, или я что-то пропустила?

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

After memory upgrade

+162
lahara 21 авг. 2015 г., 04:02:48

У вас есть доступ к локальной машине (или ВМ) на одном уровне патч? Возможно, стоит сделать одну. Вот что я сделаю.

Тогда все что вам нужно сделать, это (как root):

ням -й обновление --downloadonly --скип-сломанный

Что будет захватывать все патчи и поставить их в /var/кэш/Юм/x86_64 с/distroname/reponame.

Тогда вы можете просто сжечь (использование brasero, k3b автоматически, или xfburn -- как там у вас), что каталог на DVD-диск (компилятора RHEL6 может говорить и Blu-ray, но вам не нужно так много места), установить его, зайти в reponame/пакеты (каталог со всеми .RPM-файлы), и вопрос (опять же, как root):

ням-г localinstall *.об / мин --скип-сломанный

И вы Золотой. Повторите по мере необходимости для любой другой операции РЕПО. Если вы хотите облегчить жизнь ребят на удаленном сайте, вы можете перенести все пакеты в один каталог, но убедитесь, что вы для них все на одном диске, или вы можете столкнуться с проблемами зависимостей. (Хуже дела, у ребят на другом конце переместить их все в один каталог на машины и тогда вопрос в Yum localinstall.)

Мы использовали этот метод для исправления airgapped машины в нашем университете ЦОД с хорошими результатами. Удачи!

+149
Dilpreet singh 25 февр. 2013 г., 15:16:18

Вопрос: почему вторая итерация завершается после 10.175.192.16? Может кто-то объяснить? Или я просто нашла "а/с netcat" ошибку?

содержание a.txt'ы:

$ кот a.txt 
10.175.192.14
10.175.192.16
10.175.192.17
$

Первой итерации, это нормально, просто выводит содержимое файла:

$ во время чтения строки; сделать эхо $строки; сделано < a.txt 
10.175.192.14
10.175.192.16
10.175.192.17
$

Вторая итерация, это плохо, он существует при приходе к 10.175.192.16:

$ во время чтения строки; сделать ЧПУ -з 3 "$короткая" 22 >& /dev/нуль; Эхо $строки; сделано < a.txt 
10.175.192.14
10.175.192.16
$

Коды завершения:

НЗ -з $ 3 "10.175.192.14" 22 >& /dev/нуль; Эхо $?
1
НЗ -з $ 3 "10.175.192.16" 22 >& /dev/нуль; Эхо $?
0

Поэтому нет СШ за сервер 10.175.192.14. Но есть одно за 10.175.192.16. Но "пока" итерации не должны выйти прежде, чем идти через все линии, нет? Почему это мисс 10.175.192.17? Я что-то упускаю?

Моя главная цель заключается в том, что я имея файл (a.txt), который содержит IP-адреса. Мне нужно отсортировать эти IP-адреса в двух файлах:

А) те, которые достижимы (СШ запрос, поэтому сервер доступен)
Б) те, которые недоступны (тайм-аут после 3-х секунд, потому что там ничего не прослушивает порт 22)

"доступный" означает, что там ничего не прослушивает порт 22 за IP.






+135
Dee Dee N Robbie 12 февр. 2014 г., 15:51:29

Я хочу получить уведомление, если любой человек обращается мой сервер Debian через SSH.

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

/usr/local/bin/shell-login.sh | mailx -s "в СШ входа пользователей $(whoami) на вашем-хоста" [email protected]

/usr/local/bin/shell-login.sh содержит:

#!/бин/Баш

Эхо "вход на $(хоста) на $(дата +%г-%м-%д%ч:%м)"
Эхо "пользователь: "$(whoami)
Эхо
идентификатор
Эхо
палец

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

Как я должен изменить эту установку, чтобы отправлять никаких сообщений на автоматический внутренний СШ-звонки?

+109
maryk4321 13 мар. 2010 г., 07:37:44

Попробуйте пользовательскую функцию ниже. Она принимает список, где каждый элемент на отдельной строке. Вижу использование.

содержит(){ функции printf "%з\п" "$1"|грэп '^'"2$"'$' > /dev/нуль; }

Код возврата-это команда grep:

  • 0 - если элемент найден в списке (полное совпадение строки с учетом регистра)
  • 1 - если элемент не был найден в списке
  • 2 или выше - если произошла ошибка (сообщение об ошибке будет напечатано)

Изменения, которые вы могли бы сделать на эту функцию, чтобы заставить его работать, как вы хотите:

  • не печатать ничего, даже возможно сообщение об ошибке: &> /dev/нуль
  • печатать все (если пункт присутствует в списке, возможно, сообщение об ошибке): удалить > /dev/нуль
  • печатать только если элемент присутствует в списке, не печатает возможные сообщения об ошибке: 2> /dev/нуль
  • заставить функцию возвращать только 0 или 1: && возвращает 0 || возврат 1;

Использование:

список="$(getent passwd с {1000..60000}|вырезать -Ф1 -д:)"
пункт="USER_NAME_HERE"
#или
список="$(е "%з\п" {1..4})"
элемент="1"
#тогда
содержит "$список" "$элемент"
#чтобы увидеть код возврата
Эхо $?
+98
Vaib 16 июн. 2011 г., 22:12:41

Использовать ДУ с -ч --максимальная глубина= параметры (настройки от 1 до 3 полезны) и получить детализацию, где пространство используется. Если эти цифры не складываются, попробуйте остановить второстепенные сервисы, такие как веб-серверы, войдите демоны, НФ (или просто перезагрузиться) - запущенные процессы, может занять место в файловой системе, тоже по уже несвязанный файл открыть (часто бывает с вырубкой услуг) и проверьте, если использование пространства уменьшается.

+47
keenbeen 21 окт. 2015 г., 22:52:11

Первый контекст: Я использую реликвия-mailx версия, как и на следующей теме: https://serverfault.com/questions/136106/what-package-to-install-for-sending-emails-from-localhost-ubuntu

Я использую Ubuntu 16.04 Xenial. Пробовал Также на сервере Ubuntu 16.04.

Для того, чтобы отправить электронную почту я использую следующую функцию для отправки почты с помощью mailx (реликвия mailx в bash):

с sendmail() {
#Отправка Отчетов По Электронной Почте
дом Heirloom-mailx -в $2 -В-С ""$(Эхо -е", Тема 3\nContent-тип: текст/HTML")"" \
-С смтп-использовать-команды \
-С SSL проверить=игнор \
-С смтп-авторизации=логин \
-С протоколом SMTP=SMTP в://Почта.mymailserver:порт \
-S от="[email protected]" \
[email protected] \с 
-С смтп-авторизации-пароль= "пароль" 
-С SSL проверить=игнор \
1 $ < body.html
}

Где $2-это вложение, а $1-это пункт назначения. Примечания: 1. Прикрепленные файлы печатаются внутри тела, а также, но это может быть полезным для вас, если вы хотите просто отправить HTML-файл с без вложений. 2. Через "-V" и печатает параметр verbose, чтобы вы могли получить проблема .миме.типы, которые могут быть проигнорированы. Убрать эту опцию, если вы не хотите многословен на mailx. 3. Вы все равно получите следующие в организме, если вы используете опцию "-a": Это мульти-часть сообщений в формате MIME. --=-=fFPa7dLqoSF1TGj-YDc2k8bdvmjpix_4sKFT=-= содержимое-тип: текст/равнина; кодировка=кодировка usascii расположения контента: рядный

В этом случае я прилагаю текстовый файл. Удаление "-в $2" от команды и у вас все настроено, чтобы напечатать сообщение. Так что конечный результат будет:

с sendmail() {
 #Отправка Отчетов По Электронной Почте
 дом Heirloom-mailx -s "на"$(Эхо -е", Тема 3\nContent-тип: текст/HTML")"" \
 -С смтп-использовать-команды \
 -С SSL проверить=игнор \
 -С смтп-авторизации=логин \
 -С протоколом SMTP=SMTP в://Почта.mymailserver:порт \
 -S от="[email protected]" \
 [email protected] \с 
 -С смтп-авторизации-пароль= "пароль" 
 -С SSL проверить=игнор \
 1 $ < body.html
}

Попробуйте его и дайте мне знать. Я испытал на моем конце, и она работает.

+44
Karishma Lodariya 31 янв. 2013 г., 20:20:13

Я использовал следующую команду, чтобы создать список URL-адресов, которые я хочу проверить:

Эхе -е localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt

К сожалению, URL-адреса добавляются к urls.txt каждый имел пространство перед ними (за исключением первого, конечно). Я понимаю, почему это произошло, и я понял, что могу просто удалит их при помощи трубопровода через некоторое СЕПГ выражение, но я хотел бы знать, если есть способ, чтобы подавить его. (Это может показаться глупым и педантичным, но это не отличается, чем предпочтения, поэтому многие люди чувствуют себя для не "злоупотреблять кошки".)

Я попробовал дважды цитируешь, чтобы подавить слово-расщепление, но подавил расширение скобок тоже, так что ничего не вышло.

Я пытался менять ИФС на пустую строку, но она не работает:

ИФС=" Эхе -э localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt

Не меняя ее на новую строку:

ИФС='\п' Эхо -е localhost:8080/reports/{promos,promo-updates,scandown}/{130,139,142}{,-unburdened,-burdened}{,.pdf,.xls,.xlsx,.csv,.preload}"\n" >> urls.txt
+13
KiaMorot 30 мар. 2019 г., 01:07:34

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