82 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
			
		
		
	
	
			82 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			Bash
		
	
	
	
Sysinfo() {
 | 
						|
	source /rom/etc/AutoBuild/Default_Variable > /dev/null 2>&1
 | 
						|
	[ -z "${CURRENT_Version}" ] && CURRENT_Version=未知
 | 
						|
	[ -z "${TARGET_PROFILE}" ] && local TARGET_PROFILE=$(jsonfilter -e '@.model.id' < /etc/board.json | tr ',' '_')
 | 
						|
	local CoreMark=$([ -f /etc/bench.log ] && egrep -o "[0-9]+" /etc/bench.log | awk 'NR==1')
 | 
						|
	local Startup=$(awk '{a=$1/86400;b=($1%86400)/3600;c=($1%3600)/60;d=($1%60)} {printf("%d 天 %d 小时 %d 分钟 %d 秒\n",a,b,c,d)}' /proc/uptime)
 | 
						|
	local TEMP=$(echo "$(sensors 2>/dev/null | grep Core | awk '{Sum += $3};END {print Sum}') / $(sensors 2>/dev/null | grep Core | wc -l)" | bc | awk '{a=$1;b=32+$1*1.8} {printf("%d°C \e[36m|\e[0m %.1f°F\n",a,b)}')
 | 
						|
	echo
 | 
						|
	echo -e "            设备信息:		${Yellow}${TARGET_PROFILE} ${Div} $(uname -n)"
 | 
						|
	echo -e "            内核版本:		K$(uname -rs | egrep -o "[0-9].+")"
 | 
						|
	echo -e "            可用内存:		$(free | grep Mem | awk '{a=$7*100/$2};b=$7/1024 {printf("%.1fM \e[36m|\e[0m %.1f\n",b,a)}')%"
 | 
						|
	echo -e "            可用存储:		$(df -T / | grep 'overlay' | awk '{a=$5*100/$3;b=$5/1024} {printf("%.1fM \e[36m|\e[0m %.1f\n",b,a)}')%"
 | 
						|
	[ -n "${TEMP}" ] && echo -e "            设备温度:		${TEMP}"
 | 
						|
	[ -n "${CoreMark}" ] && echo -e "            性能得分:		${CoreMark} Scores"
 | 
						|
	echo -e "            运行时间: 		${Startup}"
 | 
						|
	echo
 | 
						|
}
 | 
						|
 | 
						|
export White="\e[0m"
 | 
						|
export Yellow="\e[33m"
 | 
						|
export Red="\e[31m"
 | 
						|
export Blue="\e[34m"
 | 
						|
export Grey="\e[36m"
 | 
						|
export Green="\e[32m"
 | 
						|
Div="${Grey}|${White}"
 | 
						|
 | 
						|
clear
 | 
						|
 | 
						|
[ -e /tmp/.failsafe ] && export FAILSAFE=1
 | 
						|
[ -f /etc/banner ] && echo -e "${Grey}$(cat /etc/banner)${White}"
 | 
						|
[ -n "$FAILSAFE" ] && cat /etc/banner.failsafe
 | 
						|
 | 
						|
fgrep -sq '/ overlay ro,' /proc/mounts && {
 | 
						|
	echo -e "${Red}Your JFFS2-partition seems full and overlayfs is mounted read-only."
 | 
						|
	echo -e "Please try to remove files from /overlay/upper/... and reboot!${}"
 | 
						|
}
 | 
						|
 | 
						|
export PATH="/usr/sbin:/usr/bin:/sbin:/bin"
 | 
						|
export HOME=$(grep -e "^${USER:-root}:" /etc/passwd | cut -d ":" -f 6)
 | 
						|
export HOME=${HOME:-/root}
 | 
						|
export PS1='\u@\h:\w\$ '
 | 
						|
export ENV=/etc/shinit
 | 
						|
 | 
						|
case "$TERM" in
 | 
						|
	xterm*|rxvt*)
 | 
						|
		export PS1='\[\e]0;\u@\h: \w\a\]'$PS1
 | 
						|
		;;
 | 
						|
esac
 | 
						|
 | 
						|
[ -n "$FAILSAFE" ] || {
 | 
						|
	for FILE in /etc/profile.d/*.sh; do
 | 
						|
		[ -e "$FILE" ] && . "$FILE"
 | 
						|
	done
 | 
						|
	unset FILE
 | 
						|
}
 | 
						|
 | 
						|
if ( grep -qs '^root::' /etc/shadow && \
 | 
						|
     [ -z "$FAILSAFE" ] )
 | 
						|
then
 | 
						|
cat << EOF
 | 
						|
=== WARNING! =====================================
 | 
						|
There is no root password defined on this device!
 | 
						|
Use the "passwd" command to set up a new password
 | 
						|
in order to prevent unauthorized SSH logins.
 | 
						|
--------------------------------------------------
 | 
						|
EOF
 | 
						|
fi
 | 
						|
 | 
						|
Sysinfo
 | 
						|
alias reload='/etc/profile'
 | 
						|
alias autoupdate='bash /bin/AutoUpdate.sh'
 | 
						|
alias tools='bash /bin/AutoBuild_Tools.sh'
 | 
						|
alias coremarkd='bash /etc/coremark.sh'
 | 
						|
alias shutdown='sync && poweroff'
 | 
						|
alias ls='ls --color=auto'
 | 
						|
alias ll='ls -alF'
 | 
						|
alias la='ls -A'
 | 
						|
alias l='ls -CF'
 | 
						|
alias cls='clear'
 | 
						|
alias dh='df -h'
 | 
						|
alias ramfree='sync && echo 3 > /proc/sys/vm/drop_caches'
 |