linux Qt system()函数问题

Andy_baby 2013-06-19 10:52:55
我再ubuntu下,使用Qt 函数想执行 history >> file,这个命令,我使用system函数,可是一直提示 ,总是提示这样一个错误:sh: history: not found。有人说是因为history命令是linux系统内置命令,所以不能执行。可是我换作df命令,同样是系统内置命令确实可以执行。
...全文
497 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
_Gx 2013-06-19
  • 打赏
  • 举报
回复
确保你系统当前的shell是bash
xcyl 2013-06-19
  • 打赏
  • 举报
回复
引用 楼主 Andy_baby 的回复:
我再ubuntu下,使用Qt 函数想执行 history >> file,这个命令,我使用system函数,可是一直提示 ,总是提示这样一个错误:sh: history: not found。有人说是因为history命令是linux系统内置命令,所以不能执行。可是我换作df命令,同样是系统内置命令确实可以执行。
引用 1 楼 cai6811376 的回复:
若已安装bash的话 chsh -s /bin/bash 若没有bash的话先 sudo apt-get install bash
chsh -s /bin/bash之后注销一下再登陆
dbzhang800 2013-06-19
  • 打赏
  • 举报
回复
1. system() 是 C、C++中的函数,和Qt没有关系 2. history 是 bash 中的命令,请确保你当前系统的shell是 bash 而不是其他的比如 dash 等
xcyl 2013-06-19
  • 打赏
  • 举报
回复
若已安装bash的话 chsh -s /bin/bash 若没有bash的话先 sudo apt-get install bash
Andy_baby 2013-06-19
  • 打赏
  • 举报
回复
谢谢,楼上的3位,Ubuntu默认的shell是dash,ubuntu默认情况下已经安装了bash,而bash与dash的切换,http://hi.baidu.com/gaogaf/item/6de26f15f779663eb8318046,这篇文章的方法可用,三楼的方法我试了一下好像不是很有用。int system( const char *string ); linux下的system函数是符合ANSI C和posix.2的库函数。 system的确不是Qt的函数。

16,213

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