0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux服务器信息收集工具,附脚本!

jf_yLA7iRus 来源:释然IT杂谈 2023-01-05 10:21 次阅读

一、功能介绍:

1.收集服务器信息

主要收集服务器系统版本、IP地址、ARP连接、路由信息、密码信息、历史命令、当前权限、网络连接、进程信息、服务信息、SSH登录信息、环境变量、计划任务等多种信息。

2.目录结构信息收集

主要对服务器上的目录结构进行信息收集,方便查看服务器的结构目录。

3.关键词信息收集

通过在脚本中设置关键字,可以在服务器上搜索包含该关键字的文件,并将该文件所在的目录写入到指定文件中,然后我们可以通过查询该文件来访问指定目录,在配置文件中找到我们所需要的关键信息。二、使用方法:

1.查看帮助

635f5f96-8c62-11ed-bfe3-dac502259ad0.png

gather-h

6364fcee-8c62-11ed-bfe3-dac502259ad0.png

2.常规扫描

gather-s
常规扫描主要扫描服务器信息,将结构输出到/tmp/report/result.txt中

636cf69c-8c62-11ed-bfe3-dac502259ad0.png

3.全部扫描(建议使用)

gather-a
全部扫描会收集服务器信息、收集服务器目录结构、对关键字进行信息收集,并将结果输出到/tmp/report目录下,会生成tree.txt、result.txt、keyword.txt

63779124-8c62-11ed-bfe3-dac502259ad0.png

4.结果输出

6380d6d0-8c62-11ed-bfe3-dac502259ad0.png

三、脚本代码:
#!/bin/bash

#exportpath
exportPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:/sbin/:$PATH
#createresultdir
RESULT_DIR=/tmp/report
mkdir-p${RESULT_DIR}
RESULT_FILE=${RESULT_DIR}/result.txt
RESULT_TREE=${RESULT_DIR}/tree.txt
RESULT_KEY=${RESULT_DIR}/keyword.txt

if[-f"$RESULT_FILE"];then
rm-rf${RESULT_FILE}
fi

if[-f"$RESULT_TREE"];then
rm-rf${RESULT_TREE}
fi

#catsystemversion
SYS_VER=`cat/proc/version`
sys_debian="Debian"
SSH_DIR=~/.ssh/
CON_DIR=/var/spool/cron/crontabs/
showip=`iprouteshow|grep-n'eth0s*protos*kernels*scopes*links*src'|sed's/^.*src//g'|seds/metric.*$//g`
userinfo=`foriin$(cut-d":"-f1/etc/passwd2>/dev/null);doid$i;done2>/dev/null`

#sensitivedata
a_dir=("/etc/""/opt/""/var/""/home/""/root/""/usr/")
#a_file=("redis.conf""mongodb.conf""server.xml""vsftpd.conf""ldap.conf""nginx.conf""apache2.conf""smb.conf")

#banner
echo-e"33[36m--------------------------------------------------------33[0m"
echo-e"33[31m██████╗█████╗████████╗██╗██╗███████╗██████╗33[0m"
echo-e"33[31m██╔════╝██╔══██╗╚══██╔══╝██║██║██╔════╝██╔══██╗33[0m"
echo-e"33[31m██║███╗███████║██║███████║█████╗██████╔╝33[0m"
echo-e"33[31m██║██║██╔══██║██║██╔══██║██╔══╝██╔══██╗33[0m"
echo-e"33[31m╚██████╔╝██║██║██║██║██║███████╗██║██║33[0m"
echo-e"33[31m╚═════╝╚═╝╚═╝╚═╝╚═╝╚═╝╚══════╝╚═╝╚═╝33[0m"
echo-e"33[36m--------------------------------------------------------33[0m"
echo
echo-e"33[31mLinuxServerProbeScript33[0m"
echo-e"33[31mHostname:33[0m33[32m`hostname`33[0m"
echo-e"33[31mKernel:33[0m33[32m`uname-m`33[0m"
echo-e"33[31mUser:33[0m33[32m`whoami`33[0m"
echo-e"33[31mIP:33[0m33[32m${showip}33[0m"
echo-e"33[31mReport:33[0m33[32m/tmp/report33[0m"
echo-e"33[31mHelp:33[0m33[32muse-h33[0m"
echo-e"33[36m-------------------------------33[0m"

