linuxtar命令后台执行
-
在linux系统中,使用tar命令可以对文件或目录进行压缩和解压缩操作。默认情况下,tar命令是在前台执行的,即tar命令的操作会显示在终端上,需要手动输入命令来完成操作。
如果希望将tar命令放在后台执行,可以使用以下方法:
1. 使用nohup命令:nohup命令可以在后台运行一个命令,即使终端关闭,命令也会继续执行。在执行tar命令时,在命令前加上nohup即可实现后台执行。
例如:nohup tar -cvf archive.tar.gz /path/to/directory &
上述命令将目录/path/to/directory下的文件和子目录打包成一个名为archive.tar.gz的压缩文件,并在后台执行。执行结果会被输出到nohup.out文件中。
2. 使用screen命令:screen命令可以创建一个虚拟终端,并在其中执行命令。使用screen命令后,终端关闭后,命令仍会在虚拟终端中继续执行。
首先,使用screen命令创建一个新的虚拟终端:screen
然后,在虚拟终端中执行tar命令:tar -cvf archive.tar.gz /path/to/directory
按下Ctrl + A然后按下Ctrl + D,可以暂时离开虚拟终端,命令会在后台继续执行。
当需要重新进入虚拟终端时,使用以下命令:screen -r
以上就是在linux系统中将tar命令放在后台执行的两种方法:使用nohup命令和使用screen命令。根据实际情况选择其中一种方法来实现后台执行。
2年前 -
在Linux系统中,可以使用`tar`命令来创建、压缩和解压缩文件和目录。默认情况下,`tar`命令是在前台执行的,即它会在执行期间显示进度和相关信息。然而,有时候我们可能需要将`tar`命令放到后台执行,以便释放终端会话并在后台运行命令。
要在后台执行`tar`命令,可以使用以下方法:
1. 使用`&`符号:在命令结尾添加`&`符号,例如:
“`
tar -czvf archive.tar.gz directory/ &
“`
这将使`tar`命令在后台运行,并在终端显示进程ID。2. 使用`nohup`命令:`nohup`命令用于在后台执行进程,并在终端关闭后继续执行。使用方法如下:
“`
nohup tar -czvf archive.tar.gz directory/ &
“`
这将使用`nohup`命令将`tar`命令放到后台运行,并将输出重定向到一个名为`nohup.out`的文件中。3. 使用`screen`命令:`screen`命令提供了一个虚拟终端会话,可以在其中运行命令,并在需要时分离和重新连接到该会话。使用方法如下:
“`
screen -S session_name
tar -czvf archive.tar.gz directory/
“`
这将创建一个名为`session_name`的会话,并在其中运行`tar`命令。要分离会话,请按下CTRL+A,然后按下D键。要重新连接到会话,请使用`screen -r session_name`命令。4. 使用`at`命令:`at`命令用于在指定的时间执行命令。要在后台执行`tar`命令并在一段时间后运行,可以使用以下方法:
“`
echo “tar -czvf archive.tar.gz directory/” | at now + 1 minute
“`
这将在当前时间的一分钟后执行`tar`命令。5. 使用`systemd`服务:`systemd`是Linux的系统和服务管理器,可以使用它来创建一个后台运行的`tar`命令服务。首先,创建一个`tar.service`文件,内容如下:
“`
[Unit]
Description=My Tar Service[Service]
ExecStart=/usr/bin/tar -czvf archive.tar.gz directory/
Type=simple[Install]
WantedBy=multi-user.target
“`
然后,将该文件保存为`/etc/systemd/system/tar.service`。最后,使用以下命令启动和管理该服务:
“`
sudo systemctl start tar.service # 启动该服务
sudo systemctl enable tar.service # 设置该服务为开机自启动
sudo systemctl status tar.service # 查看服务状态
“`2年前 -
在Linux中,要在后台执行tar命令,可以使用以下几种方法:
1. 使用nohup命令:
将tar命令放入一个脚本文件中,例如执行tar命令的脚本文件名为tar_script.sh。然后使用以下命令执行脚本并将其放入后台执行:
“`shell
nohup sh tar_script.sh &
“`
通过使用nohup命令和&符号,可以在后台执行tar命令。nohup命令的作用是忽略SIGHUP信号,这样即使当前会话关闭,tar命令仍然可以继续执行。2. 使用screen命令:
首先安装screen:
“`shell
sudo apt-get install screen
“`
然后使用以下命令创建一个新的screen会话:
“`shell
screen -S myscreen
“`
进入该会话后,执行tar命令,然后使用Ctrl+A+D组合键将screen会话切换到后台。
下次要回到该screen会话时,可以使用以下命令:
“`shell
screen -r myscreen
“`3. 使用disown命令:
通过该方法可以将一个正在运行的前台任务放到后台执行。
首先执行tar命令,然后按下Ctrl+Z暂停该任务,并使用bg命令将其切换到后台执行:
“`shell
bg
“`
使用jobs命令可以查看后台任务的状态。
然后使用disown命令将该任务与当前终端会话分离:
“`shell
disown %[任务号]
“`这些方法都可以实现在后台执行tar命令,选择一种适合自己的方法即可。
2年前