kill
1$ kill pid # kill -15 pid 默认的 kill
系统会发送一个 SIGTERM 的信号给对应的程序,当程序接收到该 signal 后:
- 程序立刻停止
- 当程序释放相应资源后再停止
- 程序可能仍然继续运行
大部分程序接收到 SIGTERM 信号后,会先释放自己的资源,然后在停止。但是也有程序可以在接受到信号量后,做一些其他的事情,并且这些事情是可以配置的。如果程序正在等待 IO,可能就不会立马做出相应。也就是说,SIGTERM 多半是会被阻塞的、忽略。
kill -15
信号只是通知对应的进程要进行"安全、干净的退出",程序接到信号之后,退出前一般会进行一些"准备工作",如资源释放、临时文件清理等等,如果准备工作做完了,再进行程序的终止。如果在"准备工作"进行过程中,遇到阻塞或者其他问题导致无法成功,那么应用程序可以选择忽略该终止信号。
1$ kill -9 pid
必杀,强制删除。在执行时,应用程序是没有时间进行"准备工作"的,所以这通常会带来一些副作用,数据丢失或者终端无法恢复到正常状态等。
ps
Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。.
1$ ps -ef | grep 进程关键字 # 查找指定进程
1# ps -ef | grep php
2root 794 1 0 2020 ? 00:00:52 php-fpm: master process (/etc/php/7.3/fpm/php-fpm.conf)
3www-data 951 794 0 2020 ? 00:24:15 php-fpm: pool www
4www-data 953 794 0 2020 ? 00:24:14 php-fpm: pool www
有时候则显示如下信息
上述查询,查询结果其实 都是没有 cold 这个进程,但是都显示了 cold 进程的本身,当我们再次查询的时候
可以看到进程号一直在变化,正常进程号是不会变的。
解决方法:
- 在进程名 任何一个字母上添加 [ ]
- 在进程后面 +
grep -v grep
(-v 参数含义为不包括)
cat 和 tail 查看日志
1$ tail -f fileName # 尾部的内容显示在屏幕上,并且不断实时刷新
2$ tail fileName # 默认显示最后 10 行
3$ tail -n 20 fileName # 显示最后 20 行
4$ tail -n +20 fileName # 从第 20 行至文件末尾
1$ cat fileName # 打印全部日志
mv
1$ mv source_file(文件) dest_file(文件) # 将源文件重命名
2$ mv source_file(文件) dest_directory(目录) # 将源文件移动到目标目录中
3$ mv source_directory(目录) dest_directory(目录) # 若目标目录存在,移动源目录到其下面,否则对源目录重命名
4$ mv source_directory(目录) dest_file(文件) # 出错
drwxr-xr-x 权限
第一个字符是表示文件类型:-
表示普通文件 d
表示目录 l
表示符号链接 b
表示块设备 (硬件存储设备)
剩下的三个一组,分别表示用户、组用户、其他用户的读、写、执行权限
如 -rwxr-xr-x 或 755 则表示 用户具有读、写和执行权限,而组用户和其他用户仅具有读和执行权限。
scp 远程拷贝
文件夹需要加 -r
- 从远处复制文件到本地目录,从 10.6.159.147 机器上的 /tmp/soft/ 的目录中下载 demo.tar 文件到本地 /tmp/soft/ 目录中
1$ scp root@10.6.159.147:/tmp/soft/demo.tar /tmp/soft/
- 从远处复制到本地,从 10.6.159.147 机器上的 /tmp/soft/ 中下载 test 目录到本地的 /tmp/soft/ 目录来。
1$ scp -r root@10.6.159.147:/tmp/soft/test /tmp/soft/
- 上传本地文件到远程机器指定目录,复制本地 tmp/soft/ 目录下的文件 demo.tar 到远程机器 10.6.159.147 的 tmp/soft/scptest 目录
1$ scp /tmp/soft/demo.tar root@10.6.159.147:/tmp/soft/scptest
- 上传本地目录到远程机器指定目录,上传本地目录 /tmp/soft/test 到远程机器 10.6.159.147 上/tmp/soft/scptest 的目录中
1$ scp -r /tmp/soft/test root@10.6.159.147:/tmp/soft/scptest
mkdir
1$ mkdir /home/cold # 创建单个文件夹
2$ mkdir /home/cold /home/cold2 # 批量创建文件夹
3$ mkdir -p /home/cold/coldFile # 创建多层文件夹
find
1$ find /(查找范围) -name '查找关键字' -type d # 查找目录
2$ find /(查找范围) -name 查找关键字 -print # 查找文件
1$ find / -name 'tomcat7' -type d # 查找tomcat7文件夹所在的位置
2$ find / -name 'server.xml' -print # 查找server.xml文件的位置
tar
从网络上下载到的源码包, 最常见的是 .tar.gz
包, 还有一部分是 .tar.bz2
包。
-
.tar.gz
格式解压命令为tar -zxvf xx.tar.gz
-
.tar.bz2
格式解压命令为tar -jxvf xx.tar.bz2