Мы — долго запрягаем, быстро ездим, и сильно тормозим.

FreeBSD
  настройка
  подсчёт трафика
  программы
  почтовые системы
  Шелезяки
  Мелочи
  Файловая система
  WWW
  Security
  system
  /bin
  /sbin
  /usr/bin
  /usr/sbin
  Управление правами доступа
  Пользователи FreeBSD
  ACL и специальные флаги
  Записки про IBM AIX
  Games Servers
  X11
  Programming
Очумелые Ручки
OpenBSD
Cisco


www.lissyara.su —> статьи —> FreeBSD —> system —> /usr/bin

Системные приложения из '/usr/bin'

Автор: lissyara.


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

   Отдельная благодарность fr33m@n за помощь в переводе.

P.S. Дано для FreeBSD 6.2

, 2008-12-06 в 10:47:20






Vaulter, 2008-11-12 в 23:08:49

cat /usr/share/calendar/* | grep `date +"%m/%d"`





Михаил, 2007-03-07 в 9:46:36

Это "деманглер" превращает кодированное имя С++ метода в удобоваримое. Типа, эта строка __classA_funcB_intD__charC на самом деле означает A::B(int D, char C). Поолезно при разгребании ошибок линковки или запуска С++ приложений.
























dvg_lab, 2007-07-16 в 23:20:55

очень веселая команда, понять зачем она нужна не вышло, но зато печатает очень красиво :))

Daemony, 2008-01-16 в 16:09:40

Ман есть.

BANNER(6)                    FreeBSD Games Manual                    BANNER(6)

NAME
    banner — print large banner on printer

SYNOPSIS
    banner [-d] [-t] [-w width] message ...

DESCRIPTION
    Banner prints a large, high quality banner on the standard output.  If
    the message is omitted, it prompts for and reads one line of its standard
    input.

    The output should be printed on paper of the appropriate width, with no
    breaks between the pages.

    The following options are available:

    -d      Enable debug.

    -t      Enable trace.

    -w width
            Change the output from a width of 132 to width, suitable for a
            narrow terminal.

AUTHORS
    Mark Horton

BUGS
    Several ASCII characters are not defined, notably <, >, [, ], \, ^, _, {,
    }, |, and ~.  Also, the characters ", ', and & are funny looking (but in
    a useful way.)

    The -w option is implemented by skipping some rows and columns.  The
    smaller it gets, the grainier the output.  Sometimes it runs letters
    together.

    Messages are limited to 1024 characters in length.

FreeBSD 6.0                    January 26, 2005                    FreeBSD 6.0

, 2008-02-07 в 4:04:24

 ####                                                                                   ####
                             ####                                                                                   ####
                             ####                                                                                   ####
                             ####                                                                                   ####
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ###########################################################################################
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                              ####                                 ####
                             ####                                             ######                                ####
                             ####                                           ##########                              ####
                             ####                                       ##################                          ####
                             ####                                       ##################                          ####
                             ####                                       ##################                          ####
                             ####                                       ##################                          ####
                             ####                                                                                   ####
                             ####                                                                                   ####
                             #####                                                                                 #####
                             #####                                                                                 #####
                             #######                                                                             #######
                             ########                                                                           ########
                             ###########                                                                     ###########
                             ##################                                                       ##################
                             ##################                                                       ##################
                             ##################                                                       ##################
                             ##################                                                       ##################

                                 ######                                                  ###################
                               ##########                                ########################################
                              ############                     #####################################################
                             ##############          #################################################################
                             ##############         ###################################################################
                             ##############          #################################################################
                              ############                     #####################################################
                               ##########                                ########################################
                                 ######                                                  ###################

NetSpider, 2008-07-12 в 20:29:02

может, как вариант, если кто-то страдает фигней - отправить ему в консоль:
# banner -w 28 . stop > /dev/ttyp1
ну а потом уже месагу через wall.. =)



koko, 2009-08-29 в 20:30:55

bin


lissyara, 2007-03-07 в 9:59:24

Наверное, самое частое применение - для вывода того или иного столбца из файла:
% grep "^213.180.204.8" summary.xl0 | awk '{print $5}' | sort | uniq -c | sort
  7 icmp
132 tcp

(Это я посчитал сколько каких пакетов было отправлено на ya.ru :))
Заодно, можно и траффик посчитать, просуммировав нужный столбец:
% grep "213.180.204.8" summary.xl0 | awk '{a = $6+a;} END {print "Суммарный траффик яндекса: " a " байт"}'
Суммарный траффик яндекса: 183606 байт









stgib, 2007-10-30 в 5:13:37

for snapshot in $(zfs list -H -t snapshot -o name | egrep -v 'cloned|date_'); {
       apply "zfs %1 $snapshot" destroy snapshot
}

пересоздаст все снапшоты, окромя игнорируемых.

вот еще примерчик[1]:
apply "camcontrol inquiry da%1 -S" `jot 16 0` запустит:
camcontrol inquiry da0 -S
camcontrol inquiry da1 -S
camcontrol inquiry da2 -S
camcontrol inquiry da3 -S
camcontrol inquiry da4 -S
camcontrol inquiry da5 -S
camcontrol inquiry da6 -S
camcontrol inquiry da7 -S
camcontrol inquiry da8 -S
camcontrol inquiry da9 -S
camcontrol inquiry da10 -S
camcontrol inquiry da11 -S
camcontrol inquiry da12 -S
camcontrol inquiry da13 -S
camcontrol inquiry da14 -S
camcontrol inquiry da15 -S















, 2007-08-03 в 14:28:27

А вот так можно быстро составить список файлов и их контрольную сумму, crc32 т.е.:
cksum -o3 someFile | xargs printf "%X %s %s\n"
Вывод:
5FE23140 10485760 someFile


stgib, 2007-10-31 в 2:21:21

полезно в /etc/csh.logout:
tput reset || clear # очистка экрана
vidcontrol -C # очистка scroll'а syscons
rm -f ~/.history # удаление сохраненной истории команд
history -c # и очистка всех команд из памяти


помогает от любопытных глаз, не более

561, 2008-04-07 в 16:15:46

^L - тоже очистка экрана

NetSpider, 2008-07-12 в 20:35:51

при чем, как нажатие комбинации CTRL + L так и печать:
# echo "^L"
# echo "^L" > /dev/console
# echo "^L" > /dev/ttyp1

символ ^L набирается путем удержания CTRL и нажатия клавиш V и L
















prih, 2008-07-17 в 3:12:46

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



fghf, 2009-06-27 в 18:50:35

fghf, 2009-06-27 в 18:50:40





st.Ass, 2007-03-25 в 23:36:49

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



stgib, 2007-11-06 в 16:24:15

(облегченный вариант контроля версий пригодный для конфигов и простых текстовых файлов можно почитать в rcsintro(1))

Частоупотребляемые опции можно засунуть в ~/.cvsrc. Например:
cvs -qz6
update -PdA
diff -u
rdiff -u
checkout -P







smilealex, 2007-11-27 в 7:05:15

a - Адресная запись
any - Любой тип записи
axfr - Все записи, относящиеся к зоне
hinfo - Записи, характеризующие ЭВМ
mx - Записи, определяющие почтовый обмен
ns - Записи сервера имен
soa - Начало записей для зоны ответственности DNS-сервера
txt - Текстовые записи

Пример для локального nameserver:
/> dig @localhost mydomain axfr
выводит все записи локального ДНС-сервера зоны mydomain







GR, 2007-03-12 в 18:23:38

Племя молодое .... :)
Оно пытается конвертировать ELF в старый объектный формат.

timandr, 2007-07-28 в 3:03:35

Ну да, стоит посмотреть elf2aout.c :

/*
* elf to a.out converter for freebsd/sparc64 bootblocks.
*/


