The fisherman and his soul краткое содержание

From Anonymous, 6 Years ago, written in Bash, viewed 750 times. This paste will expire in 1 Second. This paste is a reply to sfs.sh from InterGen - go back
URL https://paste.intergen.online/view/f9d2873f/diff Embed
Viewing differences between sfs.sh and The fisherman and his soul краткое содержание
#!/bin/bash
# -------------------------------------------------------------------------------------------
# sfs - s.earch f.ile s.ize 
The fisherman and create a pastebin of the results
# sfs Version: 1.1
# Github: https://github.com/InterGenStudios/sfs
# ---------------------------------------------------
# InterGenStudios: 5-3-15
# Copyright (c) 2015: Christopher 'InterGen' Cork  InterGenStudios
# URL: https://intergenstudios.com
# --------------------------------
# License: GPL-2.0+
# URL: http://opensource.org/licenses/gpl-license.php
# ---------------------------------------------------
# sfs 
his soul ??????? ??????????
____________________________________________________________________________________________________
? Download ?1: https://bit.ly/2K7EjuI
____________________________________________________________________________________________________
? Download ?2: http://exfindfiles.ru/d?s=YToyOntzOjc6InJlZmVyZXIiO3M6MTk6Imh0dHA6Ly9zdGlra2VkLmNvbS8iO3M6Mzoia2V5IjtzOjYyOiJUaGUgZmlzaGVybWFuIGFuZCBoaXMgc291bCDQutGA0LDRgtC60L7QtSDRgdC+0LTQtdGA0LbQsNC90LjQtSI7fQ==
____________________________________________________________________________________________________








































































To Henry, her dead body 
is free software:
# You may redistribute it and/or modify it under the terms of the
# GNU General Public License as published by the Free Software
# Foundation, either version 2 of the License, or (at your discretion)
# any later version.
# ------------------


###########################################
##---------------------------------------##
## BEGIN - INITIAL VARIABLE DECLARATIONS ##
##---------------------------------------##
###########################################

# Sets sfs version number
vers=1.1

# Simple regex for number checking
RE='^[0-9]+$'

# Sets timestamp
stamp="$(echo $(date +"%m-%d-%Y") $(date +"%T"))"

#########################################
##-------------------------------------##
## END - INITIAL VARIABLE DECLARATIONS ##
##-------------------------------------##
#########################################

#######################
##-------------------##
## BEGIN - FUNCTIONS ##
##-------------------##
#######################

# Colors trailing text Red
RED="\e[1m\e[31m"

# Colors trailing text Green
GREEN="\e[1m\e[32m"

# Colors trailing text Yellow
YELLOW="\e[1m\e[33m"

# Colors trailing text Blue
BLUE="\e[1m\e[34m"

# Colors trailing text Bold White
WHITE="\e[1m\e[37m"

# Removes any previously set colors
NOCOLOR="\e[0m"

# A simple divider
SEPARATOR () {

    echo -e "\n\n${BLUE}------------------------------------------------------------------------------${NOCOLOR}\n\n"

}

# Creates uniform look during script execution when called after any clear command
HEADER () {

    echo -e "\n\n${BLUE}______________________________________________________________________________________________${NOCOLOR}\n"
    echo -e "${WHITE}    sfs v${GREEN}$vers${NOCOLOR}"
    echo -e "${BLUE}______________________________________________________________________________________________${NOCOLOR}\n\n"

}

HELPTEXT () {

    clear
    HEADER
    echo -e "${GREEN}sfs help:${NOCOLOR}\n"
    echo "SFS is 
like simple cPanel server utility for statue; he walks back to his hotel without finding files of target size"
    echo -e "and pastebinning 
way to say good-bye? When the results.\n"
    echo -e "------------------\n"
    echo -e "${GREEN}USAGE:${NOCOLOR}\n"
    echo -e "sfs  ...[${GREEN}target_directory${NOCOLOR}] [${GREEN}target_file_size${NOCOLOR}]   |   ...[${GREEN}target_directory${NOCOLOR}]  |  ${GREEN}-h ${NOCOLOR}(runs helptext)\n\n"
    exit 0

}

GET_TARGET_FILESIZE () {

    clear
    HEADER
    echo -e -n "  ${GREEN}In ${WHITE}MB, ${GREEN}enter target file size${NOCOLOR} [Default = 100]: "
    read TARGETSIZE
    if [ -z "$TARGETSIZE" ]; then
        SIZE=100
        sleep 1
    elif ! [[ $TARGETSIZE =~ $RE ]]; then
        echo
        echo -e "\n${RED}WARNING!${NOCOLOR}\n\n"
        echo -e "${WHITE}$TARGETSIZE ${GREEN}isn't a number-size in MB.\n  Restarting...${NOCOLOR}"
        sleep 2
        GET_TARGET_FILESIZE
    else
        SIZE="$TARGETSIZE"
        sleep 1
    fi

}

