Redirecting output with sudo

Here is one that has been bugging me off and on for some time.
I want to execute a program using sudo, and redirect its output some place to which user invoking sudo does not not have write permission
Simplistically, something like:
JoeUser$ sudo echo "Appended stuff" >> /etc/afile
I understand why this won't work, but for the life of me,  I cannot find an incantation that works.  I think it is complicated by the use of commands that are intrinsic to the shall (cat, echo)
I have been through the zsh and bash manuals and have tried various commands to define a block of code to no avail.
Any hints?

tavianator wrote:
Hate to tell a forum mod to RTFM, but:
man sudo wrote:sudo sh -c "cd /home ; du -s * | sort -rn > USAGE"
If the shoe fits....
Thanks everyone.  The pipe works in a lot of cases.
Invoking bash with sudo and passing commands is the obvious way (once someone points it out).  I guess I could not break out of the box I had built in order to look at the problem from a different angle.

Similar Messages

  • Issues with using the output redirection character with newer NXOS versions?

    Has anyone seen any issues with using the output redirection character with newer NXOS versions?
    Am receiving "Error 0x40870004 while copying."
    Simply copying a file from bootflash to tftp is ok.
    This occurs for both 3CDaemon and Tftpd32 softwares.
    Have tried it on multiple switches - same issue.
    Any known bugs?
    thanks!
    The following is an example of bad (NXOS4.1.1b) and good (SANOS3.2.1a)
    MDS2# sho ver | inc system
      system:    version 4.1(1b)
      system image file is:    bootflash:///m9200-s2ek9-mz.4.1.1b.bin
      system compile time:     10/7/2008 13:00:00 [10/11/2008 09:52:55]
    MDS2# sh int br > tftp://10.73.54.194
    Trying to connect to tftp server......
    Connection to server Established. Copying Started.....
    TFTP put operation failed:Access violation
    Error 0x40870004 while copying tftp://10.73.54.194/
    MDS2# copy bootflash:cpu_logfile tftp://10.73.54.194
    Trying to connect to tftp server......
    Connection to server Established. Copying Started.....
    |
    TFTP put operation was successful
    MDS2#
    ck-ci9216-001# sho ver | inc system
      system:    version 3.2(1a)
      system image file is:    bootflash:/m9200-ek9-mz.3.2.1a.bin
      system compile time:     9/25/2007 18:00:00 [10/06/2007 06:46:51]
    ck-ci9216-001# sh int br > tftp://10.73.54.194
    Trying to connect to tftp server......
    |
    TFTP put operation was successful

    Please check with new version of TFTPD 32 server. The error may be due to older version of TFPT server, the new version available solved this error. Files are getting uploaded with no issues.
    1. Download tftpd32b.zip from:
    http://tftpd32.jounin.net/tftpd32_download.html
    2. Copy the tftpd32b.zip file into an empty directory and extract it.
    3. Copy the file you want to transver into the directory containing tftpd32.exe.
    4. Run tftpd32.exe from that directory. The "Base Directory" field should show the path to the directory containing the file you want to transfer.
    At this point, the tftpserver is ready to begin serving files. As devices request files, the main tftpd32 window will log the requests.
    Best Regards...

  • [SOLVED] Don't have permission to turn off bluetooth, even with sudo!

    I never use bluetooth on my laptop, but every time I boot arch the radio and light are both on. I tried unloading the bluetooth module, using bluez and other tools to shut off bluetooth, etc., but that radio just stays on. After searching the web for a while, I finally found the solution: cut off power to the device. I can do that with this command:
    echo "0" > /sys/devices/platform/sony-laptop/bluetoothpower
    And turn it back on by changing "0" to "255". The only problem is, I can't run this as a normal user, and I can't even run it with sudo! Here is the output:
    $ echo "0" > /sys/devices/platform/sony-laptop/bluetoothpower
    zsh: permission denied: /sys/devices/platform/sony-laptop/bluetoothpower
    $ sudo echo "0" > /sys/devices/platform/sony-laptop/bluetoothpower
    zsh: permission denied: /sys/devices/platform/sony-laptop/bluetoothpower
    (I'm using zsh but this also happens with bash)
    However, I can su to root and run this command successfully
    $ su
    Password:
    # echo "0" > /sys/devices/platform/sony-laptop/bluetoothpower
    And off goes the light. I would like to somehow turn off bluetooth at boot, but I don't know how to have Arch run a command as the root user at boot after loading the modules (to ensure the bluetooth radio is not started up again). It seems that bluetoothpower is created at each boot, because I tried changing the permissions to read & write for all, then adding the command to my .xinitrc. This worked, but only during that session. After rebooting I had the same problem.
    Help?
    Last edited by Allamgir (2009-07-29 13:44:40)

    Yes! Yet again the wiki has saved me! I followed this part: http://wiki.archlinux.org/index.php/Pm- … _own_hooks
    I just set it to turn off bluetooth upon resume, and it works! yay!
    Thanks everyone!

  • Executing multiple commands with sudo fails

    Hi,
    We're having trouble with sudo and bash.  When we want to execute multiple commands and there are spaces, the commands don't run.  Here's an example of what works:
    [root@erpapp1-prod ~]# sudo -i -u oracle bash -c 'ls;pwd'
    In this case, I get a listing of the files in /home/oracle followed by the current directory of /home/oracle.
    Here's an example of what DOESN'T work:
    [root@erpapp1-prod ~]# sudo -i -u oracle bash -c 'ls; pwd'
    Notice the space before "pwd".  In this case, all I get is the listing of files in /home/oracle.
    Caveat:  I'm a real beginner with Linux.  I've compared many of the files (/home/oracle/.bash_profile, /home/oracle/.bashrc, /etc/bashrc, /etc/profile) from this server to another where we don't have issues and, other than some logic being in different order, don't see much of a difference.  Again, very beginner here.
    Any ideas?  Thanks!
    Todd

    What shows up as a space may not necessarily be a space. For instance, it could be some control character like a newline, which might interfere with the execution. For example:
    $ test=`echo -e "test;\ntest"`
    $ echo $test
    test; test
    $ echo "$test"
    test;
    test
    Here is another example:
    # test=`echo -e "ls;\npwd"`
    # su - oracle -c "$test"
    oradiag_oracle
    /home/oracle
    # su - oracle -c $test
    oradiag_oracle
    I cannot guess how you construct the command list. Perhaps the problem is a text files that was created under Windows and copied as binary to Linux, or a shell script using a different IFS environment variable, etc.
    Personally I would use a different approach. From a security standpoint it is a bad idea to use passwords at the command prompt because every user can see them using the ps -ef  output.

  • [Solved] Running Thunar with sudo/su Causes GVFS Errors?

    Hi, I switched from Xubuntu to Arch a few days ago, and am loving it so far, but I'm running into an issue when running Thunar with sudo or su. As a result, trash as root doesn't work. I'm not sure if this is related to GVFS, but drives also do not appear when running Thunar as root. Not too major, since it's just a slight inconvenience, and I only need root privileges with Thunar occasionally. Though it'd be awesome if someone knows how to fix this, since my searching has come up with nothing for a problem like this. When logging in as root itself, the problem doesn't occur,  it only happens when running it as my regular account through the sudo or su command.
    Here's the terminal output with the errors:
    [dark@YiffingInHell ~]$ su
    Password:
    [root@YiffingInHell dark]# thunar
    (thunar:29855): GVFS-RemoteVolumeMonitor-WARNING **: cannot connect to the session bus: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
    (thunar:29855): GVFS-RemoteVolumeMonitor-WARNING **: cannot connect to the session bus: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
    (thunar:29855): GVFS-RemoteVolumeMonitor-WARNING **: cannot connect to the session bus: org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
    Last edited by DarkSniper (2011-04-06 02:43:46)

    @janek: It's not good practice to necrobump threads that were posted nearly a year ago.
    I have long since devised a better solution than my initial quick fix. I have created a small script that wraps sudo and fetches root's dbus variables, then sticks them before the command I want to run, so that they're run on root's session instead of mine. It's not the most elegant way, but it remains secure and has pretty much no overhead. I also prefer sudo over pkexec, having an agent popup when I enter the command is undesirable, since it's simpler and easier to just enter the password on the command line.
    For searcher's sake, this is my little wrapper if anyone's interested in using it.
    A small wrapper to go in your path, to be aliased to sudo in your bashrc
    !#/bin/bash
    #Fetch Root's Dbus Variables and Run The Command
    /usr/bin/sudo $(/usr/bin/sudo sed '6q;d' /root/.dbus/session-bus/af16543424391ebcfb5f0c1000000ce2-0) \
    $(/usr/bin/sudo sed '7q;d' /root/.dbus/session-bus/af16543424391ebcfb5f0c1000000ce2-0) \
    $(/usr/bin/sudo sed '8q;d' /root/.dbus/session-bus/af16543424391ebcfb5f0c1000000ce2-0) "$@"
    Then add this to a script that is run as root on boot. [This starts a session for root that allows the wrapper to connect]
    Examples include /etc/rc.local; /etc/lxdm/LoginReady; or a systemd unit
    dbus-launch --autolaunch af16543424391ebcfb5f0c1000000ce2
    NOTE: The "af16543424391ebcfb5f0c1000000ce2" part is different for every system, you can find out what it is for your system by checking the name of the file in /root/.dbus/session-bus.

  • Excel output (with graphics)

    Hello,
    I am using Oracle reports 10g 1.2.0 version.
    We need to generate oracle reports in Excel format ("real" Excel, not delimited text) with tabular data and
    also graphics.
    I used desformat=spreasheet. But is is giving only one worksheet.
    I've found the "Output to Excel with Oracle9i Reports"
    demo but the Excel template in the demo is very simple and doesn't have graphics.
    Then I've found the following:
    http://otn.oracle.com/products/reports/htdocs/getstart/examples/excel_output/result/excel.jpg
    a) The above site has excel output with multiple worksheets.
    which is similar to what we need but I wasn't able to find related source (excel_emp.jsp).
    b) Using jsp if we can ahieve multiple worksheets with grapahics, please provide us examples.
    c) http://www.oracle.com/technology/products/reports/htdocs/getstart/demonstrations/excel/index.html --This site is not working to find the demo.
    Could you please help me in this?
    Thank you for any help.

    carla,
    the example you mentioned uses the JSP web source that is only available in oracle9i reports.
    in theory you can create any excel output. it is just a matter of creating the template and then adding the reports tags to populate it with data.
    you could then use reports' URL engine to produce files from this output.
    there are certainly ways to do it, but they are only available in oracle9i reports (9.0.2 and higher)
    regards,
    philipp

  • Is it possible to create a Webservice in BI which takes XML as an input and gives PDF as output with an additional requirement that Siebel expecting the XSD from BI to send data in the BI requested format

    Is it possible to create a Webservice in BI which takes XML as an input and gives PDF as output with an additional requirement that Siebel expecting the XSD from BI to send data in the BI requested format. Siebel wants to send the data as xml to BI but not sure of the BI capabilities on giving WSDL embedded with XSD (input is a hierarchical)

    Hi All,
    I am able to fulfil above requirement. Now I am stuck at below point. Need your help!
    Is there any way to UPDATE the XML file attached to a Data Definition (XML Publisher > Data Definition) using a standard package or procedure call or may be an API from backend? I am creating an XML dynamically and I want to attach it to its Data Definition programmatically using SQL.
    Please let me know if there is any oracle functionality to do this.
    If not, please let me know the standard directories on application/database server where the XML files attached to Data Definitions are stored.
    For eg, /$APPL_TOP/ar/1.0/sql or something.
    Regards,
    Swapnil K.

  • Digital Output With Timer (Simulation)

    Hello everyone, I just learned how to make LabVIEW program a week ago. I try to make a simulation of Digital Output by LabVIEW (my attachment). In this simulation I have a slider as an input (0-10 V), two numeric control (upper limit and bottom limit), a waveform chart that plot those 3 value, and two boolean LED (P0.0 and P0.1) as an indicator. In this simulation you can fill any number (between 0-10) in the numeric control as a limit for your slider input. If the input from a slider exceed those upper and bottom limit then the boolean LED will turn on, P0.0 if exceed upper limit and P0.1 if exceed bottom limit. The problem is I don't know how to make timer for those boolean LED. As example:
    1) Make an input from slider,
    2) If input (1) exceed the upper limit,P0.0 will turn on for 5 second,then turn of for 10 second,
    3) If in that 10 second you change the input back to normal (between upper and bottom limit) then P0.0 will stay turn of until the input from slider exceed the upper limit again,
    4)If in that 10 second you didn't change the input (stay exceed the upper limit) then P0.0 will repeat the process (2) until you the input from slider back to normal.
    (Same process for input that exceed the bottom limit).
    Can you help me to make this timer? Thank You (I'm sorry I made a double post):newbie
    Regards
    Juventom
    Attachments:
    Digital Output With Timer.vi ‏16 KB

    Hello Juventom,
    As I understand it you want to be continuously checking the value of the sliding bar and comparing that to the upper and lower limit controls whilest also chaning the LED booleans to true for 5 seconds then false for 10 seconds if the sliding bar value is outside of the limits.
    To do this you would probably be best using a parallel loop design, where you have 3 while loops in place of the one you have currently. Each one of these while loops would be responsible for a part of your program (e.g. the top one would display your values on the graph and the second one who check the sliding bar value against the upper limit and then turn on the LED, etc)
    I've found this tutorial about multiple loop programs and I think you should look at the section entitled "Parallel Execution"
    http://zone.ni.com/devzone/cda/tut/p/id/3749
    This way you can use normal delay VIs but when they run they only pause that loop rather than the whole program.
    Please let me know how you get on with this, and ask me if you need further help.
    James W
    Controls Systems Engineer
    STFC

  • How to download alv grid output(with field catalog) into excel file format

    Hi all,
    How to download alv grid output(with field catalogs) into excel file format and same file has to download to application server.
    Please help.
    Regards,
    Satya.

    Hi,
    On list where alv is displayed, select export icon( green color -> ),select spread sheet.
    This will display records in Excel sheet.

  • PDF Output with javadoc

    Somebody once asked how to create PDF output with javadoc, so here's some work in progress:
    I am currently creating a PDF doclet which creates directly PDF output from javadoc. It's still in alpha stage, because it does not yet create an index or navigation frame (which is mandatory for the PDF to be useful), and most HTML tags are not yet interpreted. But that's gonna improve over the next few weeks.
    http://sourceforge.net/projects/pdfdoclet
    Bye,
    Marcel

    Hai Marcel,
    How to run this pdfdoclet?
    I tried like:
    javadoc -doclet com.tarsec.javadoc.pdfdoclet.PDFDoclet -docletpath d:\For_PDF_Doc\itext-0.92.jar;d:\For_PDF_Doc\pdfdoclet.jar *.java
    And the result is:
    Loading source file Test.java...
    Constructing Javadoc information...
    pdfdoclet: >> OPTION 0: -doclet
    pdfdoclet: >> OPTION 1: -docletpath
    pdfdoclet: Content completed, create index
    pdfdoclet: *** PDF DOCUMENT api.pdf COMPLETED ***
    Nothing is there in api.pdf!
    anu

  • How to replace a "notfound" output with a null value?

    hi,
    I'm just getting a output of "Rows Notfound" for a script..
    instead of this , i just need to show the output with a record as null value or some value..
    do we have any option to use this in oracle..

    Apart from capturing with an exception in PL/SQL code, if you're wanting something in a script as pure SQL, you'd have to generate an additional row and only select that where no data is found e.g...
    SQL> ed
    Wrote file afiedt.buf
      1  select ename from emp where ename = 'FRED'
      2  union all
      3* select 'No Data' from dual where not exists (select * from emp where ename = 'FRED')
    SQL> /
    ENAME
    No Data
    SQL>Of course this does effectively double-up on the queries being executed, so if you're dealing with a heavily complex query, it may be best just just have the regular exception come out, but then this will also depend on your actual requirements and why you want to do this in the first place.

  • Formatted HTML output with Spry regions - is it possible?

    I have recently begun using the XML export extension in
    conjunction with an Access database to output dynamic data into a
    page with a Spry master/detail setup. So far, my simple example is
    going great, but I've run into a snag that I need some help with.
    To explain what I'm doing - it's a simple article page with
    the list of articles on the left with the title and date and the
    article title and full contents on the right hand side. So far it's
    all working very well, updating in real time when I click an
    article title on the left. The problem is the output with this one
    field which stores not only text, but also HTML formatting that is
    generated by a wysiwyg editor used on the article creation side of
    this little app. This HTML formatted content is the article body
    and is stored in a field named the same - "body". With traditional
    ASP, the HTML formatting displays as expected and all is well, but
    with Spry, it doesn't output formatted HTML, but instead shows the
    content and HTML code together as text. How can I get this one
    field ("body") to be output so all the HTML formatting is shown?
    This is my simple page example. Click through and you'll see
    what I mean.
    http://www.shoestodyefor.com/ajax.asp
    Here's the section of code in question regarding the output
    on that right hand panel where the body is displayed for each
    article:
    <div spry:detailregion="ds1">
    {title}<br />
    {entryDate}<br />
    <br />
    {body}
    /div>
    Is it possible to have that {body} section shown so the
    dynamically created HTML code from the wysiwyg editor is displayed
    correctly?

    Steve Skinner wrote:
    > Is it possible to have that {body} section shown so the
    dynamically created
    > HTML code from the wysiwyg editor is displayed
    correctly?
    The version of Spry that ships with Dreamweaver CS3 (Spry
    1.4) doesn't
    support the type of output created by the XML Export
    extension.
    This issue has been corrected in Spry 1.5, but no plans have
    been made
    public for integrating Spry 1.5 into Dreamweaver CS3. You
    would need to
    download Spry 1.5 from
    http://labs.adobe.com/technologies/spry/.
    Details
    of how to hand-code the fix for output from XML Export are
    here:
    http://labs.adobe.com/technologies/spry/samples/data_region/HTMLFragsInXMLSample.html
    David Powers, Adobe Community Expert
    Author, "Foundation PHP for Dreamweaver 8" (friends of ED)
    Author, "PHP Solutions" (friends of ED)
    http://foundationphp.com/

  • Redirect page with POST method in JSTL

    how to redirect page with POST method in JSTL.
    below is the code that i make, but the page redirected with GET method,
    so, the URL shown as http://localhost:8080/tes2/coba2.jsp?nama=saya
    how to hide the parameter, so it didn't show at the URL..??
    anybody help me..??
    server1 -> coba1.jsp
    <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
    <html>
    <head>
    <title>coba1</title>
    </head>
    <body>
    <c:url value="http://localhost:8080/tes2/coba2.jsp" var="displayURL">
      <c:param name="nama" value="saya"/>
    </c:url>
    <c:redirect url="${displayURL}"/>
    </body>
    </html>server2->coba2.jsp
    <%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
    <html>
    <head>
    <title>coba2</title>
    </head>
    <body>
    <c:forEach items="${param}" var="currentParam">
            <li><c:out value="${currentParam.key}" />
                = <c:out value="${currentParam.value}" /></li>
          </c:forEach>
    </body>
    </html>

    There are other two way communications methods as well. One such would be:
    Server1Page1: Take response with parameters.  Use HttpURLConnection to make a request to DataInputServlet
                  on Server2 and send the parameters there with a POST operation
    Server2DataInputServer: Takes request with data in it and starts a new session.  Puts the data into the session and
                  returns the session id to the requester
    Server1Page1: Reads the response from the DataInputServer (the session id) and generates a sendRedirect to
                  Server2's display page using the session id.  Server1Page1 is now done.
    Server2Page1: Gets a request from the client with the session id, and pulls the parameters out of the session.  Then
                  can continue as normal.Server2Page1 can also do a quick refresh to itself not using the session id as well, which will keep the URL visible by the client relatively clean.

  • Regarding ALV outputs ( with layout variants)

    Hi,
    I have a problem where in an ALV report when it is executed with a variant (there is one layout parameter in the screen which is also filled. This layout is set with a filter),
    displays the output. But the displayed output doesn't filter the output as per the required criteria set in the layout filter.
    When I execute the report with the same variant but now if I select the layout by pressing F4 on the layout field and select the same layout as earlier (which is having the filter criteria), now it displays the output as per the required criteria set in the filter.
    I don't understand why if I execute the report with a variant with the layout value also filled, it is not able to give the required output as per the filter criteria set for the layout.
    When the report is executed with the same variant but the layout value selected from F4, it dispalys the correct output with the filter criteria set for the layout.
    In general, I mean why the program is not able to load the layout with filter when it is called from a variant?
    Regards,
    Rajesh

    It depends on your Layout, How you saved it .
    And one more question are you passing the layout parameter and Filter parameter to the Function module

  • Process the output with dispatch time 3

    Dear experts!
    Thank you for your attention!
    I ues output type BA00 to print order confirmation and set the dispatch time 3
    after i save the order, where can i process the output?
    as in delivery output, we can use VL71 to process outbound delivery.
    which t-code could i use to process the order output with dispatch time 3  ???
    Best regard!
    Tangdark

    is there anyone can help???
    please~~~

Maybe you are looking for