Skip to main content
rephrased text & excerpt from help string
Source Link
jue
  • 4.8k
  • 12
  • 22

Simply add your parameters to the command prompt, separated by space, without any placeholder for filenames.
To construct commands like ls -l <file>, just enter ls -l.


OR: the interface supports the placeholders * and ?.
Where ? means call command with one marked file only, in a loop;
and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls <files> -l once (with all marked files at once).
Or you could enter ls ? -l to run ls <file> -l for every single file.


Edit: dired-do-shell-command help string:

Signature   
(dired-do-shell-command COMMAND &optional ARG FILE-LIST)

Documentation   
... If
If there is a * in COMMAND, surrounded by whitespace, this runs COMMAND just once with the entire file list substituted there.

If there is no *, but there is a ? in COMMAND, surrounded by whitespace, this runs COMMAND on each file individually with the file name substituted for ?.

Simply add your parameters to the command prompt, separated by space, without any placeholder for filenames.
To construct commands like ls -l <file>, just enter ls -l.


OR: the interface supports the placeholders * and ?.
Where ? means call command with one marked file only, in a loop;
and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls <files> -l once (with all marked files at once).
Or you could enter ls ? -l to run ls <file> -l for every single file.


Edit: dired-do-shell-command help string:

Signature  (dired-do-shell-command COMMAND &optional ARG FILE-LIST)

Documentation  ... If there is a * in COMMAND, surrounded by whitespace, this runs COMMAND just once with the entire file list substituted there.

If there is no *, but there is a ? in COMMAND, surrounded by whitespace, this runs COMMAND on each file individually with the file name substituted for ?.

Simply add your parameters to the command prompt, separated by space, without any placeholder for filenames.
To construct commands like ls -l <file>, just enter ls -l.


OR: the interface supports the placeholders * and ?.
Where ? means call command with one marked file only, in a loop;
and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls <files> -l once (with all marked files at once).
Or you could enter ls ? -l to run ls <file> -l for every single file.


Edit: dired-do-shell-command help string:

Signature 
(dired-do-shell-command COMMAND &optional ARG FILE-LIST)

Documentation 
...
If there is a * in COMMAND, surrounded by whitespace, this runs COMMAND just once with the entire file list substituted there.

If there is no *, but there is a ? in COMMAND, surrounded by whitespace, this runs COMMAND on each file individually with the file name substituted for ?.

rephrased text & excerpt from help string
Source Link
jue
  • 4.8k
  • 12
  • 22

Simply add your parameters to the command promtprompt, separated by space, without any placeholder for filenames. Also
To construct commands like ls -l <file>, just enter ls -l.


OR: the interface supports the placeholders * and ?. 
Where ? means call command with one marked file only, in a loop andloop;
and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls <files> -l once with(with all marked files at once).
Or you could enter ls ? -l to run ls <file> -l for every single file.


Edit: dired-do-shell-command help string:

Signature (dired-do-shell-command COMMAND &optional ARG FILE-LIST)

Documentation ... If there is a * in COMMAND, surrounded by whitespace, this runs COMMAND just once with the entire file list substituted there.

If there is no *, but there is a ? in COMMAND, surrounded by whitespace, this runs COMMAND on each file individually with the file name substituted for ?.

Simply add your parameters to the command promt. Also the interface supports the placeholders * and ?. Where ? means call command with one marked file only in a loop and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls once with all marked files.
Or you could enter ls ? -l to run ls for every file.

Simply add your parameters to the command prompt, separated by space, without any placeholder for filenames.
To construct commands like ls -l <file>, just enter ls -l.


OR: the interface supports the placeholders * and ?. 
Where ? means call command with one marked file only, in a loop;
and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls <files> -l once (with all marked files at once).
Or you could enter ls ? -l to run ls <file> -l for every single file.


Edit: dired-do-shell-command help string:

Signature (dired-do-shell-command COMMAND &optional ARG FILE-LIST)

Documentation ... If there is a * in COMMAND, surrounded by whitespace, this runs COMMAND just once with the entire file list substituted there.

If there is no *, but there is a ? in COMMAND, surrounded by whitespace, this runs COMMAND on each file individually with the file name substituted for ?.

Source Link
jue
  • 4.8k
  • 12
  • 22

Simply add your parameters to the command promt. Also the interface supports the placeholders * and ?. Where ? means call command with one marked file only in a loop and * means call with all marked files.
Read more at masteringemacs.org

Example: (ls would be your <command> and -l would be your <additional-arguments>).
You could enter ls * -l as command for example to run ls once with all marked files.
Or you could enter ls ? -l to run ls for every file.