【问题标题】:C - Not echoing system() commandsC - 不回显 system() 命令
【发布时间】:2014-03-04 01:15:06
【问题描述】:

我在 C 语言中有一个脚本,它基本上在 BG 中移动文件,然后下载一个新文件并替换它。我想知道如何在命令发出时不回显命令。

IE:

system("mv /var/www/post.php /var/www/oldstuff/post2.php");
system("wget http://mywebsite.com/post.php.txt -O /var/www/post.php");

它会创建如下输出:

root@localhost:~# ./replace
--2014-03-03 19:58:18--  http://website.com/post.php.txt
Connecting to 46.19.143.250:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 34643 (34K)
Saving to: `/post.php.txt'

100%[=====================================================================================>] 34,643      --.-K/s   in 0s      

2014-03-03 19:58:18 (320 MB/s) - `/post.php.txt' saved [34643/34643]
Finished Replacing Post!
root@localhost:~# _

我不希望它显示 wget 日志。 只需回显“已完成替换帖子!”

【问题讨论】:

  • 如果您想要这种灵活性,您可能应该使用popen 而不是system
  • 我敢打赌,如果您阅读 wget 命令的文档,您会发现一些有用的东西。

标签: c unix system


【解决方案1】:
system("wget -q http://mywebsite.com/post.php.txt -O /var/www/post.php");

来自manual

-q
--quiet
    Turn off Wget's output.

【讨论】:

    猜你喜欢
    • 2016-11-17
    • 1970-01-01
    • 1970-01-01
    • 2023-02-13
    • 1970-01-01
    • 1970-01-01
    • 2010-12-02
    • 2013-06-11
    • 1970-01-01
    相关资源
    最近更新 更多