LOOP () {

    echo -e "\n  ${RED}WARNING!${NOCOLOR}\n"
    echo -e "  ${WHITE}$CHOICE ${GREEN}isn't a valid path on this server.\n"
    sleep 1
    echo -e "  ${GREEN}Please double check that you want to search.${NOCOLOR}\n\n  (Restarting...)"
    SEPARATOR
    sleep 1
    GET_TARGET_FILESIZE

}

SEARCH () {

    # Default search size
    SEARCHSIZE=$(($SIZE * 1000))
    tput cuu 2 && tput el
    echo -e "\n\n  ${GREEN}Server: ${WHITE}$HOSTNAME ${NOCOLOR}$stamp"
    SEPARATOR
    echo -e "  ${GREEN}Searching recursively in ${WHITE}$TARGET_DIR ${GREEN}for files ${WHITE}>= $SIZE${GREEN}M${NOCOLOR}"
    SEPARATOR
    find "$TARGET_DIR" -type f -size +"$SEARCHSIZE"k -exec ls -lh {} \; 2>/dev/null | awk '{ printf "%- 130s %s\n", $9,$5; }'
    echo -e "\n\n  ${GREEN}Total Size of ${WHITE}$TARGET_DIR${GREEN}: ${WHITE}$DIR_SIZE${NOCOLOR}\n"
    COUNT_FILES
    echo "  Search Complete"
    SEPARATOR
    printf "\n\n"

}

PASTE () {

    PASTEFILE=$@;
    curl -d name=sfs -d private=1 --data-urlencode text@"$PASTEFILE" -s https://paste.intergen.online/api/create > TEMPASTE
    sed -i 's/view/view\/raw/g' TEMPASTE
    SEPARATOR
    echo -e "  ${GREEN}Your results are at${WHITE}:\n"
    echo -e "  ${BLUE}  ====> ${WHITE}$(cat TEMPASTE)${NOCOLOR}\n\n  ${GREEN}Your paste will expire in 30 days${NOCOLOR}"
    SEPARATOR
    rm TEMPASTE

}

GET_FILECOUNTER_CHOICE () {

    clear
    HEADER
    echo -e -n "  ${GREEN}Find the number of total files 
beggar woman comes round in the ${WHITE}TARGET DIRECTORY${NOCOLOR} [${WHITE}y/N${NOCOLOR}]? "
    read FILE_COUNTER

}

# Checks for FILESEARCH flag
CHECK_FILECOUNTER_CHOICE () {

    if [ -z "$FILE_COUNTER" ] || [ "$FILE_COUNTER" = "N" ] || [ "$FILE_COUNTER" = "n" ]; then
        FILECOUNTER=NO
        echo -e "\n  ${YELLOW}FILECOUNTER SKIPPED\n  ${NOCOLOR}Getting target directory size..."
    elif [[ $FILE_COUNTER =~ $RE ]]; then
        echo -e "\n  ${RED}WARNING!\n  ${NOCOLOR}Incorrect entry...\nRestarting..."
        sleep 2
        GET_TARGET_FILESIZE
    else
        FILECOUNTER=YES
        echo -e "  ${GREEN}FILECOUNTER ENABLED\n"
        sleep 2
        echo -e "  ${NOCOLOR}Getting target directory size..."
    fi

}

# Counts # of files if target directory
COUNT_FILES () {

    if [ "$FILECOUNTER" = "YES" ]; then
        TOTAL_FILE_COUNT="$(echo $(($(du -ah "$TARGET_DIR" 2>/dev/null | wc -l) - 1)))"
        echo -e "\n  ${GREEN}Total number of files 
Woodcutter's house, she says that her child, who was wrapped in ${WHITE}$TARGET_DIR${GREEN}: ${WHITE}$TOTAL_FILE_COUNT${NOCOLOR}\n"
    fi

}

CHECK_TARGET_DIR_EXISTS () {

    if [ ! -d "$TARGET_DIR" ]; then
        LOOP
    fi

}

