Инвертируем поведение tail и head

Очень короткая заметка про tail и head. Как известно head и tail работают с 10 первыми или последними строками соответственно. Но бывает необходимость получить все строки, кроме, например первых трех, или наоборот кроме последних 3.

Приведу пример работы, вот простой файл:

user@Ubuntu:~$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14 …
more ...

Скрипт генерации сертификатов SSL для nginx.

Скрипт генерации ssl сертификатов и ключей для nginx:

#!/bin/sh

error() {
    echo 'ERROR detected! Exiting...'
    exit 1
}

#################################################
DOMAIN='domain.com'
EMAIL='admin@domain.com'
ORGANISATION='Organisation'
CITY='you city'
RSA_BIT=2048
DAYS=99365
#################################################

# Генерируем пароль для ключей.
PASS=$(tr -cd A-Za-z < /dev/urandom | head -c8)
echo 'Generated Password: '${PASS}

# Проверим …
more ...

sh скрипт для поиска и удаления одинаковых файлов по md5. (script for delete duplicates files by md5 hash).

Скрипт для поиска и удаления одинаковых файлов по md5:

#!/bin/sh

#TODO - проверить наличие необходимых утилит
#md5
#find
#getopts
#grep

get_yes_no() {
    while [ true ]; do
        echo -n "$1 (Y/N) ? "
        read a
        if [ $? != 0 ]; then
            a='No'
            return
        fi
        case $a in
            [Yy]) a='Yes'; return ;;
            [Nn]) a='No'; return ;;
            *) ;;
        esac …
more ...