cd(切换目录指令)
可以使用切换目录命令cd将shell会话切换到另一个目录
- cd destination,加上单个参数destination表示切换到指定的目录名,不加则切换到用户的主目录,destination可以选择绝对路径和相对路径
- cd或cd ~:进入当前用户主目录
- 绝对路径总是以正斜线(/)作为开始,表明从虚拟目录的根目录开始
- cd /bin:将切换bin目录
- 相对路径则是以目录名或是以特殊字符开始(.和..)
- cd Documents:相当于cd /home/用户名/Documents
- cd ../表示切换到此目录上一级目录的某个文件
- cd —:返回进入此目录之前所在的目录
- pwd:可以查看当前位置的绝对路径
ls(列表命令)
要想知道系统中有哪些文件,可以使用列表命令(ls),将描述ls命令和可用来格式化其输出信息的选项
- ls:命令将显示当前目录下的文件和目录
- ls -F:区分文件和目录,在目录名后加了正斜线(/),在可执行文件后加星号(*)
- ls -a:显示隐藏文件,隐藏的文件会以(.)开头,
- ls -R:递归选项,会列出当前目录下包含的子目录的文件
- ls -l:显示长列表,显示了目录或单个文件的更多相关信息
- 文件的类型,比如目录(d)、文件(-)、字符型文件(c)或块设备(b)
- 文件的权限
- 文件的硬链接总数
- 文件属主的用户名
- 文件属主的组名
- 文件的大小(以字节为单位)
- 文件的上次修改时间
- 文件名或目录名
- ls -i:用来查看文件目录的incode编号,是一个用于标识的唯一数字
- ls 文本匹配字符串:来过滤输出列表,可以使用通配符进行文件扩展匹配
- 问号(?)代表一个字符
- 星号(*)代表零个或多个字符
- [a - i]:中括号表示一个字符位置,并且给出多种可能的选择
- [!a]:使用(!)将不需要的内容排除在外
处理文件
- touch(创建文件)
- touch 文件名:创建空文件
- touch 文件名:改变文件修改时间
- touch -a 文件名:修改文件访问时间
- 仅仅用ls -l是不能显示文件访问时间的,默认显示的是修改时间
- 通过ls -l --time=atime
- cp(复制文件)
- cp source destination
- 源文件和目标文件不一样时,将复制为新的文件
- 源文件和目标文件一样,且在同一目录,则替换
- cp -i source destination:当存在覆盖问题时,则询问
- cp -R source destination:递归的复制整个目录文件到另一个目录
- 制表键自动补全
- ln(链接文件)
只能虽处于同一存储媒体的文件创建硬链接,要想在不同存储媒体的文件之间创建连接只能使用符号链接
- 符号链接
- ln -s来创建符号链接,不是同一个文件
- 硬链接
- ln来创建硬链接,是同一个文件
- mv(重命名文件)
- 等同于文件的移动,incode与时间戳都不变
- mv -i:在覆盖式询问
- rm(删除文件)
- rm -i:在删除时提醒是不是确定删除这个文件
- rm -f:不受提示符打扰,直接强制删除
- rm -R或-r:两者一样,shell会很少对大小写功能一直,递归删除目录及其文件
处理目录
- mkdir(创建目录)
- mkdir -p d/l/m:同时创建多个子目录,不带p选项无法创建 2.删除目录
- rmdir
- 默认只能删除空目录,有文件的目录则不能删除
- 没有-i来询问是否要删除目录
- rm
- rm -r或-R:递归删除目录,但是每个文件会要求确认是否删除
- rm -rf:可以直接删除目录及其所有子目录和文件,没有提示符询问,是一个危险的工具没有声音提示
查看文件内容(不需要调用其他文本编辑器)
- file(查看文件类型)
- 查看文件类型和区分
- 区分目录类型
- 展示一个类型为链接类型的文件,告诉链接到哪个文件上
- 等等...,有时间研究??????????
- 查看整个文件
- cat(会一次性显示出文本文件的所有内容)
- -n:会为所有行加上行号
- -b:只为所有文本加上行号
- -T:不让制表符(Tab)出现,会用(^)去代替所有的制表符
- more(会分页的去显示文本文件内容)
- less(more命令的升级版,包括更多选项,能识别上下键)
- 查看部分文件
- tail(默认显示文本的最后十行)
- -n:指定显示的行数,可以直接在(-)后写上显示的行数
- -f:可以不断的刷新日志信息,实时监测系统日志的绝妙方式
- head(默认显示文本的前十行)
- -n:指定现实的行数,可以直接在(-)后写上显示的行数
检测程序
- ps(探查程序,工具中的瑞士军刀)
- ps:默认情况下,ps命令只会显示运行在当前控制台下术语当前用户的进程
- PID(Process ID):程序的进程ID
- TTY:运行在哪个终端
- TIME:进程已用CPU的时间
- Linux系统中使用的GNU ps命令支持3种不同类型的命令行参数
- Unix风格参数,前面加单破折线
- -e:显示所有运行在系统上的进程
- -f:显示完整格式的输出
- UID
- PID
- PPID
- C
- STIME:?????
- TTY:??????
- TIME:??????有时间补全
- CMD:启动的程序名称
- -l:显示长列表,比(-f)输出的列要多(多出的列)
- F
- S
- PRI
- NI
- ADDR
- SZ:??????
- WCHANG:?????有时间补全
- BSD风格的参数,前面不加破折线
- GNU风格的长参数,前面加双破折线
- Unix风格参数,前面加单破折线
- top(实时监测进程)
- 输出的第一部分显示的是系统的概况
- 第一行显示了当前时间、系统的运行时间、登陆的用户数、系统的平均负载
- 平均负载有三个值:最近1分钟的、最近5分钟的、最近15分钟的平均负载,值越大说明系统的负载越大,出现最近1分钟的高负载很常见,但是最近15分钟的平均负载很高则说明系统有问题
- 第二行显示了进程的概要信息:top命令输出中将进程叫做任务(task),有多少进程处于运行、休眠、停止或是僵尸进程状态(僵尸进程值进程完了,父进程没有响应)
- 第三行显示了CPU的概要信息:top根据进程的属主(用户还是系统)和进程的状态(运行、空闲还是等待)将CPU利用率分为积累输出
- 第四行说的是系统的物理内存:总共有多少内存、当前用了多少、多少空闲
- 第五行也是同第四行一样的信息:针对系统交换空间(分配了的)得状态来说
- 以后一部分显示当前运行的进程的详细列表
- PID
- USER
- PR
- NI
- VIRT
- RES
- SHR
- S
- %CPU
- %MEM
- TIME+
- COMMAND
- 第一行显示了当前时间、系统的运行时间、登陆的用户数、系统的平均负载
- 结束进程
- Linux中,进程之间通过信号来通信
- HUP:挂起
- TNT:中断
- QUIT:结束运行
- KILL:无条件终止
- SEGV:段错误
- TERM:尽可能终止
- STOP:无条件停止运行,但不终止
- TSTP:停止或暂停
- CONT:在STOP或TSTP后恢复执行
- 有两个命令可以向运行中的进程发出进程信号
- kill:通过PID向进程发出信号(要发送进程信号,必须是进程的属主或者超级用户)
- kill:默认发送一个TERM信号(由于信号强制性不足,有的进程会不听话)
- -s:参数支持指定其他信号
- killall:支持通过进程名结束进程
- killall http*:支持用通配符结束进程(在系统负载过大时有效)
- kill:通过PID向进程发出信号(要发送进程信号,必须是进程的属主或者超级用户)
监测磁盘空间
- 挂载存储媒体(在使用新的可以都弄存储媒体,必须把它放到虚拟目录)
- mount:默认输出当前系统上挂在的设备列表,提供四部分信息
- 媒体的设备文件名
- 媒体挂在到虚拟目录的目录名(挂载点)
- 文件系统类型(大多数U盘和软盘被格式化为vfat文件系统,而数据CD则必须使用iso-9660文件系统)
- vfat:Windows长文件系统
- ntfs:Windows NT、XP、Vista以及Windows 7中广泛使用的高级文件系统
- iso9660:标准CD-ROM文件系统
- 已挂载媒体的访问状态
- 手动在虚拟目录中挂载移动设备,需要以root用户身份操作,并且在挂载成功后只有root用户拥有对移动设备操作的权限
- mount -t type device directory
- type:文件系统类型
- device:移动设备的目录
- directory:虚拟目录的挂载点
- mount -t type device directory
- umount(卸载)
- 当从Linux系统中移除一个可移动设备时,需要先卸载,不能直接移除
- umount [directory | device]:支持通过挂载点或设备文件来卸载
- df(查看所有已挂载磁盘的使用情况,例如查看挂载的U盘的容量)
- du(可以显示某个特定目录(默认情况下是当前目录)的磁盘使用情况)
处理数据文件
- sort(排序数据)
- sort:默认会将数字当做字符进行字符排序
- -n:告诉sort命令把数字识别成数字而不是字符,并且按值排序
- -M:按月排序,sort命令能识别三字符的月份
- -r:排列按反序
- grep(搜索数据,grep [options] pattern [file])
- grep t fil1:会在文件中找到包含匹配指定模式的的字符的行
- -v:反向匹配,输出没有匹配该模式的行
- -n:显示匹配模式的行所在的行号
- -c:只显示匹配模式的行的总数
- -e:指定多个匹配模式(grep -e t -e f file1)
- 压缩数据
- gzip:用来压缩文件
- zcat:用来查看压缩过的文本文件的内容
- gunzip:用来解压文件
- tar(归档数据)???????????