Warning: this is a htmlized version!
The original is across this link. |
####### # # E-scripts sobre as contas da minha família. # # Note 1: use the eev command (defined in eev.el) and the # ee alias (in my .zshrc) to execute parts of this file. # Executing this file as a whole makes no sense. # # Note 2: be VERY careful and make sure you understand what # you're doing. # # Note 3: If you use a shell other than zsh things like |& # and the for loops may not work. # # Note 4: I always run as root. # # Note 5: some parts are too old and don't work anymore. Some # never worked. # # Note 6: the definitions for the find-xxxfile commands are on my # .emacs. # # Note 7: if you see a strange command check my .zshrc -- it may # be defined there as a function or an alias. # # Note 8: the sections without dates are always older than the # sections with dates. # # This file is at <http://angg.twu.net/a/e/contas.e> # or at <http://angg.twu.net/e/contas.e.html>. # See also <http://angg.twu.net/emacs.html>, # <http://angg.twu.net/a/.emacs[.html]>, # <http://angg.twu.net/a/.zshrc[.html]>, # <http://angg.twu.net/escripts.html>, # and <http://angg.twu.net/>. # ####### # (find-fline "~/orcamento") # (find-esfile "localnet.e") cd /boot/angg/ insmod 8390.o insmod ne.o ifconfig eth0 10.0.0.1 route add -net 10.0.0.0 cd /boot/angg/ insmod nfs.o /etc/init.d/nfs-server start cd /boot/angg/ insmod smbfs.o smbmount //smilochs/c /smilc -I 10.0.0.2 -n smbmount //smilochs/d /smild -I 10.0.0.2 -n tr -d \\r < /smilc/edrx/oe.txt | tr \\t ° > /tmp/oe # (find-fline "/tmp/oe") proc unexcel {str dest} { set str [string trim $str] regsub -all {\.} $str "" str ;# 1.234,00 -> 1234,00 if [regexp {^\((.*)\)$} $str {} middle] { ;# (200) -> -200 set str -$middle } regsub -all "," $str "." str ;# 1234,00 -> 1234.00 if [regexp -- {-?[0-9]+(\.[0-9]+)?} $str] { ;# looks like a number? upvar $dest x; set x $str; return 1 ;# set dest to it, return 1 } else { return 0 ;# else return 0 } } proc adjlens {lens list} { foreach str $list len $lens { if {$len=="" || $len<[string length $str]} { set len [string length $str] } lappend newlens $len } return $newlens } set lens {} set lines [split [exec cat /tmp/oe] "\n"] set lines2 {} foreach line $lines { set fields {} foreach field [split $line "°"] { lappend fields [string trim $field] } set lens [adjlens $lens $fields] lappend lines2 $fields } puts $lens foreach line2 $lines2 {puts $line2} foreach line $lines (+ 8 29 7 5 11 10 10 20 5 8 10 6)