Posted in CentOS Gentoo Linux Ubuntu Обработка текстовых файлов установка программ

установка EMACS

Установка редактора EMACS в Ubuntu
sudo add-apt-repository ppa:cassou/emacs
sudo apt-get update
sudo apt-get install emacs24 emacs24-el emacs24-common-non-dfsg
Posted in Bash CentOS Gentoo Linux Ubuntu Справочник комманд

bc — консольный калькулятор для конвеерных вычислений в Linux

bc — Basic Calculator

позволяет делать вычисления с C подобным синтаксисом в консоли Linux. Принимает выражение для вычисления с конвеера.

Может делать операции с плавающей запятой.

пример вычисления из размера диска в блоках его размера:

echo 303701360 /1024 | bc
результат работы команды:

296583   # 296 мегабайт

пример вычисления из размера диска в блоках его размера - результат будет с дробной частью (для чисел меньше ноля):
 -l — параметр который говорит bc выводить разультаты  с запятой (дробной частью) 

echo 303701360 /1024^2 | bc -l

результат работы команды:

289.63218688964843750000

 

 

Posted in Bash CentOS Gentoo Linux Ubuntu Обработка текстовых файлов Справочник комманд

cat Linux — команда просмотра и объединения файлов

просмотр файла в консоли

cat /var/log/syslog

просмотр файла в консоли с нумерацией его строк

вывести файл, поставив впереди каждой не пустой строки порядковый номер

cat -b /var/log/kdm.log
Результаты команды:

1 (EE) [mi] EQ overflowing. Additional events will be discarded until existing events are processed.
2 (EE)

3 (EE) Backtrace:
4 (EE)
5 (EE) Backtrace:

