Is there a way to run a command (e.g. ps aux|grep someprocess
) for n times?
Something like:
run -n 10 'ps aux|grep someprocess'
I want to use it interactively.
Update: The reason I am asking this is, that I do work on a lot of machines and I don't want to import all my adaped scripts etc into every box to get the same functionality accross every machine.
Best Answer
I don't think a command or shell builtin for this exists, as it's a trivial subset of what the Bourne shell
for
loop is designed for and implementing a command like this yourself is therefore quite simple.Per JimB's suggestion, use the Bash builtin for generating sequences:
For very old versions of bash, you can use the
seq
command:This iterates ten times executing
command
each time - it can be a pipe or a series of commands separated by;
or&&
. You can use the$i
variable to know which iteration you're in.If you consider this one-liner a script and so for some unspecified (but perhaps valid) reason undesireable you can implement it as a command, perhaps something like this on your .bashrc (untested):
Usage:
Example: