fabric difference sudo() run('sudo cmd')
<p>I'm wondering what is the difference between the function <code>sudo()</code> and the function <code>run('sudo -u user smth')</code></p>

<p>On the doc there is : </p>

<blockquote>
  <p>sudo is identical in every way to run, except that it will always wrap
  the given command in a call to the sudo program to provide superuser
  privileges.</p>
</blockquote>

<p>But a few time, <code>sudo('cmd')</code> prompt me a password, but if I switch with <code>run('sudo cmd')</code> it works without prompting me anything. Is there anything that change between the two ? (I remember someone on SO saying that <code>sudo</code> and <code>run(sudo cmd)</code> are not for the same use, but I can't find it back)</p>