zulu, 2009-07-24 в 11:03:13

elf2aout - convert a MirBSD ELF-format executable to MirBSD a.out format




stgib, 2007-10-31 в 2:31:45

еще она часто используется в кач-ве заменителя полного пути до программы в скриптах, например:
#! /usr/bin/env perl

Т.к. вероятность ее нахождения в другом месте меньше, чем того же perl'а (/usr/local/bin/perl, /usr/bin/perl, etc)

ну да это в man'е и так описано... но почему-то все равно забывают













lissyara, 2007-03-07 в 9:43:56

Можно искать по типу файлов
%find . -type d | tail -5
./hal/fdi/policy
./hal/fdi/preprobe
./avahi
./avahi/services
./bonobo-activation
%

lissyara, 2007-03-07 в 9:45:19

Можно до кучи при поиске выполнять команду:
%find . -type f -exec grep -l png {} \;
./cups/mime.convs
./cups/mime.types
./cups/mime.convs.N
./cups/mime.types.N
./gtk-2.0/gdk-pixbuf.loaders
./xneur/en/proto
./xneur/ru/proto

zingel, 2007-06-11 в 13:13:12

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

find / -type f -perm -2 -a ! -mtime 1 | xargs -n 1 ls -iR | egrep -r "root|*.wd"

stgib, 2007-09-30 в 22:43:27

Так можно удалять битые симлинки:
find -L /usr/ports/packages -type l -delete
Взято из секции Examples.






















stgib, 2007-10-31 в 2:39:40

