Add 1987/wall/try.sh

This script automates through a pipeline some of the input suggested in
the README.md. The README.md still has some of what try.sh has because
it shows that you can do it entering line by line.
This commit is contained in:
Cody Boone Ferguson committed 2024-01-05 09:09:34 -08:00
1 parent bc7ebdaa4b
commit e257cd1af0
3 files changed
+53 -14

No files matched your search

+6 -14
View File
@@ -19,22 +19,11 @@ make all
### Try:
```sh
./wall | bc | ./wall
./try.sh
```
and input the following:
```
x*x
c^2
m*m
# can you figure out what this does?
500
```
You may also wish to try:
You may of course run the commands manually and enter text as you wish. For
instance you might try one or both of:
```sh
./wall | bc
@@ -50,6 +39,9 @@ x*x
quit # for the cat version
```
which the script does through a pipeline except that here you can enter more
text if you wish, line by line.
## Judges' remarks:
+45
View File
@@ -0,0 +1,45 @@
#!/usr/bin/env bash
#
# try.sh - demonstrate IOCCC winner 1987/wall
#
# make sure CC is set so that when we do make CC="$CC" it isn't empty. Doing it
# this way allows us to have the user specify a different compiler in an easy
# way.
if [[ -z "$CC" ]]; then
CC="cc"
fi
make CC="$CC" all >/dev/null || exit 1
# clear screen after compilation so that only the entry is shown
clear
read -r -n 1 -p "Press any key to run: echo 'x*x' | ./wall | bc: "
echo 1>&2
echo 'x*x' | ./wall | bc
echo 1>&2
read -r -n 1 -p "Press any key to run: printf \"x*x\\nc^2\\nm*m\\n\\n500\\n\" | ./wall | bc | ./wall: "
echo 1>&2
printf "x*x\nc^2\nm*m\n500\n" | ./wall | bc | ./wall
echo 1>&2
read -r -n 1 -p "Press any key to run: printf \"x*x\\n2^x\\nquit\\n\" | ./wall | cat: "
printf "x*x\n2^x\nquit\n" | ./wall | cat
echo 1>&2
read -r -n 1 -p "Press any key to run: printf \"x*x\\n2^x\\n\" | ./wall | bc: "
echo 1>&2
printf "x*x\n2^x\n" | ./wall | bc
echo 1>&2
read -r -n 1 -p "Press any key to run: printf \"500\\n\" | ./wall | bc: "
echo 1>&2
printf "500\n" | ./wall | bc
echo 1>&2
read -r -n 1 -p "Press any key to run: echo 500 | ./wall: "
echo 1>&2
echo 500 | ./wall
echo 1>&2
+2
View File
@@ -576,6 +576,8 @@ size constraints of the contest).
[Cody](#cody) made this use `fgets(3)`.
Cody also added the [try.sh](1987/wall/try.sh) script.
## <a name="1987_westley"></a>[1987/westley](/1987/westley/westley.c) ([README.md](/1987/westley/README.md]))