linux命令末尾加
-
关于在Linux命令末尾加“&”的作用,主要有以下几个方面:
1. 后台执行:在Linux中,默认情况下,终端执行的命令会占用终端窗口并阻塞终端,直到命令执行完成才能继续输入其他命令。而在命令末尾加上“&”符号后,命令就会在后台执行,不会阻塞终端,可以继续输入其他命令。
例如:
“`
$ sleep 10 # 没有加&
$ sleep 10 & # 加了&
“`2. 任务控制:在Linux中,可以使用Ctrl-Z将当前正在运行的前台命令暂停,并将其放入后台执行。如果希望将一个已经在后台运行的命令切换到前台继续执行,可以使用命令“fg”。如果想要将一个后台执行的任务切换到前台执行,并且在切换过程中不暂停该任务,可以在命令末尾加上“&”。
例如:
“`
$ sleep 10 &
[1] 12345 # 任务进程号为12345$ fg
sleep 10 # 切换到前台执行$ fg &
[1] 12345 # 不暂停任务切换到前台执行
“`3. 作业控制:在Linux中,可以使用命令“jobs”查看当前终端上正在执行的作业列表。加上“&”符号可以将命令作为一个独立的作业运行。
例如:
“`
$ sleep 10 & # 将sleep 10作为一个独立作业运行
[1] 12345$ jobs # 查看作业列表
[1] Running sleep 10 &
“`总结:
在Linux命令末尾加上“&”符号可以将命令在后台执行,并且不会阻塞终端窗口。同时,“&”符号还可以用于任务控制和作业控制,方便对正在执行的任务进行操作和管理。2年前 -
一个问号的作用是什么?
2年前 -
&是一种特殊的字符,用于将命令放入后台运行。在Linux中,加上&符号可以使命令以守护进程的方式在后台运行,这样可以让终端继续接受其他命令,并且当前命令的输出也不会再显示在终端上。
在Linux命令行中,命令行后添加&符号的一般格式为:
“`
command &
“`
其中,command代表要运行的命令。具体来说,使用&符号的方式可以将以下几种命令放入后台运行:
1. 启动应用程序后立即释放终端控制权。
在终端中运行一个应用程序时,通常需要等待该应用程序的运行完成才能够继续输入其他命令。如果在运行应用程序的命令结尾加上&符号,就可以立即释放终端的控制权,继续输入其他命令。例如:
“`
firefox &
“`
这个命令将会在后台启动Firefox浏览器,同时终端不会被锁定。2. 执行需要较长时间的命令。
有些命令需要较长的时间才能够执行完成,如果在这些命令后加上&符号,可以让命令在后台运行,而不影响终端的正常使用。例如:
“`
tar -zxf large_file.tar.gz &
“`
这个命令会解压一个较大的压缩文件,加上&符号之后,终端可以继续输入其他命令。3. 执行周期性任务。
在Linux中,可以使用Cron定时任务定期执行命令。如果一个命令需要在每天或每周等固定的时间点执行,并且不希望终端被锁定,可以将命令放在后台运行。例如:
“`
./my_script.sh &
“`
这个命令将会在后台运行一个脚本文件,该文件会按照预定的时间周期执行。4. 部分命令本身就是以后台运行的方式执行的。
有些命令本身就是以后台运行的方式执行的,例如:
“`
xeyes &
“`
这个命令将会在后台启动一个图形化应用程序,命令本身就是一个守护进程。需要注意的是,一旦将命令放入后台运行,就无法获取该命令的输出信息。如果需要查看命令的输出结果,可以将输出重定向到一个文件中。
2年前