# How to use shell script functionalities in gradle

**URL:** <https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863>\
**Category:** Help/Discuss\
**Created:** [June 1, 2016, 11:45am UTC](https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863 "2016-06-01T11:45:11Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![rajendrarawat17](https://avatars.discourse-cdn.com/v4/letter/r/dc4da7/32.png) [@rajendrarawat17](https://discuss.gradle.org/u/rajendrarawat17)\
**Post date:** [June 1, 2016, 11:45am UTC](https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863/1 "2016-06-01T11:45:11Z")

</div>

Hi Team,

I did not find enaugh information on how to use shell script funtionalities with gradle.  
could you please help me provide some tutorials, links etc.

---

<div class="post-metadata">

**Author:** ![mark\_vieira](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/mark_vieira/32/5396_2.png) [@mark\_vieira](https://discuss.gradle.org/u/mark_vieira)\
**Post date:** [June 1, 2016, 3:28pm UTC](https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863/2 "2016-06-01T15:28:24Z")

</div>

I believe what you’re looking for is the [`Exec`](https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html) task.

---

<div class="post-metadata">

**Author:** ![rajendrarawat17](https://avatars.discourse-cdn.com/v4/letter/r/dc4da7/32.png) [@rajendrarawat17](https://discuss.gradle.org/u/rajendrarawat17)\
**Post date:** [June 20, 2016, 7:04am UTC](https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863/3 "2016-06-20T07:04:55Z")

</div>

Thanks Mark. This is what I was looking for.  
I have passes single parameter using ‘args’ option but could not get success on it passing two or more parameter.  
Please suggest how to pass more than one parameter using this Exec command.

---

<div class="post-metadata">

**Author:** ![mark\_vieira](https://sea1.discourse-cdn.com/gradle/user_avatar/discuss.gradle.org/mark_vieira/32/5396_2.png) [@mark\_vieira](https://discuss.gradle.org/u/mark_vieira)\
**Post date:** [June 21, 2016, 9:46pm UTC](https://discuss.gradle.org/t/how-to-use-shell-script-functionalities-in-gradle/17863/4 "2016-06-21T21:46:53Z")

</div>

The [`args()`](https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html#org.gradle.api.tasks.Exec:args(java.lang.Iterable)) and [`commandLine()`](https://docs.gradle.org/current/dsl/org.gradle.api.tasks.Exec.html#org.gradle.api.tasks.Exec:commandLine(java.lang.Iterable)) methods accept a variable number of strings.

```
task listProcesses(type: Exec) {
    commandLine 'ps', '-e', '-x'
}
```
