Add tee utility
This commit is contained in:
parent
3866bec55e
commit
761eb0a5e6
3 changed files with 24 additions and 4 deletions
5
cat.nim
5
cat.nim
|
|
@ -3,6 +3,11 @@ import common
|
||||||
|
|
||||||
proc main(files:seq[string]) =
|
proc main(files:seq[string]) =
|
||||||
for file in files:
|
for file in files:
|
||||||
|
if file == "-":
|
||||||
|
var line = ""
|
||||||
|
while stdin.readLine(line):
|
||||||
|
echo line
|
||||||
|
else:
|
||||||
var s = newFileStream(file, fmRead)
|
var s = newFileStream(file, fmRead)
|
||||||
while not s.atEnd:
|
while not s.atEnd:
|
||||||
write(stdout, s.readChar)
|
write(stdout, s.readChar)
|
||||||
|
|
|
||||||
|
|
@ -8,6 +8,6 @@ requires "nim >= 0.19.0"
|
||||||
requires "cligen >= 0.9.19"
|
requires "cligen >= 0.9.19"
|
||||||
requires "stint >= 0.0.1"
|
requires "stint >= 0.0.1"
|
||||||
|
|
||||||
bin = @["add", "cat", "cp", "div", "echo", "factor", "false", "head", "mkdir", "mul", "seq", "sleep", "sub", "true", "yes"]
|
bin = @["add", "cat", "cp", "div", "echo", "factor", "false", "head", "mkdir", "mul", "seq", "sleep", "sub", "tee", "true", "yes"]
|
||||||
|
|
||||||
binDir = "bin"
|
binDir = "bin"
|
||||||
|
|
|
||||||
15
tee.nim
Normal file
15
tee.nim
Normal file
|
|
@ -0,0 +1,15 @@
|
||||||
|
import cligen, os, streams
|
||||||
|
import common
|
||||||
|
|
||||||
|
proc main(files:seq[string]) =
|
||||||
|
var
|
||||||
|
fileStreams:seq[Stream]
|
||||||
|
line = ""
|
||||||
|
for file in files:
|
||||||
|
fileStreams.add(newFileStream(file, fmWrite))
|
||||||
|
while stdin.readLine(line):
|
||||||
|
echo line
|
||||||
|
for fStream in fileStreams:
|
||||||
|
writeLine(fStream, line)
|
||||||
|
|
||||||
|
dispatch(main, version=("version", nimbaseVersion))
|
||||||
Loading…
Add table
Add a link
Reference in a new issue