наиболее часто используется в цикле while(1) вида:
while getopts abc: opt; do
case $opt in
       a) ...;;
       b) ...;;
       c) ...;;
       ?) echo $usage; exit 1;;
esac
done
shift $((OPTIND - 1))




stgib, 2007-11-26 в 15:32:40

в некоторых случаях можно обойтись и sed -n /pattern/p

., 2009-09-23 в 14:24:46

grep -v chto-to выкинет из вывода строку, содержащую chto-to

Пример:
#ps ax | grep httpd | grep -v grep
уберет из вывода строку с процессом грепа.

#ps ax | grep bash | grep -v grep |wc -l
позволит посчитать число запущенных копий баша.
















lissyara, 2007-03-07 в 10:07:46

Вывод начальных строк файла. Можно по строкам:
% head -n 3 summary.myk0
192.168.0.127   1551    192.168.0.253   3128    tcp     601     6
192.168.0.253   3128    192.168.0.127   1551    tcp     2070    6
192.168.0.127   1552    192.168.0.253   3128    tcp     1342    7

А можно и по байтам:
% head -c 500 summary.myk0
192.168.0.127   1551    192.168.0.253   3128    tcp     601     6
192.168.0.253   3128    192.168.0.127   1551    tcp     2070    6
192.168.0.127   1552    192.168.0.253   3128    tcp     1342    7
192.168.0.253   3128    192.168.0.127   1552    tcp     2069    6
192.168.0.127   1553    192.168.0.253   3128    tcp     601     6
192.168.0.253   3128    192.168.0.127   1553    tcp     2030    5
192.168.0.127   1554    192.168.0.253   3128    tcp     1342    7
192.168.0.253   3128    192.168.0.127   1554    tcp     2069    6
192.168.0.127   1555    192.168.0.253   3128    tcp     601     6
192.168.0.253   3128    192.168.0.127   1555    tcp     2030    5
192.168.0.15  

stgib, 2007-11-26 в 15:24:20

head -n3(или head -3) почти тоже самое что и sed 3q
















stgib, 2007-08-03 в 13:54:08

А вот так можно сгенерить 16-битный prefix ipv6 без особых усилий:
jot -r 4 0 15 | xargs printf %x
А так пароль на скорую руку:
jot -r -c 160 a z | rs -g 0 8






































































AnW, 2007-12-20 в 21:22:06

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

# nc -z -w <sec> <hostname> <port>
-z -просто сканировать
-w -ждать ответа <sec> секунд

смотреть резултат:
# echo $?
это вывод результата выполнения последней команды на экран, в скриптах использовать " $? " по смыслу.


















































































lissyara, 2007-03-07 в 10:19:25

Потоковый редактор, очень удобен для массовой замены в больших файлах (когда vi/vim повесятся ещё на открытии таких файлов)
% cat > file.txt
stroka1.1 stroka1.2 stroka1.3
stroka2.1 stroka2.2 stroka2.3
stroka3.1 stroka3.2 stroka3.3
^C
% sed 's/tro/TRO/g' file.txt
sTROka1.1 sTROka1.2 sTROka1.3
sTROka2.1 sTROka2.2 sTROka2.3
sTROka3.1 sTROka3.2 sTROka3.3
% sed 's/tro//g' file.txt
ska1.1 ska1.2 ska1.3
ska2.1 ska2.2 ska2.3
ska3.1 ska3.2 ska3.3
% sed 's/1/5/g' file.txt
stroka5.5 stroka5.2 stroka5.3
stroka2.5 stroka2.2 stroka2.3
stroka3.5 stroka3.2 stroka3.3

Если результат надо сохранить в файле с тем же именем, модно сделать так:
% sed 's/stroka/line/g' file.txt > tmp.file && mv tmp.file file.txt
% more file.txt
line1.1 line1.2 line1.3
line2.1 line2.2 line2.3
line3.1 line3.2 line3.3
%

stgib, 2007-11-26 в 15:44:12

почему-то некоторые индивиды упорно игнорируют ключики -I и -i для замены в файлах, придумывая велосипеды как указано выше.

Очистить конфиг своего ядра от комментариев можно так:
sed 's/#.*//; /./!d' (в (t)csh перед ! надо ставть \, т.к. этот спецсимвол можно экранировать только так)

stgib, 2008-04-05 в 19:49:57

в пред. примере удаления комментов в файлах лучше использовать sed 's/[[:space:]]*#.*//; /^[[:space:]]*$/d' вместо sed 's/#.*//; /./!d'




, 2008-02-15 в 18:49:09

А как пишутся скрипты, чтобы крон запускал sftp -b с готовым паролем (т.е. не приходилось пароль самому вводить вручную) и перекидывал на сфтп сервер файлы с сегодняшней датой в имени?
как-то так.

















darchik, 2007-05-02 в 8:03:59

