rec.sh

来自「Programa para calcular automatos」· Shell 代码 · 共 55 行

SH
55
字号
#!/bin/bashARQ=$1if [ ! -e temp ] ; then mkdir temp ; else rm -Rf temp/* ; fiif [ ! -e data ] ; then mkdir data ; else rm -Rf data/* ; fiif [ ! -e $ARQ ] ; then echo "Arquivo inexistente ou sem acesso"; exit 1  ; fi BOLAS=`cat $ARQ | head -1 | tail -n 1`VARS=`cat $ARQ | head -2 | tail -n 1 | sed 's/V/Vazio/'`INICIAL=`cat $ARQ | head -3  | tail -n 1 | sed 's/[^0-9]//'`FINAL=`cat $ARQ | head -4 | tail -n 1 |  sed 's/[^0-9]//'`IFS=" "NUMVARS="0"for i in $VARSdo	NUMVARS=$((NUMVARS+1))doneIFS=""for i in `cat $ARQ | tail -n $NUMVARS`do	VARTMP=`echo $i | sed 's/^\([^\ ]*\).*/\1/'`	IFS=" "	CONTADOR=0	for e in `echo $i | sed 's/^[^\ ]* \(.*\)/\1/'`	do		#echo "e: $e"		for f in `echo $e |  tr ',' ' ' | tr -d '-'`		do			echo "$VARTMP "`echo $f | sed s/[^0-9]*//` >> data/$CONTADOR		done	touch data/$CONTADOR	CONTADOR=$((CONTADOR+1))	donedonefor i in data/*do	ECHOTMP=""	if [ "${INICIAL}" = "${i##*/}" ] ; then ECHOTMP="->" ; fi 		if [ "${FINAL}" = "${i##*/}" ] ; then ECHOTMP='+' ; fi	ECHOTMP=`echo ${ECHOTMP}"${i##*/} = { "`	IFS=""	ECHOTMP=${ECHOTMP}"${i##*/} "	for e in `cat ${i} | grep 'V' |sed 's/.* \(.*\)$/\1/'`	do		if [ ${i##*/} != "${e}" ] ; then ECHOTMP=${ECHOTMP}"$e " ; fi	done	echo "${ECHOTMP}}"done	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?