次の python コードと shell スクリプトを研究してみてください。
tes.sh は p,py を実行したときの出力結果を out.txt に保存してから、予めよいしたおいた出力結果 (ansser.tzxt) と比較をして "OK", "NG" を出力するものです。
p.py
python3
1
2def nabe(n):
3 digits = []
4 m = n
5 while m > 0:
6 digits.append(m % 10)
7 m //= 10
8
9 for d in digits:
10 if d == 3:
11 print("AH", end="")
12 return
13 print(n, end="")
14
15def nabeX(n):
16 message = "AH" if str(n).find('3') >= 0 else n
17 print(message, end="")
18
19for i in range(15):
20 nabe(i) # nabeX(i)
21 print(", ", end="")
22print()
test.sh
bash
1#! /bin/bash
2
3python3 p.py > out.txt
4cmp out.txt answer.txt
5if [ $? = 0 ] ; then
6 echo "--- OK"
7else
8 echo "--- NG"
9fi
resykt.txt
0, 1, 2, AH, 4, 5, 6, 7, 8, 9, 10, 11, 12, AH, 14,
実行結果