#usage
usage(){echo"Usage:$0[-s][-a][-t][-k>]"1>&2;exit1;}

#checksystem
funsys()
{
os=`uname-o`
os_re=`uname-n`
os_ke=`uname-rv`
ver=$(echo$SYS_VER|grep"${sys_debian}")
if[["$ver"!=""]]
then
echo-e"OS:33[32m${os}${os_re}33[0m"
echo-e"Kernel:33[32m${os_ke}33[0m"
echo-e"33[36m-------------------------------33[0m"
echo-e"33[31mGatherStartat33[0m`date`"
echo-e"33[36m-------------------------------33[0m"
else
echo-e"OS:33[32m${os}${os_re}33[0m"
echo-e"Kernel:33[32m${os_ke}33[0m"
echo-e"33[36m-------------------------------33[0m"
echo-e"33[31mGatherStartat`date`...33[0m"
echo-e"33[36m-------------------------------33[0m"
fi
}

#dirstruct
funtree()
{
ifcommand-vtree>/dev/null2>&1;then
foriin${a_dir[@]}
do
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_TREE
echo-e"33[32m${i}33[0m">>$RESULT_TREE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_TREE
tree${i}>>$RESULT_TREE2>&1
done
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mdirectorystructureinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mdirectorystructureinfo......33[31mFAILED33[0m"
fi
else
forsin${a_dir[@]}
do
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_TREE
echo-e"33[32m${s}33[0m">>$RESULT_TREE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_TREE
ls-R-t-s-a${s}>>tree.txt2>&1
done
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mdirectorystructureinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mdirectorystructureinfo......33[31mFAILED33[0m"
fi
fi
}

#findkey
funkey()
{
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_KEY
echo-e"33[32mFindKeywordInfo33[0m">>$RESULT_KEY
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_KEY
#findthekeyword--pass
echo-e"33[32mIncludethekeyword--passInfo33[0m">>$RESULT_KEY
find/-maxdepth4-name*.conf-typef-execgrep-Hnpass{};>>$RESULT_KEY2>&1
find/-maxdepth4-name*.ini-typef-execgrep-Hnpass{};>>$RESULT_KEY2>&1
find/-maxdepth4-name*.log-typef-execgrep-Hnpass{};>>$RESULT_KEY2>&1
#findthekeyword--includecurrentuser
echo-e"33[32mIncludethekeyword--`whoami`Info33[0m">>$RESULT_KEY
find/-maxdepth4-name*.conf-typef-execgrep-Hn`whoami`{};>>$RESULT_KEY2>&1
find/-maxdepth4-name*.ini-typef-execgrep-Hn`whoami`{};>>$RESULT_KEY2>&1
find/-maxdepth4-name*.log-typef-execgrep-Hn`whoami`{};>>$RESULT_KEY2>&1
#findthekeyword--sqlserver
echo-e"33[32mIncludethekeyword--sqlserverInfo33[0m">>$RESULT_KEY
find/-maxdepth4-name*.conf-typef-execgrep-Hnmssql{};>>$RESULT_KEY2>&1
find/-maxdepth4-name*.conf-typef-execgrep-Hnsqlserver{};>>$RESULT_KEY2>&1
#findthekeyword--mysql
echo-e"33[32mIncludethekeyword--mysqlInfo33[0m">>$RESULT_KEY
find/-maxdepth4-name*.my.cnf-typef-execgrep-Hnmysql{};>>$RESULT_KEY2>&1
#findfilesthatweremodifiedwithin72hours
echo-e"33[32mweremodifiedwithin72hoursfileInfo33[0m">>$RESULT_KEY
find/-name"*.*"-ctime-2>>$RESULT_KEY2>&1
#findtheSUIDfilewithrootaccess
echo-e"33[32mtheSUIDfilewithrootaccessInfo33[0m">>$RESULT_KEY
find/-uid0-perm-4000-typef>>$RESULT_KEY2>&1

if[[$?-eq0]]
then
echo>>$RESULT_KEY
echo-e"33[31mGather33[0mfindkeywordinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mfindkeywordinfo......33[31mFAILED33[0m"
fi
}

#commonmode
funsip()
{
#releaseinformation
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mReleaseInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/*-release>>$RESULT_FILE2>&1
cat/proc/version>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mreleaseinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mreleaseinfo......33[31mFAILED33[0m"
fi

#ifconfig
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mIPAddressInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
ipaddressshow>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mipaddressinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mipaddressinfo......33[31mFAILED33[0m"
fi

#arp
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mArpInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
arp-v>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0marpinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0marpinfo......33[31mFAILED33[0m"
fi

#route
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mRouteInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
route-v>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mrouteinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mrouteinfo......33[31mFAILED33[0m"
fi

#/etc/passwd
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mSystemPasswdFileInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
if["$userinfo"]
then
echo-e"
$userinfo">>$RESULT_FILE2>&1
else
:
fi
hashesinpasswd=`grep-v'^[^:]*:[x]'/etc/passwd2>/dev/null`
if["$hashesinpasswd"]
then
echo-e"e[00;33mItlookslikewehavepasswordhashesin/etc/passwd!e[00m
$hashesinpasswd">>$RESULT_FILE2>&1
else
:
fi
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0m/etc/passwd......33[32mOK33[0m"
else
echo-e"33[31mGather33[0m/etc/passwd......33[31mFAILED33[0m"
fi

#/etc/shadow
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mSystemShadowFileInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/shadow>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0m/etc/shadow......33[32mOK33[0m"
else
echo-e"33[31mGather33[0m/etc/shadow......33[31mFAILED33[0m"
fi

#/etc/sudoers
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mSystemSudoersFileInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/sudoers2>/dev/null|grep-v-e'^$'|grep-v"#">>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0m/etc/sudoers......33[32mOK33[0m"
else
echo-e"33[31mGather33[0m/etc/sudoers......33[31mFAILED33[0m"
fi

#compgen
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mUserexecutablecommandsFileInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
compgen-c>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mUserexecutablecommands......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mUserexecutablecommands......33[31mFAILED33[0m"
fi

#passwordpolicyinformation
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mPasswordpolicyInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/login.defs2>/dev/null|grep-v-e'^$'|grep-v"#">>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0m/etc/login.defs......33[32mOK33[0m"
else
echo-e"33[31mGather33[0m/etc/login.defs......33[31mFAILED33[0m"
fi

#/root
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mChecksroothomedirectoryInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
ls-ahl/root/>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mroothomedirectory......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mroothomedirectory......33[31mFAILED33[0m"
fi

#netstat
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mNetStatus33[0m">>$RESULT_FILE
echo-e"33[36m------------------TCP---PORT------------------------33[0m">>$RESULT_FILE
netstat-antp>>$RESULT_FILE2>&1
echo-e"33[36m------------------UDP---PORT------------------------33[0m">>$RESULT_FILE
netstat-anup>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mnetstat......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mnetstat......33[31mFAILED33[0m"
fi

#process
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mProcessInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
psaux>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mprocessinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mprocessinfo......33[31mFAILED33[0m"
fi

#services
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mServicesInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/services2>/dev/null|grep-v"#">>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mservicesinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mservicesinfo......33[31mFAILED33[0m"
fi

#iptables
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mIptablesInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
iptables-nL>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0miptablesinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0miptablesinfo......33[31mFAILED33[0m"
fi

#bashenv
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mBashEnv33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mcurrentuser33[0m">>$RESULT_FILE
echo-e"33[36m-----------------------33[0m">>$RESULT_FILE
envinfo=`env2>/dev/null|grep-v'LS_COLORS'2>/dev/null`
if["$envinfo"]
then
echo-e"
$envinfo">>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
else
:
fi
cat~/.bashrc2>/dev/null|grep-v-e'^$'|grep-v"#">>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo$PATH>>$RESULT_FILE2>&1
echo-e"33[36m-----------------------33[0m">>$RESULT_FILE
echo-e"33[32msystemenvprofile33[0m">>$RESULT_FILE
echo-e"33[36m-----------------------33[0m">>$RESULT_FILE
cat/etc/profile2>/dev/null|grep-v-e'^$'|grep-v"#">>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mbashenv......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mbashenv......33[31mFAILED33[0m"
fi

#commandhistory
HISTFILE=~/.bash_history
exportHISTTIMEFORMAT="%Y-%m-%d:%H-%M-%S:"`whoami`":"
set-ohistory
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mCommandHistory33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
history>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat$HISTFILE>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mcommandhistory......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mcommandhistory......33[31mFAILED33[0m"
fi

#userlogininfo
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mLoginInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
w>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
last>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
lastlog>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mlogininfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mlogininfo......33[31mFAILED33[0m"
fi

#hosts
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mHostsInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
find/etc/home-typef(-name"*.rhosts"-o-name"*.equiv")>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/hosts>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mhostsinfo......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mhostsinfo......33[31mFAILED33[0m"
fi

#fstab
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mMountInfo33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/fstab>>$RESULT_FILE2>&1
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0m/etc/fstab......33[32mOK33[0m"
else
echo-e"33[31mGather33[0m/etc/fstab......33[31mFAILED33[0m"
fi

#sshauthkeyconfig
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mSSHAuthKeyConfig33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
sshfiles=`find/(-name"id_dsa*"-o-name"id_rsa*"-o-name"known_hosts"-o-name"authorized_hosts"-o-name"authorized_keys")-execls-la{}2>/dev/null;`
if["$sshfiles"];then
echo-e"e[00;31mSSHkeys/hostinformationfoundinthefollowinglocations:e[00m
$sshfiles">>$RESULT_FILE2>&1
echo-e"
">>$RESULT_FILE2>&1
else
:
fi
if[-d"${SSH_DIR}"]
then
foriin`ls-1${SSH_DIR}>>$RESULT_FILE2>&1`
do
cat${SSH_DIR}${i}>>$RESULT_FILE2>&1
done
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0msshauthkey......33[32mOK33[0m"
else
echo-e"33[31mGather33[0msshauthkey......33[31mFAILED33[0m"
fi
else
echo-e"33[31mGather33[0msshauthkey......33[31mFAILED33[0m"
echo-e"33[31m.sshNosuchfileordirectory33[0m">>$RESULT_FILE
fi

#crontab
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
echo-e"33[32mCrontabConfig33[0m">>$RESULT_FILE
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
ls-al/etc/cron*>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cat/etc/rc.local>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
cut-d":"-f1/etc/passwd|xargs-n1crontab-l-u>>$RESULT_FILE2>&1
echo-e"33[36m----------------------------------------------------33[0m">>$RESULT_FILE
if[-d"${CON_DIR}"]
then
foriin`ls-1${CON_DIR}>>$RESULT_FILE2>&1`
do
cat${CON_DIR}${i}>>$RESULT_FILE2>&1
done
if[[$?-eq0]]
then
echo>>$RESULT_FILE
echo-e"33[31mGather33[0mcrontab......33[32mOK33[0m"
else
echo-e"33[31mGather33[0mcrontab......33[31mFAILED33[0m"
fi
else
echo-e"33[31mGather33[0mcrontab......33[31mFAILED33[0m"
echo-e"33[31mNosuchfileordirectory33[0m">>$RESULT_FILE
fi

}

#getopts
#./gather-t10-s
whilegetoptsshtaARGS
do
case$ARGSin
s)
#commonmode
funsys
funsip
;;
a)
#all
funsys
funsip
funtree
funkey
;;
k)
#key
funsys
funkey
;;
t)
#dirstruct
funsys
funtree
;;
h)
#help
echo"CommonMode:-s"
echo"FullMode:-a"
echo"DirTreeMode:-t"
echo"FindKeywordMode:-k"
usage
;;
*)
#paramerror
echo"$1isnotanoption"
usage
;;
esac
done
Footer


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11011

    浏览量

    206915
  • 服务器
    +关注

    关注

    12

    文章

    8213

    浏览量

    82792

原文标题:【收藏】Linux服务器信息收集工具,附脚本!

文章出处:【微信号:释然IT杂谈,微信公众号:释然IT杂谈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    服务器linux搭建ftp服务访问不了怎么解决?

    如果你在云服务器linux上搭建了FTP服务但无法访问,这可能是由于几种原因引起的。以下是一些常见问题和解决方法: 1、防火墙配置:确保防火墙允许FTP流量通过。FTP服务器通常使用端
    的头像 发表于 04-18 17:23 215次阅读

    服务器操作系统有几种?

    :微软官方信息发布,从Windows Server 2008 R2刚开始,Windows Server不要出示32位版本号。 二、网络服务器Linux电脑操作系统 自然环境布署
    发表于 03-29 16:59

    服务器linux中如何搭建php运行环境?

    要在云服务器Linux系统上搭建PHP运行环境,您可以按照以下步骤进行: 1、安装PHP: 使用包管理工具(如apt、yum等)安装PHP及其相关模块。例如,在Ubuntu系统上,您可以运行以下
    的头像 发表于 03-21 17:08 182次阅读

    服务器远程不上服务器怎么办?服务器无法远程的原因是什么?

    运营商。 2.服务器网络问题 解决办法:通过路由图来确定是哪里的线路出现丢包,联系服务器商切换线路。 二、服务器问题 服务器带宽跑满、服务器
    发表于 02-27 16:21

    linux服务器和windows服务器

    较为熟悉,需要高性能和稳定性,并且希望能够进行自定义配置和更好的安全性,那 么Linux服务器是一个不错的选择。 而如果你对服务器操作系统不太熟悉,需要广泛的应用支持和易用的管理工具
    发表于 02-22 15:46

    如何远程登录云服务器?登录失败是什么原因?

    ,使用的是ssh协议。 windows平台下有putty,Xshell,SecureCRT等工具来远程连接linux服务器。 1、putty是一款非常轻量级的SSH连接工具,可以直接运
    发表于 02-01 15:32

    服务器数据恢复-华为ECS云服务器数据恢复案例

    服务器数据恢复环境: 华为ECS云服务器linux操作系统,mysql数据库(innodb引擎)。作为网站服务器使用。 云服务器
    的头像 发表于 12-27 15:03 462次阅读
    <b class='flag-5'>服务器</b>数据恢复-华为ECS云<b class='flag-5'>服务器</b>数据恢复案例

    linux查看服务器配置

    如何使用Linux命令和工具来查看服务器配置,并提供一些附加的相关信息和技巧。 第一部分:概述服务器配置 为什么需要了解
    的头像 发表于 11-17 09:41 652次阅读

    服务器数据恢复—云服务器ECS数据恢复案例

    服务器数据恢复环境: 阿里云ECS网站服务器linux操作系统+mysql数据库。 云服务器故障: 在执行数据库版本更新测试时,在生产库误执行了本来应该在测试库执行的sq
    的头像 发表于 11-07 15:10 510次阅读
    <b class='flag-5'>服务器</b>数据恢复—云<b class='flag-5'>服务器</b>ECS数据恢复案例

    Linux指令与Shell编程范例的速查手册

    Linux是目前最热门的操作系统之一,广泛地应用在各大领域,作为服务器、测试环境、手机和平板电脑的开发平台等。 尽管目前的Linux用 户界面已经十分友善,但在实际应用中还是以命令搭配简单的编程来处
    发表于 09-22 08:01

    Linux shell脚本分享

    今天浩道跟大家分享几个Linux运维中常用到的shell脚本
    发表于 07-18 09:53 464次阅读
    <b class='flag-5'>Linux</b> shell<b class='flag-5'>脚本</b>分享

    服务器数据恢复-网站服务器数据恢复案例

    一台linux操作系统网站服务器,该服务器上部署了几十个网站,服务器上只有一块SATA硬盘。
    的头像 发表于 07-17 15:52 396次阅读

    Linux系统中5个最好的电子邮件服务器

    Linux世界中,有许多可靠可用的开源邮件服务器,这些服务器都拥有独特的特点,可用于不同的用途和场景。以下是推荐的5个最好的电子邮件服务器
    的头像 发表于 07-12 09:01 3234次阅读

    一款基于go的windows信息收集工具

    一、工具介绍 一款基于go的windows信息收集工具,主要收集目标设备rdp端口登录、mstsc远程连接记录、mstsc密码和安全事件中。
    的头像 发表于 06-25 10:13 368次阅读
    一款基于go的windows<b class='flag-5'>信息</b><b class='flag-5'>收集</b><b class='flag-5'>工具</b>

    为什么Xshell连接不上服务器

      Xshell为什么连接不上服务器?Xshell可在Windows桌面下访问不同系统下的远程终端服务器,并且进行操作控制。新手用户有时在用Xshell远程连接Linux服务器时,可能
    的头像 发表于 06-09 13:47 3729次阅读
    为什么Xshell连接不上<b class='flag-5'>服务器</b>?