tail -f /path/to/file - выводит последние изменения в файле, удобно использовать при просмотре лог-файла



dikens3, 2007-04-10 в 17:19:09

# Бэкап настроек системы
tar -jocf /путь/до/директории/имя_файла.tar.bz2 /etc /usr/local/etc /boot/loader.conf

















stgib, 2007-08-03 в 14:09:20

Удобная утилитка для создания файлов состоящих из нулей:
truncate -s 10m someFile
Работает быстрее чем dd if=/dev/zero of=someFile bs=10m count=1






















stgib, 2007-08-03 в 14:22:15

Полезная программа если надо отправить бинарный файл в теле письма:
uuencode shot0001.jpg me.jpg | mail -s "my photo" a@a.a











stgib, 2007-10-29 в 6:57:44

Простой пример использования (sh):
rm -rf /usr/obj &
mv /var/ftp/inc/Iblard\ Jikan.mkv /data/ani &
wait 1 && cd /usr/src && make buildkernel


К сожалению wait(1) встроенная в (t)csh не поддерживает указания номера задания в фоне. [1] [2]

stgib, 2007-12-20 в 3:31:30

Ы, %1 && cd /usr/src && make buildkernel
%1 можно заменить на %?ani или на %mv

очко в сторону tcsh.









lissyara, 2007-07-15 в 16:48:11

приложение полностью в тиле unix-way - делает лишь одно, но делает хорошо (тут, правда, плохо сделать сложно) - выводит имя текущего пользователя. Полезно для использования в скриптах - хватит ли прав для дальнейшей работы.
acer# whoami
root
acer# exit
exit
acer$ whoami
lissyara
acer$


lissyara, 2007-07-15 в 16:45:17

Хороший сервис, позволяющий выяснить, к кому относится домен, и зарегистрирован ли он вообще, не залазия на cfqns hрегистраторов  достаочно иметь машину с подключенным интернетом (прямой или NAT - прокси не прокатит).
acer# whois lissyara.su
% By submitting a query to RIPN's Whois Service
% you agree to abide by the following terms of use:
% http://www.ripn.net/about/servpol.html#3.2 (in Russian)
% http://www.ripn.net/about/en/servpol.html#3.2 (in English).

domain:     LISSYARA.SU
nserver:    ns1.valuehost.ru.
nserver:    ns2.valuehost.ru.
nserver:    ns3.valuehost.ru.
state:      REGISTERED, DELEGATED
person:     Aleksey L Keda
phone:      +7 926 5933919
fax-no:     +7 926 5933919
e-mail:     lissyara@narod.ru
registrar:  GPT-REG-FID
created:    2005.08.23
paid-till:  2007.08.23
source:     FID


Last updated on 2007.07.15 16:32:33 MSK/MSD

acer#


stgib, 2007-08-03 в 14:03:34

Неа, это полноценный оконный менеджер, только в консоли.






lagorue, 2009-04-29 в 18:24:54

Смешное обьяснение команды






















размещено: 2007-03-06,
последнее обновление: 2007-03-09,
автор: lissyara

оценить статью:


Хостинг HOST-FOOD

2014-07-27, lissyara
gmirror

Удалённое создание софтверного зеркала средствами gmirror, на диске разбитом с использованием gpart. Использование меток дисков для монтирования разделов.
2013-08-20, zentarim
Scan+Print server FreeBSD 9

Настройка сервера печати и сервера сканирования под управлением операционной системы FreebSD 9 для МФУ Canon PIXMA MP540
2011-11-20, BlackCat
Разъём на WiFi-карту

Делаем съёмной несъёмную антену на WiFi-карте путём установки ВЧ-разъёма
2011-09-14, manefesto
Настройка git+gitosis

Настройка системы контроля версия исходного кода в связке git+gitosis+ssh
подписка

    вверх      
Статистика сайта
Сейчас на сайте находится: 3 чел.
За последние 30 мин было: 14 человек
За сегодня было
674 показов,
84 уникальных IP
 

  Этот информационный блок появился по той простой причине, что многие считают нормальным, брать чужую информацию не уведомляя автора (что не так страшно), и не оставляя линк на оригинал и автора — что более существенно. Я не против распространения информации — только за. Только условие простое — извольте подписывать автора, и оставлять линк на оригинальную страницу в виде прямой, активной, нескриптовой, незакрытой от индексирования, и не запрещенной для следования роботов ссылки.
  Если соизволите поставить автора в известность — то вообще почёт вам и уважение.

© lissyara 2006-10-24 08:47 MSK

Время генерации страницы 0.0645 секунд
Из них PHP: 25%; SQL: 75%; Число SQL-запросов: 114 шт.
Исходный размер: 513299; Сжатая: 49396