People who code: we want your input. Take the Survey

Questions tagged [shell-command]

is for executing shell commands from Emacs (the default key binding is `M-!`). Shell output is shown in the echo area if it fits, in buffer `*Shell Command Output*` otherwise. Emacs comes with many supporting facilities for executing shell commands, including interactive execution, selective execution on a region, history cycling, directory tracking, connecting to serial ports, emulator options, and specifying remote hosts.

Filter by
Sorted by
Tagged with
0
votes
1answer
27 views

how to execute shell command with piping in Elisp?

I am trying to duplicate the following bash command in Elisp: curl https://google.com | readability https://google.com Here's what I have so far, but it doesn't capture the piping "| readability&...
0
votes
1answer
29 views

From an org item, launch a shell command with the item text as parameter

From an org list item, I want a function that I can bind to a shortkey or an org-speed shortcut, to be able to launch a shell command with the org list item text as parameter. Then I want to add tag ...
0
votes
2answers
40 views

Pass selected text as argument to a script and replace selected text with output from the script

I'd like to pass some selected text in a buffer to a python script. The python script will process the string and print the result to stdout. This output should replace the original string that was ...
0
votes
1answer
19 views

Pseudo-terminal will not be allocated because stdin is not a terminal. ssh_askpass: exec(/usr/libexec/openssh/ssh-askpass): No such file or directory

CentOS 7, Emacs 27.1 Here content of file myFile.sh: ssh myuser@10.111.11.111 So when in vterm mode I use this: ./myFile.sh then I success connect to the remote machine (ip = 10.111.11.111) by ...
1
vote
1answer
25 views

How to run commands locally even when on tramp?

I have some commands that do "utility" stuff that have nothing to do with the current buffer. I need these to always run locally, and not remotely when visiting a tramp buffer. How can I do ...
0
votes
0answers
32 views

Opening file after org-export in external program fails, but works with different invocation methods

I'm using emacs in Win10 WSL 2 Linux and call a custom script open in my $PATH to open files from WSL-Linux/emacs in Windows GUI. My .mailcap makes sure that the script is actually being used and the ...
1
vote
1answer
31 views

Emacs unable to execute shell commands despite them being in the Emacs shell PATH

I am on Ubuntu. I'm trying to run the latex command to run in the Emacs shell. I have done some research, and have already done the following: I noticed that running env in the Emacs shell gave a ...
0
votes
0answers
9 views

how to run a shell script that initialises the elpa directory?

I'm creating a container for emacs and I'd like to add a call to the dockerfile running a script to pre-download all the elpa packages it needs from a clean .emacs.d taken from github. Is there a way ...
2
votes
1answer
91 views

How can I automatically rename buffers created with `async-shell-command` to the shell command that was called?

I am often opening exwm buffers by running async-shell-command but unfortunately these buffers always get named *EXWM*. It would be great if when I ran async-shell-command 'firefox the buffer that ...
2
votes
1answer
189 views

Print shell-command output to STDOUT?

Is there an equivalent of C's system(char*) or Python's os.system(string) for emacs --script? I want to use Emacs for shell-scripting purposes. However, I cannot find a function that allows running an ...
1
vote
1answer
76 views

How to call Elisp functions from my own implementation of a shell?

I'm writing my own shell which can handle most of the GNU/Linux system calls now. So I was wondering if I could make this shell call Elisp functions too. Is it possible to do so? Is so, how do I get ...
0
votes
1answer
56 views

Open current file in Vim

I've got this from EmacsWiki: (defun my/open-current-file-in-vim () (interactive) (async-shell-command (format "gvim +%d %s" (+ (if (bolp) 1 0) (count-lines 1 (point))) ...
2
votes
0answers
21 views

Exec a external shell command that have external read input - ex:cookiecutter

As the examble like cookicutter, it have a read input in itself that we must type if we use it in normal terminal. $> #comment: this is normal terminal emulator $> cookiecutter $HOME/...
0
votes
1answer
61 views

Prompt for stdin via `shell-command`

Sometimes when I copy+paste into my spacemacs over SSH, I get some random garbage that seems to be due to spacemacs interpreting some of the pasted content as commands. In vim, my workaround is to run ...
0
votes
1answer
54 views

Cannot paste text copied from Emacs to synchronous subprocess

TL;DR When trying to paste text copied/killed in Emacs to another program while Emacs is waiting for a synchronous subprocess to finish, the target program hangs until Emacs becomes responsive again. ...
0
votes
1answer
57 views

