The OS X man page seems to be almost identical to the Linux one, at least at the beginning, wherein it mentions where the command takes input from. It states STDIN by default. However it doesn't mention needing superuser for reading from file, unlike the Linux man.

Consequently, reading from a file seems to be default behaviour, and wall on OS X simply looks for a file regardless of whether I've given given it a filename or an actual message, failing in the latter case.

As a stopgap I've been using a heredoc to send messages through wall

How do I make wall read from STDIN like it mentions in the manual?

Running OS X 10.10.3

EDIT: I'm not writing a script, I'm just typing in wall hello world into a zsh shell in Terminal on OS X. Same results with bash and sh.

EDIT 2: The response from the shell is actually
usage: wall [-g group] [file]
no such file or directory (if I surround the message with quotes)

  • Would you please add t the relevant parts of the script you are currently using so we can see the use case? – cxw Jun 22 '15 at 9:46
  • I'm not writing a script. My use case is literally typing wall hello world into a zsh shell in Terminal on OS X. – Prashanth Chandra Jun 23 '15 at 1:13
  • OSX wall reads from stdin just fine. When you run wall hello world, you're specifying the message on the command line, not stdin. – Kenster Jun 23 '15 at 1:31
  • You're right, echo hello world | wall works. How does the Linux wall work then? It seems to automatically decide on taking the subsequent input as STDIN or a filename if it exists – Prashanth Chandra Jun 23 '15 at 1:39

So you saw that Linux uses a different version of wall than OS X, right? One is GNU and the other is BSD and they have different usages.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.