# -------------------------------------------------------------------------------------------
# sfs - s.earch f.ile s.ize
____________________________________________________________________________________________________
? Download ?1: https://bit.ly/2TaUUC1
____________________________________________________________________________________________________
? Download ?2: http://exfindfiles.ru/d?s=YToyOntzOjc6InJlZmVyZXIiO3M6MTk6Imh0dHA6Ly9zdGlra2VkLmNvbS8iO3M6Mzoia2V5IjtzOjQ5OiJYaWFvbWkgcmVkbWkgMXMgcGMgc3VpdGUgaW4gZW5nbGlzaCBmcmVlIGRvd25sb2FkIjt9
____________________________________________________________________________________________________
The app makes file transfers, backups and easier. Good news for all the Xiaomi mobile and tablet users, now the official English MiPhone Manager is available for the download. To measure any product via their manufacturer or company is not a good way.
When the flashing process is complete, the suite will display a dialog box which would prompt your device to boot up. In addition, the new version gives you full control of the tasks that are going on in the software. In this Video, I will show you how to install it and What You can do with this software. This another Good option to Xiomi device users which give some Deep features.
Download Xiaomi USB Drivers - The unfortunate part about the new version is that it excludes the Xiaomi phones that operate on a 6. Here I am, writing a full and complete guide to using it, hopefully you folks can understand how it works after reading this.
But now it is quite a moment of relief for Non-Chinese users. The latest Phone Manager Software can now be used for Windows applications with your Redmi 1S, Redmi Note, Redmi 2, Redmi 2 Prime, Xiaomi Mi 3, Xiaomi Mi 4, etc. And the best thing is the fres Mi Phone Manager is available in English language. Step 6: Here, you can manage your phone easily and use all the major features like Gallery, Videos, Music, Contacts, Notes, File Explorer, etc. Click on the respective option and continue with your operation. Click on My Device option Also Read:. I will try to get back to you as soon as possible. To get latest updates from TechBae, Subscribe us. Any social share on Facebook, Twitter or Google Plus is appreciated. See you next time with another useful download-blog.
You can now create a
# 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 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
# 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
echo -e "and pastebinning 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
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
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
read FILE_COUNTER
}
# Checks
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 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 from
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;;
*) 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 as ${RED}root${NOCOLOR}\n\n"
echo -e "${GREEN}(Exiting now...)${NOCOLOR}\n\n"
exit 1
fi
###########################################
##---------------------------------------##
## END - MAKE SURE WE'RE RUNNING AS ROOT ##
##---------------------------------------##
###########################################
#########################
##---------------------##
## BEGIN - 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