Unix / Linux Основные утилиты - Печать и отправка электронной почты

Здравствуйте,future программисты! Сегодня мы погрузимся в некоторые из необходимых утилит Unix/Linux, которые вы найдете невероятно полезными в своем пути. Как ваш доброжелательный сосед-учитель компьютера, я с радостью провожу вас через мир печати файлов и отправки электронной почты с помощью командной строки. Не волнуйтесь, если вы никогда не касались терминала ранее - мы начнем с самых основ и будем подниматься выше. Поехали!

Unix / Linux - Basic Utilities

Печать файлов

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

Команда 'lp'

Команда 'lp' - это ваш goto инструмент для печати файлов. Она означает "line printer" (строчный принтер), термин, который восходит к早期的 дням вычислений, когда принтеры действительно печатали строка за строкой. Теперь она работает со всеми типами принтеров.

Вот базовая синтаксис:

lp [опции] имя_файла

Давайте рассмотрим некоторые примеры:

  1. Печать файла с именем "report.txt":

    lp report.txt

    Эта команда отправит файл на defaultManager.

  2. Печать нескольких файлов:

    lp file1.txt file2.txt file3.txt

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

  3. Указание принтера:

    lp -d myprinter report.txt

    Это отправит файл на принтер с именем "myprinter" вместо defaultManager.

  4. Печать нескольких копий:

    lp -n 3 report.txt

    Это напечатает три копии файла.

Команда 'lpstat'

Команда 'lpstat' - это ваш проверщик статуса печати. Она предоставляет информацию о принтерах и print-задачах.

Вот некоторые полезные примеры:

  1. Список всех доступных принтеров:

    lpstat -p
  2. Проверка статуса всех print-задач:

    lpstat -o
  3. Получение подробной информации о конкретном принтере:

    lpstat -p myprinter -l

Команда 'cancel'

Сделали ошибку? Не волнуйтесь! Команда 'cancel' позволяет вам отменять print-задачи.

Основной синтаксис:

cancel [опции] [job-id]

Пример:

cancel 123

Это отменяет print-задачу с ID 123.

Отправка электронной почты

Теперь перейдем к отправке электронной почты с помощью командной строки. Это может показаться старомодным, но это incredibly мощно для автоматизации и быстрых коммуникаций.

Команда 'mail'

Команда 'mail' - это ваш швейцарский армейский нож для отправки электронной почты из терминала.

Основной синтаксис:

mail [опции] получатель

Давайте рассмотрим некоторые примеры:

  1. Отправка простого电子邮件а:

    echo "Привет, это тестовый电子邮件" | mail -s "Тестовая тема" [email protected]

    Это отправляет电子邮件 с темой "Тестовая тема" и телом "Привет, это тестовый电子邮件" на [email protected].

  2. Отправка电子邮件а с приложением:

    mail -s "Report Attached" -a report.pdf [email protected] < email_body.txt

    Это отправляет电子邮件 с темой "Report Attached", приложением "report.pdf" и содержимым "email_body.txt" в теле电子邮件а.

  3. Отправка нескольким получателям:

    echo "Meeting at 3 PM" | mail -s "Reminder" [email protected] [email protected] [email protected]

    Это отправляет один и тот же电子邮件 нескольким получателям.

Команда 'mailx'

'mailx' - это улучшенная версия 'mail' с дополнительными возможностями. Ее использование аналогично 'mail', но она предлагает больше гибкости.

Пример:

echo "Содержание电子邮件а" | mailx -s "Тема" -a attachment.pdf -c [email protected] [email protected]

Это отправляет电子邮件 с темой, приложением и CC получателем.

Combining It All

Теперь, когда мы рассмотрели основы печати и отправки электронной почты, давайте посмотрим на практический пример, который combine这两种 действия:

#!/bin/bash

# Generate a report
echo "Daily Report" > report.txt
date >> report.txt
echo "Sales: $1000" >> report.txt

# Print the report
lp -d officeprinter report.txt

# Email the report
cat report.txt | mail -s "Daily Sales Report" [email protected]

echo "Report printed and emailed successfully!"

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

Заключение

Поздравления! Вы только что сделали свои первые шаги в мир утилит Unix/Linux для печати и отправки электронной почты. Помните, что практика делает perfect, так что не бойтесь экспериментировать с этими командами. Они могут показаться немного пугающими сначала, но вскоре они станут для вас второй натурой.

Заканчивая, вот быстрая таблица, резюмирующая команды, которые мы изучили:

Команда Назначение Пример
lp Печать файлов lp report.txt
lpstat Проверка статуса принтера lpstat -p
cancel Отмена print-задач cancel 123
mail Отправка электронной почты echo "Привет" \| mail -s "Тема" [email protected]
mailx Улучшенная отправка электронной почты mailx -s "Тема" -a file.pdf [email protected]

Продолжайте исследовать, продолжайте учиться, и скоро вы станете магом командной строки! До следующего раза, счастливого кодирования!

Credits: Image by storyset