Hi,
I have 2 identical servers both running aspell but for some reason I can't redirect the output to a file on one of them. This is what I'm trying to do:
echo feck | aspell -l > errors.txt
On one machine this works fine but the other it doesn't (the file is created but it is empty). However if I just type:
echo feck | aspell -l
it correctly displays the word feck as being misspelt. I've done an strace and the machine that works shows this at the end:
fstat64(1, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40018000
munmap(0x4033c000, 4046848) = 0
munmap(0x40718000, 159744) = 0
munmap(0x4001b000, 12288) = 0
write(1, "feck\n", 5) = 5
_exit(0) = ?
the machine that doesn't works shows this:
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40019000
munmap(0x4033b000, 4046848) = 0
munmap(0x40717000, 159744) = 0
_exit(0) = ?
If I leave off the >errors.txt is does this:
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40019000
write(1, "feck\n", 5feck
) = 5
munmap(0x4033b000, 4046848) = 0
munmap(0x40717000, 159744) = 0
_exit(0) = ?
Finally I've tried these:
$ echo feck >errors.out
works
$ echo feck | aspell -l | cat
fails
Can someone please help as I've now spent a day and a half on this?
Thanks,
Lee
P.S. Incase they're needed, here are the versions I'm using:
aspell -v
@(#) International Ispell Version 3.1.20 (but really Aspell .33.7 alpha)
cat /etc/redhat-release
Red Hat Linux Advanced Server release 2.1AS (Pensacola)