PWD
pwd 显示工作路径
shutdown
shutdown -h now 关闭系统 /halt 关闭系统
shutdown -r now 重启 / reboot 重启
防火墙
systemctl stop firewalld 关闭防火墙
IP地址
ip addr 查看ip地址
cd
cd命令:这是一个非常基本,也是大家经常需要使用的命令,它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径。如:
cd /home 进入根目录下面的home目录
cd home 进入当前目录下的home目录
cd .. 返回上一层目录
cd ../.. 返回上两级目录
cd / 返回根目录
cd - 返回上次所在的目录
ls
ls命令:这是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多,下面就列出一些我常用的参数吧,如下:
ls 查看目录中的文件
ls -a 列出全部的文件,连同隐藏文件(开头为.的文件)一起列出来
ls -l 显示文件和目录的详细资料
mkdir
mkdir 命令:创建目录
mkdir dir1 创建一个叫做 'dir1' 的目录'
mkdir dir1 dir2 同时创建两个目录
rm
rm命令:删除
rm -f file1 删除一个叫做 'file1' 的文件'
rmdir dir1 删除一个叫做 'dir1' 的目录' (空目录才能删除)
rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
mv
mv命令:该命令用于移动文件、目录或更名,move之意,它的常用参数如下:-f 如果目标文件已经存在,不会询问而直接覆盖
mv file1 file2 把文件file1重命名为file2
mv file1 file2 dir 把文件file1、file2移动到目录dir中
cp
cp命令:该命令用于复制文件,copy之意,它还可以把多个文件一次性地复制到一个目录下, 它的常用参数如下:
cp -a file1 file2 连同文件的所有特性把文件file1复制成文件file2
cp dir/* . 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
find
find命令:find是一个基于查找的功能非常强大的命令
find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录
find / -user user1 搜索属于用户 'user1' 的文件和目录
find /home/user1 -name *.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件
find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
ps
该命令用于将某个时间点的进程运行情况选取下来并输出,process之意,它的常用参数如下:
-A :所有的进程均显示出来
-a :不与terminal有关的所有进程
-u :有效用户的相关进程
-x :一般与a参数一起使用,可列出较完整的信息
-l :较长,较详细地将PID的信息列出
其实我们只要记住ps一般使用的命令参数搭配即可,它们并不多,如下:
ps aux 查看系统所有的进程数据
ps ax 查看不与terminal有关的所有进程
ps -lA 查看系统所有的进程数据
ps axjf 查看连同一部分进程树状态
kill
kill命令:该命令用于向某个工作(%jobnumber)或者是某个PID(数字)传送一个信号,它通常与ps和jobs命令一起使用,它的基本语法如下:
kill -signal PID
signal的常用参数如下:注:最前面的数字为信号的代号,使用时可以用代号代替相应的信号。
1:SIGHUP,启动被终止的进程
2:SIGINT,相当于输入ctrl+c,中断一个程序的进行
9:SIGKILL,强制中断一个进程的进行
15:SIGTERM,以正常的结束进程方式来终止进程
17:SIGSTOP,相当于输入ctrl+z,暂停一个进程的进行
例如:
以正常的结束进程方式来终于第一个后台工作,可用jobs命令查看后台中的第一个工作进程
kill -SIGTERM %1
重新改动进程ID为PID的进程,PID可用ps命令通过管道命令加上grep命令进行筛选获得
kill -SIGHUP PID
tar
tar命令:该命令用于对文件进行打包,默认情况并不会压缩,如果指定了相应的参数,它还会调用相应的压缩程序(如gzip和bzip等)进行压缩和解压。它的常用参数如下:
压缩:tar -jcv -f filename.tar.bz2 要被处理的文件或目录名称
查询:tar -jtv -f filename.tar.bz2
解压:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
chmod
chmod命令:该命令用于改变文件的权限,一般的用法如下:
chmod -R 777 意思就是将当前目录及目录下所有文件都给予777权限(所有权限)
查看文件内容
cat file1 从第一个字节开始正向查看文件的内容
tac file1 从最后一行开始反向查看一个文件的内容
more file1 查看一个长文件的内容
less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作
head -2 file1 查看一个文件的前两行
tail -2 file1 查看一个文件的最后两行
tail -f /var/log/messages 实时查看被添加到一个文件中的内容
YUM 软件包升级器 - (Fedora, RedHat及类似系统)
yum install package_name 下载并安装一个rpm包
yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系
yum update package_name.rpm 更新当前系统中所有安装的rpm包
yum update package_name 更新一个rpm包
yum remove package_name 删除一个rpm包
yum list 列出当前系统中安装的所有包
yum search package_name 在rpm仓库中搜寻软件包
yum clean packages 清理rpm缓存删除下载的包
yum clean headers 删除所有头文件
yum clean all 删除所有缓存的包和头文件
grep命令
查询log文件中的所有IP地址
grep -o '\b([0-9]{1,3}\.){3}[0-9]{1,3}\b'
grep
是一个强大的 Linux/Unix 命令,用于在文件中搜索指定的模式。下面是 grep
命令的基本用法和一些常见选项:
基本用法:
grep pattern file
pattern
: 要搜索的模式或文本file
: 要在其中搜索模式的文件名
常见选项:
-i
:忽略大小写-r
:递归搜索子目录-n
:显示匹配行及其行号-v
:显示不匹配的行-c
:仅显示匹配的行数-l
:仅显示包含匹配项的文件名-E
:支持扩展正则表达式-w
:匹配整个单词-A NUM
:显示匹配行及其后 NUM 行的内容-B NUM
:显示匹配行及其前 NUM 行的内容
示例用法:
-
在文件中搜索包含 "error" 的所有行:
grep 'error' file.txt
-
递归搜索包含 "keyword" 的所有文件:
grep -r 'keyword' /path/to/directory
-
搜索时忽略大小写:
grep -i 'pattern' file.txt
-
显示匹配行的行号:
grep -n 'pattern' file.txt
-
显示不匹配的行:
grep -v 'pattern' file.txt
grep
命令非常灵活,可以根据不同的需求使用不同的选项来搜索和过滤文本内容。
查看cpu等硬件型号
lscpu
KILL
kill -9
是一个在 Unix 和 Linux 系统上非常强大的命令,用于立即终止一个进程。它发送一个 SIGKILL 信号给指定的进程,强制其立即停止运行。以下是详细的解释和使用示例。
kill -9
的含义
- kill: 这是一个用于发送信号给进程的命令。默认情况下,它会发送一个 SIGTERM 信号,要求进程优雅地终止。
- -9: 这是信号编号,代表 SIGKILL 信号。SIGKILL 是一个无法被捕获、阻塞或忽略的信号,它会强制终止进程。
使用 kill -9
的场景
kill -9
通常在以下场景中使用:
- 进程无法正常终止: 当使用
kill
或kill -15
(SIGTERM)无法终止进程时,可以使用kill -9
强制终止。 - 紧急情况: 当某个进程严重影响系统性能或稳定性,需要立即终止时使用。
使用 kill -9
的示例
查找进程 ID (PID)
首先,你需要知道要终止的进程的 PID。可以使用 ps
、top
、htop
、pgrep
等命令查找进程的 PID。
ps aux | grep some_process_name
终止进程
一旦知道进程的 PID,就可以使用 kill -9
终止它。例如,如果 PID 是 12345:
kill -9 12345
使用 pgrep
和 pkill
如果你知道进程的名字,可以使用 pgrep
查找 PID,或者直接使用 pkill
终止进程:
pkill -9 some_process_name
注意事项
- 数据丢失风险: 因为 SIGKILL 信号会立即终止进程,没有机会进行任何清理操作(例如保存数据、释放资源等),所以在使用
kill -9
时要小心,避免数据丢失。 - 优雅终止优先: 尽量先使用
kill
(SIGTERM)或kill -15
,给进程一个机会进行清理和释放资源。如果无效,再考虑使用kill -9
。 - 权限问题: 终止其他用户的进程通常需要管理员权限(
sudo
)。
示例代码
以下是一个简单的示例,展示如何查找并终止一个 Python 脚本进程:
# 运行一个示例 Python 脚本
python -c "while True: pass" &
假设这个脚本的 PID 是 12345,可以使用以下命令终止它:
# 查找 PID
ps aux | grep 'python -c "while True: pass"'
# 终止进程
kill -9 12345
或者直接使用 pkill
终止所有运行中的 Python 进程(请谨慎使用):
pkill -9 python
总结
kill -9
是一个强大的命令,用于立即终止进程,但应谨慎使用,优先尝试优雅的终止方法。在执行之前,确保确实需要强制终止进程,并注意可能引发的数据丢失和资源未释放等问题。