6 X.Org X Server 1.13.0
7 Release Date: 2012-09-05
8 X Protocol Version 11, Revision 0
9 Build Operating System: Linux 3.2.0-54-generic i686 Ubuntu
10 Current Operating System: Linux TVS-Laptop 3.5.0-47-generic #71-Ubuntu SMP Tue Feb 18 23:59:30 UTC 2014 i686
11 Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.5.0-47-generic root=UUID=37c67962-d4d1-41f2-8f7e-6d89fad78900 ro quiet splash acpi_osi=Linux vt.handoff=7
12 Build Date: 05 November 2013 03:14:52PM
13 xorg-server 2:1.13.0-0ubuntu6.5 (For technical support please see http://www.ubuntu.com/support)
14 Current version of pixman: 0.30.2

просмотр файла в консоли с нумерацией всех (и пустых тоже) его строк

cat -n /var/log/kdm.log

Результаты команды:

1 (EE) [mi] EQ overflowing. Additional events will be discarded until existing events are processed.
2 (EE)
3 (EE) Backtrace:
4 (EE)
5 (EE) Backtrace:
6
7 X.Org X Server 1.13.0
8 Release Date: 2012-09-05

просмотр файла в консоли с нумерацией всех (и пустых тоже) его строк и вывод всех не печатаемых символов

отображение не печатных символов:

Опция -E показывает символы конца строки.

Опция -e показывает непечатаемые символы плюс символ конца строки

Опция -T показывает символ табуляции

Опция -t показывает непечатаемые символы плюс символ табуляции

Опция -v показывает непечатаемые символы кроме табуляции и конца строки.


cat -n -A -E -e -T -t -v /var/log/kdm.log

Результаты команды:

1 (EE) [mi] EQ overflowing. Additional events will be discarded until existing events are processed.$
2 (EE) $
3 (EE) Backtrace:$
4 (EE) $
5 (EE) Backtrace:$
6 $
7 X.Org X Server 1.13.0$
8 Release Date: 2012-09-05$
9 X Protocol Version 11, Revision 0$
10 Build Operating System: Linux 3.2.0-54-generic i686 Ubuntu$

объединение файлов командой cat

cat -n /var/log/kdm.log /var/log/kern.log

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

Posted in Bash CentOS Gentoo Linux Ubuntu Справочник комманд

фильтрация вывода в консоли Linux

 


grep "dbus" /var/log/syslog

 

Posted in CentOS Gentoo Linux Ubuntu Справочник комманд

просмотр календаря в консоли Linux

чтобы посмотреть календарь в консоли Linux нужно набрать команду:

вызов календаря в консоли Linux

cal # выведет календарь на этот год

cal -3 # выведет календарь на 3 месяца, начиная с текущего

Posted in CentOS Gentoo Linux Ubuntu Без рубрики Компьютер Работа с оборудованием

как в консоли Linux определить свободное место на диске

узнать свободное место на диске

df -ah

эта команда выводит подробные сведения о свободном и занятом месте в файловой системе Linux (на жестких дисках, флешках…)

Posted in Bash CentOS Gentoo Linux Ubuntu Справочник комманд

Список полезных команд Linux

http://forum.ubuntu.ru/?topic=124998.0

http://howtoit.ru/linux/shell/item/43-linux-svobodnoe-mesto-na-diske.html

stat -c %o /dev/устройство - узнать размер блока файловой системы

Свободный и занятый объем диска в Linux

http://www.sbras.ru/win/docs/unix/awk/

Язык обработки шаблонов AWK

Posted in CentOS Gentoo Linux Ubuntu Жесткие диски Работа с оборудованием Справочник комманд установка программ

Как в консоли Linux узнать нагрузку на жесткий диск

Для анализа нагрузки на диски очень полезна программа iostat, входящая в пакет sysstat:


apt-get install sysstat

раз в 10 секунд получать данные о нагрузке на HDD

команда просмотра нагрузки на диски
iostat -x 10

более подробно можно прочитать здесь: http://www.sysadministrator.ru/proverka-sostoania-zestkih-diskov-v-linux

Posted in Bash CentOS Gentoo Linux Ubuntu

подстветка синтаксиса BASH в Nano Linux

У меня не работала подсветка синтаксиса BASH файлов. Оказалось не было  файла с описанием подсветки.

Это проверено на Ubuntu 12, но должно работать и на других сборках Linux

чтобы заработала подсветка синтаксиса необходимо в каталог /usr/share/nano/

скопировать файл файл подсветки синтаксиса BASH в Nano или этот bash.nanorc — файл подсветки синтаксиса BASH в Nano (зеркало)

вот его текст, взятый с https://github.com/serialhex/nano-highlight/blob/master/bash.nanorc

текст файла подсветки синтаксиса BASH в NANO

# Bash Syntax Highlighting
#
# Bram Schoenmakers <me@bramschoenmakers.nl>
#
# Version 1.1

syntax "bash" "\.sh$" "\.bash$"
header "^#!.*/(ba|k|pdk)?sh[-0-9_]*"

# Some Bash syntax first

# Control
color magenta "\<(if|else|for|function|case|esac|in|select|until|while|do|elif|then|set|\.|done|fi)\>"

# Brackets and redirects
color yellow "[(){}[;|<>]"
color yellow "\]"

# Builtins
color red "\<(source|alias|bg|bind|break|builtin|cd|command|compgen|complete|continue|dirs|disown|echo|enable|eval|exec|exit|fc|fg|getopts|hash|help|history|jobs|kill|let|logout|popd|printf|pushd|pwd|return|set|shift|shopt|suspend|test|times|trap|type|ulimit|umask|unalias|wait)\>"

# Unix Commands
color red "\<(arch|awk|bash|bunzip2|bzcat|bzcmp|bzdiff|bzegrep|bzfgrep|bzgrep|bzip2|bzip2recover|bzless|bzmore|cat|chattr|chgrp|chmod|chown|chvt|cp|date|dd|deallocvt|df|dir|dircolors|dmesg|dnsdomainname|domainname|du|dumpkeys|echo|ed|egrep|false|fgconsole|fgrep|fuser|gawk|getkeycodes|gocr|grep|groups|gunzip|gzexe|gzip|hostname|igawk|install|kbd_mode|kbdrate|killall|last|lastb|link|ln|loadkeys|loadunimap|login|ls|lsattr|lsmod|lsmod.old|mapscrn|mesg|mkdir|mkfifo|mknod|mktemp|more|mount|mv|nano|netstat|nisdomainname|openvt|pgawk|pidof|ping|ps|pstree|pwd|rbash|readlink|red|resizecons|rm|rmdir|run-parts|sash|sed|setfont|setkeycodes|setleds|setmetamode|setserial|sh|showkey|shred|sleep|ssed|stat|stty|su|sync|tar|tempfile|touch|true|umount|uname|unicode_start|unicode_stop|unlink|utmpdump|uuidgen|vdir|wall|wc|ypdomainname|zcat|zcmp|zdiff|zegrep|zfgrep|zforce|zgrep|zless|zmore|znew|zsh)\>"

# More Unix Commands
color red "\<(aclocal|aconnect|aplay|apm|apmsleep|apropos|ar|arecord|as|as86|autoconf|autoheader|automake|awk|basename|bc|bison|c\+\+|cal|cat|cc|cdda2wav|cdparanoia|cdrdao|cd-read|cdrecord|chfn|chgrp|chmod|chown|chroot|chsh|clear|cmp|co|col|comm|cp|cpio|cpp|cut|dc|dd|df|diff|diff3|dir|dircolors|directomatic|dirname|du|env|expr|fbset|file|find|flex|flex\+\+|fmt|free|ftp|funzip|fuser|g\+\+|gawk|gc|gcc|gdb|getent|getopt|gettext|gettextize|gimp|gimp-remote|gimptool|gmake|gs|head|hexdump|id|install|join|kill|killall|ld|ld86|ldd|less|lex|ln|locate|lockfile|logname|lp|lpr|ls|lynx|m4|make|man|mkdir|mknod|msgfmt|mv|namei|nasm|nawk|nice|nl|nm|nm86|nmap|nohup|nop|od|passwd|patch|pcregrep|pcretest|perl|perror|pidof|pr|printf|procmail|prune|ps2ascii|ps2epsi|ps2frag|ps2pdf|ps2ps|psbook|psmerge|psnup|psresize|psselect|pstops|rcs|rev|rm|scp|sed|seq|setterm|shred|size|size86|skill|slogin|snice|sort|sox|split|ssh|ssh-add|ssh-agent|ssh-keygen|ssh-keyscan|stat|strings|strip|sudo|suidperl|sum|tac|tail|tee|test|tr|uniq|unlink|unzip|updatedb|updmap|uptime|users|vmstat|w|wc|wget|whatis|whereis|which|who|whoami|write|xargs|yacc|yes|zip|zsoelim)\>"

# Strings
color blue "\"(\\.|[^\"])*\""
color blue "'(\\.|[^\'])*'"

# Variables, keep it below the strings, such that vars are highlighted inside strings.
color cyan start="[$@%]" end="([[:alnum:]]|_)*"

# Comments
color green "#.*$"

на CENTOS это почему-то не сработало. Тогда я использовал другое решение:

создал файл ~/.nanorc

в него добавил строку:

подсветка синтаксиса bash в CENTOS

include "/usr/share/nano/sh.nanorc"

обратите внимание перед include нет знака и файл подсветки синтаксиса называется sh.nanorc от включен в стандартную поставку ОС Centos Linux

Posted in Bash CentOS Gentoo Linux SAMBA Операционные системы (ОС) Сеть Справочник комманд

как найти значение из одного файла (IP адрес) в другом файле (IP пробел имя пользователя)

BASH + AWK — поиск содержимого одного файла в другом и вывод значения рядом с ним

Это мне понадобилось, чтобы решить задачу смены пароля пользователя Samba через подключение Putty. При этом у меня есть файл содержащий соответствия IP адресов и логинов пользователей (у меня система такая: один компьютер — один пользователь).

<strong>cat '/home/tvs/scripting/15.txt' | while read LINE ; do awk "/^$LINE\ /{print \$2}" '/home/tvs/scripting/userip.txt'; done</strong>

разберем этот скрипт:

cat ‘/home/tvs/scripting/15.txt’ — вывести содержимое файла 15.txt

while read LINE ;    # в конвеере на вход команды BASH чтения строк из конвеера:

do # начало действий цикла BASH

awk «/^$LINE\ /{print \$2}» ‘/home/tvs/scripting/userip.txt’;

done # конец действий цикла BASH

/^ — ^ это спецсимвол, поэтому он экранируется с помощью символа /

$LINE — переменная куда была считана строка с помощью while read LINE (строка из файла /home/tvs/scripting/15.txt)

/{print \$2}» — вывод значения 2го столбца файла /home/tvs/scripting/userip.txt

/{ — экранирование спецсимвола {, чтобы сказать что это относится к AWK, а не BASH

\$2} — экранирование спецсимвола $2 (переменной AWK, содержащей значение 2го столбца (или другими словами 2е значение текущей в строке

например в файле с содержимым: 127.0.0.1     localhost

выведет localhost 

)

{} — в AWK действие, которое должно быть выполнено при нахождении нужного значения записывается в таких скобках, чтобы BASH не спутал их со своими вложенными запусками дочерних процессов в консоли эти скобки экранированны символами \

 

Таким образом этот файл выведет:

значение 2го столбца в файле /home/tvs/scripting/userip.txt, найденное в результате получения из файла /home/tvs/scripting/15.txt строки, содержащей IP адрес.

Причем, в файле /home/tvs/scripting/userip.txt будет найдена строка, совпадающая со значением IP адреса из  файла /home/tvs/scripting/15.txt

 

Posted in Bash CentOS Gentoo Linux Ubuntu Без рубрики Операционные системы (ОС)

Детали по теме базовое обучение: awk синтаксис, Awk команды, Awk скрипты, BASH скрипты

\t — означает символ табуляции

[] — обозначение множества символов (в регулярных выражениях) AWK работает с регулярными выражениями в подстроках поиска [:digit:] — множество символов, написано, что является аналогом множества символов: [0-9]

^ — в регулярном выражении означает отрицание

Знак доллара — $ — в конце регулярного выражения соответствует концу строки.

«^$» соответствует пустой строке.

«[xyz]» — один из перечисленных символов x, y или z.

«[c-n]» один из символов в диапазоне от c до n, включительно.

«[B-Pk-y]» — один любойсимвол в диапазоне от B до P или в диапазоне от k до y, включительно.

«[a-z0-9]» — один из символов латиницы в нижнем регистре или цифра.

«[^b-d]» — любой символ, кроме символов из диапазона от b до d, включительно. В данном случае, метасимвол ^ означает отрицание.

Если объединить выражения в квадратных скобках в одну последовательность, можно задать необходимое для поиска выражение. Например, выражение «[Yy][Ee][Ss]» соответствует словам yes, Yes, YES, yEs и так далее. Выражение «[0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9][0-9][0-9]» определяет шаблон для поиска любого номера карточки социального страхования (для США).

 

 

Posted in Bash CentOS Gentoo Linux Ubuntu Операционные системы (ОС) Справочник комманд

Как сделать функцию в BASH

чтобы создать функцию в BASH нужно объявить ее, а затем использовать:

функции в BASH, Linux

function check_users_online()

{

# так начинается описание тела функции

echo «Есть юзеры»

} # так заканчивается описание тела функции

function check_users_online # указывается при вызове без скобок!

Posted in Bash CentOS Gentoo Linux Ubuntu Операционные системы (ОС) Справочник комманд

как сменить цвет текста в консоли Linux

чтобы покрасить текст в консоли или скрипте для нее нужно сделать следующее:

как покрасить текст в консоли Linux

#Это комментарий.

#Ниже объявляются переменные консоли (BASH интерпретатор команд)

SETCOLOR_GREEN=»echo -en \\033[1;32m»

SETCOLOR_RED=»echo -en \\033[1;31m»

SETCOLOR_NORMAL=»echo -en \\033[0;39m»

#как использовать:

$SETCOLOR_GREEN

echo «Этот текст выводится зеленым цветом.»

$SETCOLOR_NORMAL

echo «Этот цвет будет выведен с обычной расцветкой»

Posted in Bash CentOS Gentoo LDAP Linux Ubuntu Справочник комманд

Как очистить экран в консоли Linux

чтобы очистить экран в консоли linux наберите

Очистка экрана консоли Linux
clear
Posted in Bash CentOS Gentoo LDAP Linux Ubuntu Без рубрики установка программ

Настройка LDAP

http://www.opennet.ru/openforum/vsluhforumID1/26617.html

Posted in Bash CentOS Gentoo Linux Ubuntu Справочник комманд

Bash Linux

http://www.k-max.name/linux/peremennye-intepretatora-bash/ — работа с переменными в Bash

unset my_var — удаление переменной в Bash

http://linuxgeeks.ru/bash-1.htm — Bash в примерах

http://habrahabr.ru/post/52871/ — циклы в Bash

http://eddnet.org/?p=1140 — запись в переменную результата работы скрипта и другие виды работ с переменными

 

samba_logo
Posted in CentOS Gentoo Linux SAMBA Ubuntu Справочник комманд

smbclient — сведения о подключениях пользователей SAMBA

http://www.samba.org/samba/docs/man/manpages/smbclient.1.html

команды:

smbclient -L — просмотр подключений к серверу SAMBA (кто висит на шарах) и какие файлы они используют.

 

Posted in CentOS Gentoo Linux SAMBA Ubuntu Операционные системы (ОС) Сеть Справочник комманд установка программ

отправка net send из Linux Windows клиентам

чтобы отправить сообщение нужно запустить из Linux команду:

cat file_with_message | smbclient -N -M win_ computer_name

параметр -N — означает не запрашивать пароль

параметр -M после него через пробел указывается имя компьютера

Posted in CentOS Gentoo Linux SSH Ubuntu Windows Операционные системы (ОС)

как в PuTTY скопировать текст в буфер обмена?

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

Posted in CentOS Gentoo Linux SAMBA Ubuntu установка программ

SAMBA: Failed to retrieve printer list: NT_STATUS_UNSUCCESSFUL

Samba log showing error: failed to retrieve printer list

Добавьте в /etc/samba/smb.conf: