[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: How to run shell command with stream input, to get string output

From: Marcin Borkowski
Subject: Re: How to run shell command with stream input, to get string output
Date: Mon, 01 Jul 2019 11:10:02 +0200
User-agent: mu4e 1.1.0; emacs 27.0.50

On 2019-07-01, at 10:17, Jean Louis <> wrote:

> * Marcin Borkowski <address@hidden> [2019-07-01 09:22]:
>> On 2019-07-01, at 00:32, Jean Louis <> wrote:
>> > Hello,
>> >
>> > I would like to know how to make in Emacs Lisp the
>> > equivalent function to what I have here below in
>> > Common Lisp.
>> >
>> > I wish to feed a string as stream to a command and
>> > to get the string output.
>> How about `shell-command-to-string'?
> That one runs only shell command, without the
> input.
> I am looking to something equivalent to shell
> cat | markdown
> Hello
> =====
> ## Hello
> CTRL-D here
> <h1>Hello</h1>
> <h2>Hello</h2>
> I have to process thousands of files, I would not
> like writing to hard disk the feed data for
> processing to spare the hard disk.

I'm not sure I get it.

If you have your data in _files_, why don't you

(shell-command-to-string "cat <filename> | ...")


Even if you only have it as string within Emacs, you could probably try
(format "echo '%s'" ...), though this might involve escaping problems.

> As I cannot find solution yet in emacs lisp how to
> feed some string as input to the shell command, I
> am using now the virtual memory in /run/user/$UID
> as this way the hard disk is spared of writing
> files.

> [...]

> I have solved my problem. But if somebody knows
> how to feed the string to command as its input,
> without writing to file system, let me know.

Frankly, I'd also like to learn how to solve this.  The above
suggestions are just my 2cents, which probably do not answer your
question exactly, but might inspire someone to get a proper solution...


Marcin Borkowski

reply via email to

[Prev in Thread] Current Thread [Next in Thread]