Linux命令
1.系统维护命令
1.1man
man man:查看man手册
1 Executable programs or shell commands 可执行程序或shell命令
2 System calls (functions provided by the kernel) 系统调用
3 Library calls (functions within program libraries) 库函数
printf()函数即为3中函数 man 3 printf 查询
1.2su
切换到超级用户
su
su root
sudo su
退出:exit
切换到其他普通目录:sudo su 用户名
1.3sudo
临时管理员权限,有时需要输入密码
1.4df
df -Th:查看磁盘使用情况
文件系统 文件类型 大小 已使用 可用 使用比例 挂载点
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext4 19G 6.6G 12G 38% /
1.5mount命令
作用:文件系统的挂载
挂载设备:sudo mount -t 设备类型 设备名称 挂载点
卸载设备:sudo umount 挂载点
2.用户管理命令
添加用户:sudo adduser 用户名
删除用户并删除用户工作目录:sudo deluser --remove-home 用户名
3进程管理命令
3.1ps
ps -aux:显示系统中正在运行的进程
ps -ef:显示当前系统中运行的进程,包含PPID(父进程号)
例:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
用户 进程号 占用cpu 占用内存 终端 进程状态 开启时间 命令
3.2top
动态查看系统中运行的进程
shift > : 向下翻页
shift < :向上翻页
退出:q
3.3修改优先级
PR=NI+20 (进程的执行优先度,top中有显示)
NI 范围:-20~19 NI值越小,优先级越高
sudo renice NI值 PID:改变正在运行的进程的优先级
例如:sudo renice -5 5406
sudo nice -n NI值 启动进程的命令:以指定的优先级运行进程
例如:sudo nice -n -5 ./a.out
3.4 grep命令
grep:从文件中查找字符串
grep “要查找的字符串” 文件名
grep “<要查找的字符串>” 文件名:精确查找 \表示转义
从进程中查找a.out进程?ps-aux | grep"a.out"
(与管道结合使用)
3.5发送信号kill
本质上来说kill只是用来向进程发送一个信号,至于信号是什么,是用户指定的
kill -l :查看系统中定义的信号
重要信号
2:SIGINT 快捷方式:ctrl+c 结束进程
3:SIGQUIT 快捷方式:ctrl+\ 结束进程
9:SIGKILL 杀死进程
14:SIGALRM:在程序中可以定时,定时结束后产生SIGALRM信号结束进程
15:SIGTERM 结束进程 kill发信号时不加编号,默认信号为15号
18: SIGCONT 让暂停进程继续
19:SIGSTOP: 停止信号,如果发送19号信号也会结束进程
20:SIGTSTP 暂停信号 快捷方式:ctrl+z 暂停信号
kill -num PID: num:信号编号 PID:进程号
3.6前后台进程
步骤:创建一个终端,运行进程
ctrl z:暂停进程
jobs:在当前终端查看前后台进程
bg 编号:切换到后台(&)
fg 编号:切换到前台
4网络管理命令
4.1命令
ifconfig:查看linux的ip地址
ipconfig:查看windows的ip地址
(win+r打开运行窗口,输入cmd打开命令窗口,输ipconfig)
ping 域名/ip地址:检查网络连通性(是否能通信)
例如:ping www.baidu.com
5文件管理系统
用于组织和管理计算机存储的大量文件,并提供用户交互接口
5.1文件系统分类
1)磁盘文件系统:指本地主机中实际可以访问到的文件系统,包括硬盘、CD-ROM、DVD、USB存储器、磁盘阵列等。常见文件系统格式有:Ext2、Ext3、Ext4、VFAT等
2)网络文件系统:是可以远程访问的文件系统,这种文件系统在服务器端仍是本地的磁盘文件系统,客户机通过网络远程访问数据。常见文件系统格式有:NFS(Network File System,网络文件系统)、Samba(SMB/CIFS)等
3)专有/虚拟文件系统:不驻留在磁盘上的文件系统。常见格式有:TMPFS(临时文件系统)、PROCFS(Process File System,进程文件系统)和LOOPBACKFS(Loopback File System,回送文件系统)。
5.2根文件系统结构
/bin:存放系统常用的命令或可执行文件(二进制文件)
/sbin:存放更多的可执行文件(二进制),包括系统管理、目录查询等关键命令文件
/boot:存放Linux内核和系统启动文件,包括Grub、lilo启动器程序
/opt: 与系统无关的安装程序
/etc: 放的一些配置文件。Linux开机自启动脚本存放在/etc/rc.d或/etc/init.d目录下。这些目录是Linux系统中用于存放启动脚本的标准目录
/dev : 存放所有设备文件,包括硬盘、分区、键盘、鼠标、USB、tty等
/lib : 存放共享的库文件,包含许多被/bin和/sbin中程序使用的库文件
/mnt : 该目录通常用于作为被挂载的文件系统的挂载点
/proc : 存放所有标志为文件的进程,它们是通过进程号或其他的系统动态信息进行标识,例如cpuinfo文件存放CPU当前工作状态的数据
/usr : 用于存放与系统用户直接有关的文件和目录,例如应用程序及支持它们的库文件。以下罗列了/usr中部分重要的目录。
/usr/lib: 库文件,系统默认搜索的库路径
/usr/include: 头文件,系统默认搜索的头文件路径
5.3文件内容显示
1)cat文件名:显示文件的全部内容到终端
2)head
head文件名:默认显示前10行
head-n文件名:显示文件前n行
3) tail:
tail文件名:默认显示后10行
tail -n文件名:显示文件后n行
5.4链接文件
1)文件类型7种:
七种文件类型
b : 块设备文件 硬盘、sd /dev
c:字符设备文件 鼠标、键盘 /dev/input/mouse
d:目录文件
-:普通文件 .c .h .txt .jpg
l : 软链接文件 类似于windows的快捷方式
s : 套接字文件 网络编程
p:管道文件 IO进程
硬链接
利用linux为每个文件分配的物理编号 --inode号建立连接。因此,硬链接不能跨越文件系统
软链接(符号链接)
利用文件的路径名建立链接。通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性;类似于windows的快捷方式
2)命令:
创建硬链接:
ln 源文件名 链接文件名
例:ln file1.c file
修改一个文件,另一个也会随之修改
创建软链接:
ln -s 绝对路径/源文件 链接文件名
3)注意:
硬链接:删除或移动目标文件链接依然有效
只能操作普通文件
软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效
通常建立软链接使用绝对路径而不是相对路径,以最大限度增加可移植性
硬链接和软链接的区别?
- 创建链接:硬链接利用linux为每个文件分配的物理编号–inode号建立链接;
软链接利用文件的路径名建立链接 - 硬链接只能操作普通文件
- 硬链接:删除或移动目标文件链接依然有效
软链接:删除或移动目标文件链接失效,但是再次创建时,链接依然有效
5.5文件压缩和解压
5.5.1zip
zip命令用于将一个或多个文件压缩成一个压缩文件
unzip 命令用于将zip压缩文件进行解压
注意:
1)具有归档功能,并进行压缩
2)可以压缩文件夹,后缀为.zip
3)压缩或解压后原文件依然存在
5.5.2gzip
gzip命令用于将一个文件进行压缩。
gunzip命令用于将gzip压缩文件进行解压。
注意:
1)只能对一个文件进行压缩,并自后缀为.gz
2)没有归档功能(归档就是将多个文件归为一个)
3)压缩或解压后源文件不存在
5.5.3bzip2
bzip2:功能、特点与gzip相同,只是后缀为.bz2
bunzip2:解压
5.5.4tar(很重要,常用)
选项:
-x : 释放归档文件,解压
-c : 创建一个新的归档文件,压缩
-v : 显示归档和释放的过程信息
-f : 用户指定归档文件的文件名,否则使用默认名称
-j : 由tar生成归档,然后由bzip2压缩 .tar.bz2
-z : 由tar生成归档,然后由gzip压缩 .tar.gz
注意:
1)具有归档功能,并通过选项可以进行压缩或解压
2)压缩或解压后源文件存在
3)需要写全压缩或解压的文件名格式:
格式:
tar 选项 压缩(解压)文件名 [要压缩的文件列表]
组合:
-cjf:以bz2的格式压缩文件
-czf:以gz的格式压缩文件
-xvf:解压一个压缩包,解压后压缩包依然存在
举例: (后缀一定要加)
** tar -cjf file.tar.bz2 .c
tar -czf file.tar.gz .c
tar -xvf file.tar.gz