# --------------------------------------------
# ΠΠΎΠ·Π΄ΡΠ°Π²Π»ΡΡ!
# ΠΡΠΎΡ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π·Π°ΠΏΡΡΡΠΈΠ»Π° ΠΊΠ°ΠΊΠ°Ρ-ΡΠΎ "ΡΠ΅Π΄ΠΈΡΠΊΠ°",
#+ ΠΈ Π·Π°ΡΡΠ°Π²ΠΈΠ»Π° ΠΎΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎΡ ΡΠ΅ΠΊΡΡ ΠΊ ΠΠ°ΠΌ.
# ΠΡΠ΅Π²ΠΈΠ΄Π½ΠΎ ΠΊΡΠΎ-ΡΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ
#+ ΠΊΡΠ΄Π° Π΄Π΅Π²Π°ΡΡ ΡΠ²ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ.
# --------------------------------------------
echo "`date`, ΡΡΠ΅Π½Π°ΡΠΈΠΉ \"`basename $0`\" ΠΎΡΠΏΡΠ°Π²Π»Π΅Π½ "$adr"."
exit 0
mailto
ΠΠΎΠΌΠ°Π½Π΄Π° mailto, ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° mail, ΠΎΠ½Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΡΡΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΡΠΎΠΌΠ΅ ΡΡΠΎΠ³ΠΎ, mailto ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡ MIME (multimedia) ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ.
vacation
ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΎΡΠ²Π΅ΡΠΎΠ² Π½Π° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΡΠ΅ ΠΏΠΈΡΡΠΌΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠ²Π΅Π΄ΠΎΠΌΠΈΡΡ ΠΎΡΠΏΡΠ°Π²ΠΈΡΠ΅Π»Ρ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ. Π Π°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ Ρ sendmail ΠΈ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠΌΡΡΠΈΡΡΠ΅ΠΌΡΠ΅ Π»ΠΈΠ½ΠΈΠΈ (ΠΏΠΎ ΠΌΠΎΠ΄Π΅ΠΌΡ).
12.7. ΠΠΎΠΌΠ°Π½Π΄Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠΌ
ΠΠΎΠΌΠ°Π½Π΄Ρ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ ΠΊ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΠΈΠ»ΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Ρ
tput
ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π·Π°ΠΏΡΠΎΡΠ° ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ² terminfo. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ tput ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. tput clear -- ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ clear. tput reset -- ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ reset. tput sgr0 -- ΡΠ°ΠΊ ΠΆΠ΅ ΡΠ±ΡΠ°ΡΡΠ²Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π», Π½ΠΎ Π±Π΅Π· ΠΎΡΠΈΡΡΠΊΠΈ ΡΠΊΡΠ°Π½Π°.
bash$ tput longname
xterm terminal emulator (XFree86 4.0 Window System)
ΠΠΎΠΌΠ°Π½Π΄Π° tput cup X Y ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅Ρ ΠΊΡΡΡΠΎΡ Π² ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ (X,Y). ΠΠ±ΡΡΠ½ΠΎ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²ΡΠ΅Ρ clear, ΠΎΡΠΈΡΠ°ΡΡΠ°Ρ ΡΠΊΡΠ°Π½.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: stty ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠΎΠΊΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ.
infocmp
CΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊΠ°Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»ΠΎΠ², Ρ ΡΠ°Π½ΡΡΠ΅ΠΉΡΡ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ terminfo.
bash$ infocmp
# Reconstructed via infocmp from file:
/usr/share/terminfo/r/rxvt
rxvt|rxvt terminal emulator (X Window System),
am, bce, eo, km, mir, msgr, xenl, xon,
colors#8, cols#80, it#8, lines#24, pairs#64,
acsc=``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m,
civis=\E[?25l,
clear=\E[H\E[2J, cnorm=\E[?25h, cr=^M,
...
reset
Π‘Π±ΡΠ°ΡΡΠ²Π°Π΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈ ΠΎΡΠΈΡΠ°Π΅Ρ ΡΠΊΡΠ°Π½. ΠΠ°ΠΊ ΠΈ Π² ΡΠ»ΡΡΠ°Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ clear, ΠΊΡΡΡΠΎΡ ΠΈ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊ Π²Π²ΠΎΠ΄Ρ (prompt) Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡΠ³Π»Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°.
clear
ΠΠΎΠΌΠ°Π½Π΄Π° clear ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΈΡΠ°Π΅Ρ ΡΠΊΡΠ°Π½ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈΠ»ΠΈ ΠΎΠΊΠ½ΠΎ xterm. ΠΡΡΡΠΎΡ ΠΈ ΠΏΡΠΈΠ³Π»Π°ΡΠ΅Π½ΠΈΠ΅ ΠΊ Π²Π²ΠΎΠ΄Ρ (prompt) Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡΠ³Π»Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΌΠΎΠΆΠ΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΡΠ°ΠΊ ΠΈ ΠΈΠ· ΡΡΠ΅Π½Π°ΡΠΈΡ. Π‘ΠΌ. ΠΡΠΈΠΌΠ΅Ρ 10-25.
script
ΠΡΠ° ΡΡΠΈΠ»ΠΈΡΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ Π²ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ, Π²Π²Π΅Π΄Π΅Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ c ΠΊΠ»Π°Π²ΠΈΠ°ΡΡΡΡ (Π²ΡΠ²ΠΎΠ΄ ΡΠΎΠΆΠ΅). ΠΠΎΠ»ΡΡΠ°Ρ, ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅ΠΉΡΠΈΠΉ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΡΠ΅ΡΡΠΈΠΈ.
12.8. ΠΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ
factor
Π Π°Π·Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ΅Π»ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° Π½Π° ΠΏΡΠΎΡΡΡΠ΅ ΠΌΠ½ΠΎΠΆΠΈΡΠ΅Π»ΠΈ.
bash$ factor 27417
27417: 3 13 19 37
bc
Bash Π½Π΅ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½Π°Π΄ ΡΠΈΡΠ»Π°ΠΌΠΈ Ρ ΠΏΠ»Π°Π²Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΡΡΠΎΠΉ ΠΈ Π½Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠ³ΠΈΡ Π²Π°ΠΆΠ½ΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ. Π ΡΡΠ°ΡΡΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ bc.
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½Π°Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠ°Ρ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΠΎΠΉ ΡΠΎΡΠ½ΠΎΡΡΡΡ, ΡΡΠΈΠ»ΠΈΡΠ° bc ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ Π΄Π»Ρ ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ bc Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ ΡΠ·ΡΠΊ C.
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎ ΡΡΠΈΠ»ΠΈΡΠ° UNIX, ΡΠΎ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΡΠΈΡΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΡΡΠ΅Π½Π°ΡΠΈΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΈ Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π΄Π°Π½Π½ΡΡ .
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΡΠ°Π±ΠΎΡΡ Ρ ΡΡΠΈΠ»ΠΈΡΠΎΠΉ bc Π² ΡΡΠ΅Π½Π°ΡΠΈΠΈ. ΠΠ΄Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈΠ΅ΠΌ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄.
variable=$(echo "OPTIONS; OPERATIONS" | bc)
ΠΡΠΈΠΌΠ΅Ρ 12-32. ΠΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΡΠ΅ Π²ΡΠΏΠ»Π°ΡΡ ΠΏΠΎ Π·Π°ΠΉΠΌΡ
#!/bin/bash
# monthlypmt.sh: Π Π°ΡΡΠ΅Ρ Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΡΡ Π²ΡΠΏΠ»Π°Ρ ΠΏΠΎ Π·Π°ΠΉΠΌΡ.
# ΠΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΏΠ°ΠΊΠ΅ΡΠ° "mcalc" (mortgage calculator),
#+ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Jeff Schmidt ΠΈ Mendel Cooper (Π²Π°Ρ ΠΏΠΎΠΊΠΎΡΠ½ΡΠΉ ΡΠ»ΡΠ³Π°).
# http://www.ibiblio.org/pub/Linux/apps/financial/mcalc-1.6.tar.gz [15k]
echo
echo "ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΡΠΌΠΌΡ Π·Π°ΠΉΠΌΠ°, ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΡΡ ΡΡΠ°Π²ΠΊΡ ΠΈ ΡΡΠΎΠΊ Π·Π°ΠΉΠΌΠ°,"
echo "Π΄Π»Ρ ΡΠ°ΡΡΠ΅ΡΠ° ΡΡΠΌΠΌΡ Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΡΡ Π²ΡΠΏΠ»Π°Ρ."
bottom=1.0
echo
echo -n "Π‘ΡΠΌΠΌΠ° Π·Π°ΠΉΠΌΠ° (Π±Π΅Π· Π·Π°ΠΏΡΡΡΡ -- Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ Π΄ΠΎΠ»Π»Π°ΡΠ°) "
read principal
echo -n "ΠΡΠΎΡΠ΅Π½ΡΠ½Π°Ρ ΡΡΠ°Π²ΠΊΠ° (ΠΏΡΠΎΡΠ΅Π½Ρ) " # ΠΡΠ»ΠΈ 12%, ΡΠΎ Π½ΡΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡΡ "12", Π° Π½Π΅ ".12".
read interest_r
echo -n "Π‘ΡΠΎΠΊ Π·Π°ΠΉΠΌΠ° (ΠΌΠ΅ΡΡΡΠ΅Π²) "
read term
interest_r=$(echo "scale=9; $interest_r/100.0" | bc) # ΠΠ΄Π΅ΡΡ "scale" -- ΡΠΎΡΠ½ΠΎΡΡΡ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ.
interest_rate=$(echo "scale=9; $interest_r/12 + 1.0" | bc)
top=$(echo "scale=9; $principal*$interest_rate^$term" | bc)
echo; echo "ΠΡΠΎΡΡ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°ΡΡ. ΠΡΡΠΈΡΠ»Π΅Π½ΠΈΡ ΠΏΠΎΡΡΠ΅Π±ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ."
let "months = $term - 1"
# ====================================================================
for ((x=$months; x > 0; x--))
do
bot=$(echo "scale=9; $interest_rate^$x" | bc)
bottom=$(echo "scale=9; $bottom+$bot" | bc)
# bottom = $(($bottom + $bot"))
done
# --------------------------------------------------------------------
# Rick Boivie ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ» Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
#+ ΡΠΈΠΊΠ»Π° Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄Π°Π΅Ρ Π²ΡΠΈΠ³ΡΡΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° 2/3.
# for ((x=1; x <= $months; x++))
# do
# bottom=$(echo "scale=9; $bottom * $interest_rate + 1" | bc)
# done
# Π Π·Π°ΡΠ΅ΠΌ Π½Π°ΡΠ΅Π» Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Ρ,
#+ ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π² 20 ΡΠ°Π· Π±ΡΡΡΡΠ΅Π΅ !!!
# bottom=`{
# echo "scale=9; bottom=$bottom; interest_rate=$interest_rate"
# for ((x=1; x <= $months; x++))
# do
# echo 'bottom = bottom * interest_rate + 1'
# done
# echo 'bottom'
# } | bc` # ΠΠ½Π΅Π΄ΡΠΈΡΡ ΡΠΈΠΊΠ» 'for' Π² ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΊΠΎΠΌΠ°Π½Π΄.
# ====================================================================
# let "payment = $top/$bottom"
payment=$(echo "scale=2; $top/$bottom" | bc)
# ΠΠ²Π° Π·Π½Π°ΠΊΠ° ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π΄ΠΎΠ»Π»Π°ΡΡ ΠΈ ΡΠ΅Π½ΡΡ.
echo
echo "Π΅ΠΆΠ΅ΠΌΠ΅ΡΡΡΠ½ΡΠ΅ Π²ΡΠΏΠ»Π°ΡΡ = \$$payment" # ΠΡΠ²Π΅ΡΡΠΈ Π·Π½Π°ΠΊ "Π΄ΠΎΠ»Π»Π°ΡΠ°" ΠΏΠ΅ΡΠ΅Π΄ ΡΠΈΡΠ»ΠΎΠΌ.
echo
exit 0
# Π£ΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΡ:
# 1) ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Π²ΠΎΠ΄Π° ΡΡΠΌΠΌΡ Ρ ΡΠΎΡΠ½ΠΎΡΡΡΡ Π΄ΠΎ ΡΠ΅Π½ΡΠ°.
# 2) ΠΠΎΠ±Π°Π²ΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²Π²ΠΎΠ΄Π° ΠΏΡΠΎΡΠ΅Π½ΡΠ½ΠΎΠΉ ΡΡΠ°Π²ΠΊΠΈ ΠΊΠ°ΠΊ Π² Π²ΠΈΠ΄Π΅ ΠΏΡΠΎΡΠ΅Π½ΡΠΎΠ², ΡΠ°ΠΊ ΠΈ Π² Π²ΠΈΠ΄Π΅ Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠΈΡΠ»Π° -- Π΄ΠΎΠ»ΠΈ ΡΠ΅Π»ΠΎΠ³ΠΎ.
# 3) ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΡΡΠΎΠ»ΡΠ±ΠΈΠ²Ρ,
# Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ Π² ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΏΠΎΠ»Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΡ ΠΏΠΎΠΌΠ΅ΡΡΡΠ½ΡΡ Π²ΡΠΏΠ»Π°Ρ.
ΠΡΠΈΠΌΠ΅Ρ 12-33. ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΠΈΡΠ΅Π» ΠΈΠ· ΠΎΠ΄Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΡΡ
:
##########################################################################
# Shellscript: base.sh - Π²ΡΠ²ΠΎΠ΄ ΡΠΈΡΠ΅Π» Π² ΡΠ°Π·Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ (Bourne Shell)
# Author : Heiner Steven ( [email protected])
# Date : 07-03-95
# Category : Desktop
# $Id: base.sh,v 1.2 2000/02/06 19:55:35 heiner Exp $
##########################################################################
# Description
#
# Changes
# 21-03-95 stv ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½Π° ΠΎΡΠΈΠ±ΠΊΠ°, Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠ°Ρ ΠΏΡΠΈ Π²Π²ΠΎΠ΄Π΅ ΡΠΈΡΠ»Π° 0xb (0.2)
##########################################################################
# ==> ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ Ρ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ Π°Π²ΡΠΎΡΠ°.
# ==> ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ Π°Π²ΡΠΎΡΠΎΠΌ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°.
NOARGS=65
PN=`basename "$0"` # ΠΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
VER=`echo '$Revision: 1.2 $' | cut -d' ' -f2` # ==> VER=1.2
Usage () {
echo "$PN - Π²ΡΠ²ΠΎΠ΄ ΡΠΈΡΠ΅Π» Π² ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΠ°Ρ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, $VER (stv '95)
ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ: $PN [number ...]
ΠΡΠ»ΠΈ ΡΠΈΡΠ»ΠΎ Π½Π΅ Π·Π°Π΄Π°Π½ΠΎ, ΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ Π²Π²ΠΎΠ΄ ΡΠΎ stdin.
Π§ΠΈΡΠ»ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ:
Π΄Π²ΠΎΠΈΡΠ½ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² 0b (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 0b1100)
Π²ΠΎΡΡΠΌΠ΅ΡΠΈΡΠ½ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ 0 (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 014)
ΡΠ΅ΡΡΠ½Π°Π΄ΡΠ°ΡΠΈΡΠΈΡΠ½ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² 0x (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 0xc)
Π΄Π΅ΡΡΡΠΈΡΠ½ΠΎΠ΅ Π² Π»ΡΠ±ΠΎΠΌ Π΄ΡΡΠ³ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 12)" >&2
exit $NOARGS
} # ==> Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ.
Msg () {
for i # ==> [ΡΠΏΠΈΡΠΎΠΊ] ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ΠΎΠΏΡΡΠ΅Π½.
do echo "$PN: $i" >&2
done
}
Fatal () { Msg " [email protected]"; exit 66; }
PrintBases () {
# ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