当前位置: 代码迷 >> QT开发 >> 用Qt调用linux命令打包的有关问题
  详细解决方案

用Qt调用linux命令打包的有关问题

热度:73   发布时间:2016-04-25 04:44:16.0
用Qt调用linux命令打包的问题~
比如:tar zcvf /root/m_test.tar.gz /home/m_test . 这样打包压缩后,解压出来就是一个home目录,下面再有个m_test文件夹。而实际上我只是要将home目录下的m_test打包,解压出来就只有一个m_test文件夹,有什么方法实现没有?先谢谢了~~

------解决方案--------------------
探讨

# cd home
#tar zcvf m_test.tar.gz m_test

------解决方案--------------------
探讨

引用:

# cd home
#tar zcvf m_test.tar.gz m_test

方法是对的,但QProcess不是一个shell,不能执行这种连贯的命令。

楼主看一下QProcess::setWorkingDirectory方法,用它来把路径设置到home里

------解决方案--------------------
谁说不能执行shell?方法不对而已。 (Ubuntu 12.04)
C/C++ code
void MainWindow::on_pushButton_clicked(){    QStringList options;    options << "-c" << "cd / && ls -l > ~/Desktop/a.txt";    QProcess* process = new QProcess(this);    process->start("/bin/sh", options);}