blob: 897c1a017b5f18805deca9dcf9ec32e7201e5ff5 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
# Write lines of terminal input into a file, clearing in between each one
self=clwr
# Check our inputs for sanity
if [ "$#" -ne 1 ] ; then
printf >&2 '%s: Need output file\n' "$self"
exit 2
elif ! [ -t 0 ] ; then
printf >&2 '%s: stdin not a terminal\n' "$self"
exit 2
elif ! [ -t 1 ] ; then
printf >&2 '%s: stdout not a terminal\n' "$self"
exit 2
fi
# Open a file descriptor onto the output file to save on open(2)/close(2)
# system calls
exec 3>"$1" || exit
# Start looping through clearing and accepting lines
while { tput clear && IFS= read -r line ; } ; do
printf '%s\n' "$line" >&3
done
|