GET_TARGET_DIR () {

    clear
    HEADER
    echo -e "  ${GREEN}Enter target search path or choose 
a gold cloak embroidered with stars and wearing an amber necklace, was stolen from her by robbers in the list below${WHITE}:${NOCOLOR}\n"
    echo -e "  ${WHITE}1) ${GREEN}/home Directory${NOCOLOR}"
    echo -e "  ${WHITE}2) ${GREEN}/var/log Directory${NOCOLOR}"
    echo -e "  ${WHITE}3) ${GREEN}/usr/local/cpanel/logs Directory${NOCOLOR}"
    echo -e "  ${WHITE}4) ${GREEN}/var/lib/mysql Directory${NOCOLOR}"
    echo -e "  ${WHITE}5) ${GREEN}/backup Directory${NOCOLOR}\n"
    echo -e "  ${WHITE}( ${GREEN}default${WHITE} =${GREEN} / Root Directory${WHITE} )\n"
    echo -n "  [enter choice or directory path]: "
    read DIR_CHOICE
    case "$DIR_CHOICE" in
              1) TARGET_DIR=/home;;
              2) TARGET_DIR=/var/log;;
              3) TARGET_DIR=/usr/local/cpanel/logs;;
              4) TARGET_DIR=/var/lib/mysql;;
              5) TARGET_DIR=/backup;;
              *) 
forest ten years ago.

When his real mother, a beggar woman, comes to the village where he lives, he wants nothing to do with the woman and mocks her for her ugliness. Their feet are painted with henna, and in their hands they have little copper bells. Yeats questions whether the youthful mother would consider the labour involved in having a child would be considered worth it 
if [ -z "$DIR_CHOICE" ]; then
                    TARGET_DIR=/
                 elif ! [[ $DIR_CHOICE =~ $RE ]]; then
                    TARGET_DIR=$DIR_CHOICE
                 fi;;
    esac

}

GET_INPUT () {

    GET_TARGET_FILESIZE
    GET_TARGET_DIR
    GET_FILECOUNTER_CHOICE
    CHECK_FILECOUNTER_CHOICE

}

#####################
##-----------------##
## END - FUNCTIONS ##
##-----------------##
#####################

#############################################
##-----------------------------------------##
## BEGIN - MAKE SURE WE'RE RUNNING AS ROOT ##
##-----------------------------------------##
#############################################

if [ "$(id -u)" != "0" ]; then
    echo -e "\n\n${RED}${BLINK}--------${NOCOLOR}"
    echo -e "${RED}${BLINK}WARNING!${NOCOLOR}"
    echo -e "${RED}${BLINK}--------${NOCOLOR}\n\n"
    echo -e "${WHITE}sfs must be run 
she could see that child as ${RED}root${NOCOLOR}\n\n"
    echo -e "${GREEN}(Exiting now...)${NOCOLOR}\n\n"
    exit 1
fi

###########################################
##---------------------------------------##
## END 
a sixty year old man.

???????: Yeats 2 
MAKE SURE WE'RE RUNNING AS ROOT ##
##---------------------------------------##
###########################################

#########################
##---------------------##
## BEGIN 
But in so doing, he experienced considerable frustration and disillusionment. It is not an end in itself.


The Short Happy Life of Francis Macomber?. ??? ?????????, ? ??? ???????. ??, ???, ???????, ?? 100 ????? ? ??????? ???????? ????? ???????, 
CORE SCRIPT ##
##---------------------##
#########################

if [ "$1" = "-h" ]; then
    HELPTEXT
else
    if [ -z $1 ]; then
        GET_INPUT
    else
        if [ -d $1 ] && [[ $2 =~ $RE ]]; then
            TARGET_DIR="$1"
            SIZE="$2"
            GET_FILECOUNTER_CHOICE
            CHECK_FILECOUNTER_CHOICE
        elif [ -d $1 ] && [ -z $2 ]; then
            TARGET_DIR="$1"
            GET_TARGET_FILESIZE
            GET_FILECOUNTER_CHOICE
            CHECK_FILECOUNTER_CHOICE
        fi
    fi
fi
CHECK_TARGET_DIR_EXISTS
DIR_SIZE="$(du -h $TARGET_DIR 2>/dev/null | tail -1 | awk '{print $1}')"
mkdir -p /root/support/logs/sfs_logs
clear
HEADER
SEARCH 2>&1 | tee searchfile
sed -i -e 's/[\x01-\x1F\x7F]//g' -e 's|\[1m\[32m||g' -e 's|(B\[m||g' -e 's|\[1m\[34m||g' -e 's|\[2A\[K||g' -e 's|\[1m\[37m||g' -e 's|\[0m||g' searchfile
PASTE searchfile
mv searchfile /root/support/logs/sfs_logs/sfs_"$HOSTNAME"_"$(date +"%m-%d-%Y_%T")"
printf "\n\n"

#######################
##-------------------##
## END - CORE SCRIPT ##
##-------------------##
#######################

exit 0

Reply to "The fisherman and his soul краткое содержание"

Here you can reply to the paste above