Display Δ in the *Shell Command Output* Buffer

I have a shell command I'm running from Emacs that has a Δ character in its output. How can I configure the *Shell Command Output* buffer to display UTF-8 by default? edit: There could also be ...
0
votes
0answers
87 views

Execute a command from a buffer

Say, you create a new buffer (Fundamental), type a shell command and want it executed. Like you can do in a *scratch* buffer with lisp code (C-x C-e). Or you have a text file, that has text ...
0
votes
1answer
69 views

Insert string output of shell-command in current buffer

The code below calls upon a Python script to generate pinyin from Chinese characters in region: (defun pinyin () "Generate Pinyin from Chinese Characters with Python script, keeping the original ...
0
votes
0answers
18 views

reference mutltiple selections or registers for shell-command-on-region

C-u M-| is wonderful for things like running sort a region. But I've wandered into an interesting place. I wan to run join or comm on two regions in a buffer. # region 1 a 1 b 2 z 26 # region 2 a ...
0
votes
2answers
124 views

async-shell-command: run COMMAND without displaying the output

I want to use async-shell-command to run a .bat file on Windows. Reading the function documentation it says: (defun async-shell-command (command &optional output-buffer error-buffer) "Execute ...
0
votes
1answer
186 views

Emacs shell not picking aliases from bashrc

NOT Working: /bin/bash: Psu: command not found M-! cmd Psu Working M-! cmd ls .bashrc cat ~/.bashrc | grep Psu cat ~/.bashrc | grep aliases alias Psu='sudo pacman -Syyu' if [ -f ~/.bash_aliases ...
0
votes
1answer
220 views

Run current line or selection in shell then insert result in Emacs buffer (Acme workflow)

Given lines like these: pwd echo "Hello \ World" in a buffer, I would like to do the following: Put the cursor to the first line, then press C-` Select lines 3-4 then press C-` to send the line ...
0
votes
2answers
42 views

Creating Shell-Based Filter in .emacs.d/init.el

This could be a useful FAQ for non-emacs-programmers. What should I put into .emacs.d/init.el in order to hard-code a specific shell filter that will replace the contents of the region? For ...
1
vote
2answers
408 views

Compile and run single file c++ programs in Emacs[SOLVED]

I want to bind to a key a compile-and-run function to be able to compile my C++ single file programs and run them into a term/shell so I could give my variables values whenever I use cin in my ...
0
votes
2answers
121 views

How can I do a regex search recursively from a directory?

Basically I want a command that can do the following: find /path/dir -type f -print0 | xargs -0 grep -l "foo" Is there an emacs command to do this? If not, then is there a convenient keybinding that ...
0
votes
1answer
144 views

When does shell-command-on-region actually pass the region to the command?

I am having some trouble understanding how shell-command-on-region works. Sometimes the region is passed to command, sometimes not, as far as I can tell. Suppose I have an emacs buffer with "word" in ...
1
vote
0answers
37 views

Allow user to interact with subprocess

I would like to call a subprocess, and that subprocess has some interactive behavior. Thus, I would emacs to parse the output of the subprocess, ask the user for input, and then hand that input back ...
0
votes
1answer
198 views

send custom commands to shell

I have just joined the Emacs church. I would like to know if the following can be done. Say I have a project folder, I would like to run some custom commands that tie to some keyboard shorcuts for ...
1
vote
0answers
62 views

In emacs term-mode (not shell-mode), how can we edit a command just like we type C-x C-e in real terminal

In real terminal, if we type C-x C-e, we can edit a typed command using an editor. Could have similar function in emacs term-mode? After typing a shortcut, I would like to edit the current command ...
0
votes
1answer
266 views

Emacs / Projectile complains about no job control with Bash/terminal

I use Emacs 27.0.50 on Ubuntu 18.04. Fish is my default shell. When a file from a directory with .git is being loaded into the buffer, I'm trying to start projectile-find-file , I see the following ...
5
votes
2answers
113 views

How to pipe large files through fold before opening?

On a regular basis I need to open files that have really long lines, which unfortunately causes emacs to grind to a halt. My understanding is that this is a long-term issue with the renderer. I've ...
1
vote
2answers
321 views

Multi-processing via TRAMP with asynchronous shell commands

I found the following code in TRAMP: (defun tramp-adb-handle-shell-command (command &optional output-buffer error-buffer) "Like `shell-command' for Tramp files." (let* ((asynchronous (...
5
votes
1answer
162 views

Send content of region or current line to a tmp file, then execute shell script with filename as argument

I am transitioning to Emacs with evil-mode after years of Vim. For work reasons I have to use a GUI statistics program (Stata) frequently. This program does not integrate well with external editors. ...
1
vote
1answer
236 views

How to make *Shell Command Output* buffer scroll to the end?

I often execute shell commands via M-! and their output is then shown in the buffer *Shell Command Output*. How can I make this buffer display the end (rather than the beginning) so that I can see ...
1
vote
2answers
172 views

Inhibiting `finished:` message from `async-shell-command`

Running (async-shell-command "echo test") prints echo test: finished to the echo area upon completion. I am running a function in the background on a loop with a special handler, and the message is ...
1
vote
2answers
59 views

How can I get the list of recentf files from bash / cli?

How can I retrieve the list of recent files in bash? I'd like to get this set of files so I can use it with rofi. I could manually parse the data file that looks something like: ;;; Automatically ...
3
votes
1answer
704 views

Almost working smoothly attempt to get terminal Emacs to copy to clipboard

I'm running this emacs GNU Emacs 25.2.2 (x86_64-pc-linux-gnu) of 2017-09-22, modified by Debian directly in a Gnome terminal by calling emacs, which is actually a link to /etc/alternatives/emacs. ...
0
votes
2answers
619 views

Multiple async-shell-command commands in sequence

What is the correct way to run multiple async-shell-command invocations serially? For example, this will execute all at once. (progn (async-shell-command "echo 1; sleep 1") (async-shell-command ...
1
vote
1answer
127 views

Sudo caching on compilation mode

There is a command I run very often using compile that must be run as sudo. I wanted to achieve something similar to the 5min caching of sudo in a shell: if I keep running the command in intervals ...
1
vote
2answers
399 views

Split command line into a list of arguments

How do I take a string giving a shell command line such as: "program arg1 arg2 \"long argument with spaces\" arg\\\"3" and turn it into a list of unquoted arguments like: ("program" "arg1" "arg2" "...
2
votes
1answer
223 views

Run custom bash functions with M-!

I have a few custom bash functions that are defined is some file and are made available to me in regular terminals via the line . "/path/Custom Bash Functions.sh" in my ~/.bashrc. However, Emacs ...
0
votes
1answer
113 views

Change async-shell-command with a synchronous command keeping the dynamically displayed buffer

I have this snippet of code: (async-shell-command (concat "perl myscript.pl " (buffer-name)) (read-string "RETURN: ") (with-temp-file "file.new" (insert-file-contents "file.new") (perform-...
0
votes
2answers
262 views

shell command on region with process substitution

If I want to execute a shell command on a region I know I can use shell-command-on-region via M-|, what if the command I want to redirect my selection does not accept redirection to it's standard ...
2
votes
1answer
232 views

Making custom shell command function have popup buffer showing std-out

I'm customizing spacemacs for my workflow. I'm new to elisp and can't figure out how to do this after looking at other functions in .el files and other posts. Basically, I wrote an elisp function ...
5
votes
1answer
2k views

Run elisp when `async-shell-command` is done

I want to run some Elisp when my command executed by async-shell-command terminates. How can I do this? Does it have completion hooks?
5
votes
1answer
876 views

Differences between cmdproxy.exe and cmd.exe

What is the difference between: (call-process "cmdproxy" nil "foo" nil "/c" "dir") (call-process "cmd" nil "foo" nil "/c" "dir") ? I seem to get exactly the same results in Emacs 25.1 on ...
1
vote
1answer
239 views

Calling shell-command from org-capture-templates to scrape verb conjugations

I want to use org-capture-templates to scrape french verb conjugations from the web and insert them into an org-file to use with org-drill. I have a (functioning) scraper that gets the desired data ...
0
votes
1answer
1k views

Saving to clipboard in a Python script running as shell command

The following python script successfully copies a given string into the clipboard when run from Ubuntu shell: import os text = 'The text to be copied to the clipboard.' os.system("echo -n {s} | xsel -...
9
votes
2answers
231 views

How to run a previous unique command in an Emacs shell (without repeats)?

In Emacs shell, is there a command similar to M-p but which would skip repeated commands? That is, it would go to the next different command. Similar to regular Linux terminal. So if I were to run: ...
5
votes
1answer
270 views

Asynchronous version of shell-command-on-region?

I have a problem which is very similar to this one. I have some text that I'd like to listen to with macOS's say utility. Unfortunately, Emacs locks up when I use shell-command-on-region because it is ...