绝对路径:
从根目录开始描述的路径是绝对路径
相对路径:
从当前位置开始描述的路径为相对路径
cd . . /…/
. 表示当前目录
. .表示当前目录的上一级目录
没有… 三个点,用…/…/表示当前目录上一级的上一级
例: .表示我
…表示我的父亲
…/…/表示我的爷爷
cd - 表示退回到上一个工作目录中
cd ~ 表示退回到用户的家目录中
◉ bin目录放置着可执行命令文件
◉ boot目录放置着系统核心文件和开机所需文件
◉ dev目录放置着系统设备相关文件
◉ etc目录放置着系统主要的配置文件
◉ home目录放置着除根用户外其他用户的家目录,默认状态下每一个用户都在该目录下有一个自己的私人目录,表示当前用户的家目录,edu表示用户edu的家目录
◉ lib目录放置着系统和程序运行所要调用的库函数文件
◉ root目录是root用户的家目录
◉ sbin目录放置着根用户才能够执行的命令文件
◉ srv目录放置着服务启动之后需要访问的数据
◉ tmp目录程序临时存放文件的目录,任何用户均可访问,重要文件不可放置在此目录下
◉ opt目录第三方软件建议安装目录,(也即非本发行版本所提供的软件建议放置在此目录下)
◉ media目录放置着移动设备相关文件
小技巧:
1.如何得知本系统有无相关命令?
敲击一部分命令,按两次tab键,有则会显示出来
2.ubuntu切换到管理员命令sudo -s,其他版本linux则是su root
<1> 查看进程命令
ps -le
ps aux
pstree
ps主要是查看进程的,关注点在于查看需要查看的进程
top主要看cpu,内存使用情况,及占用资源最多的进程由高到低排序,关注点在于资源占用情况
<2> top
统计信息区:
前五行是当前系统情况整体的统计信息区。下面我们看每一行信息的具体意义。
第一行,任务队列信息,同 uptime 命令的执行结果,具体参数说明情况如下:
14:06:23 — 当前系统时间
up 70 days, 16:44 — 系统已经运行了70天16小时44分钟(在这期间系统没有重启过!)
2 users — 当前有2个用户登录系统
load average: 1.15, 1.42, 1.44 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
第二行,Tasks — 任务(进程),具体信息说明如下:
系统现在共有206个进程,其中处于运行中的有1个,205个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行,cpu状态信息,具体属性说明如下:
5.9%us — 用户空间占用CPU的百分比。
3.4% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
90.4% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.2% si — 软中断(Software Interrupts)占用CPU的百分比
<4> 杀死进程命令Kill
#kill -1(killhup ) 重启某程序
#kill -9 进程号 强制杀死某进程
#killall 进程名 杀死一类进程
#killall -i -9 进程号 询问是否杀死一类进程(交互式)
#pkill -9 -t [终端号] 按照终端号踢出用户
#w命令查看当前本机登录用户
进程管理中PRI代表Priority,NI代表Nice。这两个值都是优先级,数字越小代表该进程优先级越高。
NI的值的范围是-20到19;
PRI(最终值)=PRI(原始值)+NI
Root用户才能设定进程NI为负值,普通用户只能调高NI值而不能降低
用户只能修改NI的值,不能直接修改PRI
<5> 修改优先级命令
nice命令
#nice【选项】命令
#nice命令可以给新执行的命令直接赋予NI值,但是不能修改已经存在进程的NI值
#nice -n NI值:给命令赋予NI值。
<6> 工作管理
1. #进程名 & 命令将程序放入后台,并在后台执行
2. #进程名 按下ctrl+z将程序将程序放入后台并暂停
查看后台工作
#jobs 【-l】 显示工作的PID
“+”号代表最近一个放入后台的工作,也是工作恢复时默认恢复的工作。“-”号代表倒数第二个放入后台的工作。
将后台暂停的工作恢复到前台执行 (工作号不是进程号)
#fg %工作号 (%号可以省略,但是注意工作号和进程号的区别)
将后台暂停的工作恢复到后台执行
#bg %工作号
(后台恢复执行的命令,是不能和前台有交互的,否则不能恢复到后台执行)
Linux基础部分
[[email protected] ~]
@符之前的是 当前登陆主机的用户名
@符之后的 localhost 代表当前主机名
[ ]中在主机名之后代表当前所处目录
~不是一个固定目录,是一个私人目录
$ 代表普通用户
# 代表超级用户
#nano 是一个文本编译工具,具有自己的页面
按 ↑ ↓ 键查看历史命令
输入一部分命令时可以按一下 tab键 补全命令,按两下则会显示所有当前字符的命令
关机和重启
1. 关机和重启命令只有 根用户root可以执行
2. shutdown -h 时间参数
时间参数 是 数字 代表 。。分钟后关机,
是 00 : 00 代表在某个时刻关机,
是 now 代表立刻关机
shutdown -h 字符串
将会由根用户向其他用户发送其后的字符串内容。
3. shutdown -r
则为 重启命令,用法与关机命令一模一样
4. 可用ctrl+c取消关机命令,
也可用shutdown -c命令取消
另外的关机和重启命令有
halt =shutdown -h -now
reboot=shutdown -r now
poweroff=halt+切断电源指令
5. change directory 缩写 cd 用于切换工作目录
cd . “ . ”表示当前工作目录
cd … “ … ”表示工作目录的上一级目录
cd - 表示退回到上一个工作目录中
cd ~ 表示退回到用户的家目录中
6. 创建于删除目录
mkdir 用于创建目录
rmdir 用于删除目录 只能用于删除空目录
绝对路径 ---------- 相对路径
7. 文件权限:
读权限(r)read:对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限
写权限(w)write:对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除移动目录内文件的权限
可执行权限(x)exe:对文件而言,具有执行文件的权限,对目录来说该用户具有进入目录的权限
第一个字母为 d 表示是 一个文件夹
第一个字母为 – 表示是 一
8. 列出文件名
ls(list) -a 表示列出包括隐藏文件的所有文件
-l 表示以长格式列出文件
-lh表示以特定的大小以长格式列出文件
-a -l(两个选项之间可以不加-) 表示 以长格式列 出包括隐藏文件的所有文件
ls 通配符 表示显示指定通配符文件
ls [绝对路径] 显示指定文件夹下文件
9.通配符:
* 代表文件中任意一个或多个字符
? 代表文件中任意一个字符
[ ]代表将字符组括起来,表示可以匹配字符组中 任意一个,“ - ”用于表示字符范围
例:
[abc] 匹配a、b、c中的任意一个
[ a-f ] 匹配a到f范围内的任意一个字符开头的文件
ls a-f 查找文件名为a-f的文件当“-”处于方括号之外失去通配符的作用
显示当前路径 pwd
转义字符
例: ls *.a 只列出名为.a的文件*
重定向 > (将本来应该显示到屏幕上的东西转到另一个文件当中)
例如: ls -ahl -> zhi.txt
即为将ls -ahl要显示的内容重定向到zhi.txt文件中
> 一个大于号即为把原来文件内容删除,将新内容重定向到文件当中
>> 两个大于号即为不删除之前内容,在前内容末尾加上新内容
10.编辑器 gedit
例:gedit ls.txt(跟已有的文件名直接编辑)
(跟没有的文件名直接创建一个)
cat
(不常用,一般用文本编辑器) 将文件中内容显示到屏幕上,一次性全部显示出来(只能查看不能编辑)
more
(不常用,一般用文本编辑器) 将文件内容输出到屏幕,分屏显示,按空格键翻页
11.管道 |
管道:一个命令的输出可以通过管道作为另一个命令的输入(即连接两个命令)
例:
1. 将ls -ahl 的输出通过more的方式完成
2. 将ls -ahl的命令重定向到zhi.txt文件中并连接gedit zhi.txt命令(即先执行ls -ahl命令然后执行gedit zhi.txt命令)
gedit zhi.txt
12.创建文件
touch 文件名 (如果touch创建的文件已存在,将会改变这个文件时间戳)
拷贝文件
cp(copy) --r 表示拷贝批量文件
\cp 表示强制覆盖所有同名文件
13.移动文件
mv 移动文件、目录时不需要加任何选项
-f 表示强制覆盖所有同名文件
Linux命令中没有专门重命名的命令,只需要将文件从原本的目录移动到原本目录,只改变文件名就可以了
14.删除文件
rm (remove) -r 用来删除目录(可含有文件)
-f 批量删除文件
-i 交互式执行删除
-fr 强制删除目录及其目录中
文件(不提醒)
15.建立链接文件:ln
Linux链接文件相当于windows下的快捷方式
链接文件分为软连接和硬链接。
软链接:不占用磁盘空间,源文件删除则软链接失效
硬链接:硬链接只能链接普通文件,不能链接目录
使用格式:(不加s(soft)即为创建硬链接)
ln 源文件 链接文件(名)
ln -s 源文件 链接文件(名)
硬链接文件和软链接文件占用相同大小的硬盘空间,即使删除了源文件,链接文件还是存在,所以-s选项是更常见的形式
注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径。
文件数目在哪里看得到呢?
答:权限后边的数字即是计数器的数目。
16. 查看文件 或者 合并文件内cat
1>一次性从头到尾显示文件
cat 文件名
2> cat (多个文件名) > 新文件名
17.文本搜索:grep
Linux系统中grep命令是一种强大的文本搜索工具,grep允许对文本进行模式查找。如果找到匹配模式,grep打印包含模式的所有行。
grep 一般格式为:
grep [ -选项 ] ‘搜索内容串’ 文件名
搜索的内容串要用英文的单引号括起来
选项 含义
-v 显示不包含匹配文本的所有行(相当于求反)
-n 显示匹配行及行号
-i 忽略大小写
解决grep搜索关键字不高亮显示问题:
1. 使用vi命令编辑权限文件bash_profile(vi模式键盘按i进入编辑模式,输入完毕后点击ESC键,输入 :wq!保存并退出;
输入:q!不保存退出)
2.vi模式下输入export GREP_OPTIONS=’- -color=auto’ 保存并退出
3.命令模式下输入source ~/.bash_profile即可解决问题
18.查找文件:find
find通常用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件
19.拷贝文件:cp
20.归档管理:tar(归档文件未被压缩,只进行打包)
tar是linux/unix中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据
tar使用格式:
tar [参数] 打包文件名 文件
(tar命令很特殊,其参数前面可以使用‘-’,也可以不使用)
常用参数:
例:归档成包
tar -cvf 归档文件名 文件名
解压包:tar -xvf 归档包文件名
21.文件压缩解压:gzip )
例:
那么如何使用一个命令既实现打包功能同时完成压缩功能呢?(tar与gzip结合使用)
打包压缩:
tar -zcvf打包压缩文件名 要压缩文件
解压:
tar -zxvf 压缩文件名
将压缩文件解压到指定文件夹:
tar -zcvf 压缩文件名 -C(大写) 指定路径
22.文件压缩解压:bzip2
tar与bzip2命令结合使用实现文件打包压缩(用法与gzip一样),tar只负责打包文件,但不压缩,用bzip2压缩tar打包后的文件,其扩展名一般为xxxx.tar.bz2
在tar命令中增加一个选项(-j)可以调用bzip2实现一个压缩功能,实行一个先打包后压缩的过程
tar 与bzip2结合使用:
压缩用法:tar -jcvf 打包压缩文件名 需要打包压缩文件
解压用法: tar -jxvf 打包压缩文件名
23.文件压缩解压:zip、unzip
通过zip压缩文件的目标文件不需要指定扩展文件名,默认扩展名为zip(如果系统无zip相关命令需要安装,无rar的同样需要安装,rar格式与zip使用一样)
压缩文件:zip -r 压缩文件名(没扩展名) 源文件
解压文件:unzip -d 解压后目录 压缩文件
(目录不存在先创建后解压)
24.查看命令位置:which
系统管理常用命令:
25.查看当前日历:cal
26.显示或设置时间:date
设置时间格式(需要管理员权限):
date [mmddhhmm[ [ CC ]YY] [.ss] ] +format
CC为年前两位,YY为年的后两位,前两位的mm为月。后两位的mm为分钟,dd为天,hh为小时,ss为秒。
例: date 010203042019.55
27.查看进程信息:ps
28.动态显示进程:top
29. 杀死进程命令Kill
#kill -1(killhup ) 重启某程序
#kill -9 进程号 强制杀死某进程
#killall 进程名 杀死一类进程
#killall -i -9 进程号 询问是否杀死一类进程(交互式)
#pkill -9 -t [终端号] 按照终端号踢出用户
#w命令查看当前本机登录用户
30.关机重启:reboot、shutdown、init
31.检测磁盘空间:df
df命令用于检测问及那系统的磁盘空间占用和空余情况,可以显示所有文件系统对节点和磁盘块的使用情况
-h 方便阅读方式显示
-l 只显示本地文件系统
32.检测目录所占磁盘空间:du
-h 以方便阅读方式显示
33.查看或配置网卡信息:ifconfig
ifconfig ,显示所有网卡的信息
34.测试远程主机连通性:ping
linux命令-用户、权限管理
1.who 查看当前登陆的用户信息
2.whoami 查看当前登陆账户名
3.ssh 用户名@ip地址 (远程登陆)
用户管理
4.添加用户账号:useradd
useradd [ 参数 ] 新建用户名
参数 含义
-d 指定用户登陆时的主目录
-m 创建用户同时自动建立家目录
-g 指定用户组名称
cat /etc/passwd 查看当前系统用户名
5.设置用户密码:passwd
超级用户可以使用passwd命令为普通用户设置或修改用户密码,普通用户也可以直接使用该命令来修改自己的密码
6.删除用户:userdel
userdel 用户名(删除此用户,但不会删除用户主目录)
userdel -r 用户名(删除用户同时删除用户主目录)
执行用户删除操作时,会出现该用户正在被某进程使用,此时要注意的是删除某用户一定要删除该用户的所有使用情况,例如从该用户跳转到root用户也算
7.查看有哪些用户组
方法一:cat /etc/group
方法二:groupmod + TAB键(三次)
8.添加、删除组账号:groupadd、groupdel
groupadd 新建组账号
groupdel 组账号
cat /etc/group 查看用户组
9.修改用户所在组:usermod
使用方法:
1> 修改默认组
usermod -g 用****户组(要加入的组) 用户名
2>添加用户组但不修改默认组
usermod -a -G 用户组 用户名
10.查看用户在哪个组
groups 用户名
第一部分为四块,第一块为d表示是一个文件夹,第一块为- 表示为一个文件,第二块表示文件所有者对此文件的权限,第三块为文件所有组的成员对此文件的权限,第四块表示其他用户对此文件的权限。
11.修改文件权限:chmod
chmod修改文件权限有两种使用格式:字母法和数字法
字母法:chmod u/g/o/a +/-/=rwx 文件名
u/g/o/a 含义
u user表示该文件的所有者
g group表示与该文件的所有者属于同一组(group)者,即用户组
o other表示其他以外所有人
a 表示包含上述所有三者
[ + - = ] 含义
+ 增加权限
- 撤销权限
= 设定权限
数字法:“rwx”权限可用数字来代替
字母 说明
r 读取权限,数字代号为“4”
w 写入权限,数字代号为“2”
x 执行权限,数字代号为“1”
- 不具任何权限,数字代号为“0”
例1:chmod u=rwx,g=rx,o=r 文件名
等于:chmod u=7,g=5,o=4 文件名
7=4+2+1表示可读可写可执行,6=4+2表示可读可写
例2:chmod 751 文件名
相当于:
文件所有者:读、写、执行权限
同组用户:读、执行的权限
其他用户:执行的权限
执行文件的脚本命令为: ./文件名
12.修改文件所有者:chown
使用方法:chown 用户名 文件或目录名
13.修改文件所属组:chgrp
使用方法:chgrp 用户组名 文件或目录名
14.gedit编辑器
15.sublime编辑器(编代码方便)
16.FTP服务器搭建过程
17.scp服务器搭建
18.vim编辑器
插入:
命令模式下也可以用h、j、k、l分别代表上下左右移动
命令模式下M表示光标移动到中间行
命令模式下L表示光标移动到屏幕最后一行行首
命令模式下G表示移动到指定行, 用法:行号 – G(单个G表示移动到文件末尾)
命令模式下gg表示快速定位到首行
命令模式下w(小写)表示向后移动一个字
命令模式下b表示向前移动一个字
命令模式下 { 表示按段移动,上移
命令模式下 } 表示按段移动,下移
命令模式下ctrl -d 表示向下翻半屏
命令模式下ctrl -u表示向上翻半屏
命令模式下ctrl -f表示向下翻一屏
命令模式下ctrl -b表示向上翻一屏
命令模式下i为光标左插入,a为光标右插入
命令模式下I(大写)转到行首输入
命令模式下A转到行尾插入
命令模式下o(小写)向下新开一行,插入行首
命令模式下O(大写)向上新开一行,插入行首
删除:
撤销命令:
重复命令:
文本行移动:
复制粘贴:
剪切:dd(既有删除又有剪切功能)
可视模式:(v与上下左右配合相当于选中命令)
替换命令:
查找命令:
/zhi n即由光标开始向上查找字符zhi
/zhi N即由光标开始向上查找字符zhi