虚拟终端
-
虚拟终端切换:**ctrl+alt+fn **,其中n的值(1-6是字符界面,7是图形化用户界面)
-
在字符界面下,进入图形化界面命令:startx
字符界面
shell的简单命令
- 终端的输入结束:ctrl+d
- 终止程序:ctrl+c
- 注销:logout、关机:**shutdown –h **10、重启:shutdown -r now
- 查看系统时间:date
- 修改系统时间:date -s "2017-11-11 08:44:00"
- 显示日历calendar:cal
- 显示当前目录的绝对路径:pwd
注意:
- 绝对路径是指从根目录(/)开始到当前目录(文件)的路径
- 相对路径是指从当前目录到其下子目录(文件)的路径
- 切换到指定目录:cd
注意:
- 超级用户的主目录是/root
- 普通用户hellen的主目录默认就是/home/hellen
- 几个特殊目录的符号:
- 当前目录:.
- 上级目录:..
- 上二级目录:../..
- 用户主目录:~
- 显示指定目录中的文件和子目录信息:ls [选项] [文件|目录]
选项的值可以为:
-a:显示所有文件及目录
- -l:详细列出文件名、权限、文件大小等信息
- -d:将目录像其他文件一样列出
- -R:递归列出子目录
- 清除当前终端的屏幕内容:clear
- 显示当前已登录到系统的所有用户名,及其终端名和登录到系统的时间:who
- 显示指定命令的手册页帮助信息:man
| 按钮 | 作用 |
|---|---|
| 上下键 | 向上下移动一行 |
| PgDn或PgUp键 | 前后翻阅 |
| q键 | 退出man命令 |
| home或end | 第一页/最后一页 |
shell命令的高级操作
-
自动补全:当用户输入不完整命令时,系统会自动找出匹配的文件或命令的功能。
实现:用Tab键。
作用范围:
1、自动补全文件或目录名
2、自动补全命令名
-
历史记录:每个用户将曾执行过的Shell命令都保存在自己的主目录下.bash_history
实现:
用上下键查找
history [数字]:查看Shell命令的历史记录。
history –c:清除历史记录
!序号 :执行指定序号命令
!!:执行刚才命令
- 别名:别名是按照Shell命令的标准格式所写命令行的缩写
作用:减少键盘输入
格式:alias[别名="标准Shell命令行"]
功能:查看和设置别名
注意:
◆ 别名与标准命令同名时,别名优先;
◆ 在已定义别名的命令下,要使用同名的标准命令,
前方加“\”
◆ 设置别名时“=”两端不能有空格
◆ 当别名或命令中包含空格时,需单引号
◆ alias的设置仅在本次登录。若要每次登录都起作
用,可在**.bashrc**中设置命令的别名。而对所有用
户都有效的别名在**/etc/bashrc**中设置
- 删除已经创建的别名:unalias 命令别名
- 通配符:
(*1)通配符 **:代表任意长度的任何字符。
**(2)通配符? **:代表任何一个字符。
(3)字符组通配符[ ]、- 和**!**
◆ **[ ]表示指定的一个字符范围,而[ ]**内的任意一个字符都用于匹配。
◆ - 在[ ]内表示连接符。如[abc]*或[a-c]*
◆ **!**表示不在这个范围之内的其他字符。
-
输出重定向:
格式:命令>文件名
注意:这个会覆盖原来的内容
-
附加输出重定向 :
格式:命令>>文件名
注意:这个不会覆盖原来的内容,而是添加在原来文件的后面
-
错误输出重定向:
Shell中标准输出与错误输出是两个独立的操作。
◆ 程序的执行结果显示在屏幕上,而错误信息重定向到指定文件,使用“2>”符号。
◆ 程序的执行结果和错误信息都重定向到同一文件,使用“&>”符号。
- 切换用户身份:su [-] [用户名]
- 以root权限执行一个命令:sudo
文件和目录的基本操作
- 显示文本文件的内容:cat [选项] 文件列表
选项:
-n :在每一行前显示行号
- 一次性显示整个文件:cat filename
- 从键盘上创建一个文件:cat > filename ctrl+d结束文件的输入
- 将几个文件合并为一个文件:cat file1 file2 >file
- 分屏显示文本文件的内容:more [选项] 文件
注:
按Enter键显示下一行内容
按空格键显示下一屏的内容
按q键,则退出more命令
按b键往回翻一页
使用less命令也可以实现,而且less命令可以使用上下键来卷动文件,more命令不行
- 显示文本文件的开头/结尾部分:head/tail [选项] 文件
注意:
- 默认显示开头/结尾 10行
- head -20 file: 显示file文件的前20行
- 修改文件的时间、更多的时候被用来快速创建一个空文件:touch
- 管道:|
- 从指定文本文件或标准输出中查找符合条件的字符串:grep [选项] 字符串 文件列表
选项:
- 只显示不匹配的行: -v
- 忽略大小写:-i
- 显示行号:-n
字符串正则表达式:
- 匹配行开始:**^ ** 如:'^aa'
- 匹配行结束:**'
- 从指定路径搜索满足表达式的文件和目录:find [路径] [表达式]
选项
-name 文件
-group 组群名
-user 用户名
-type 文件类型(d: 目录; f: 一般文件; l: 符号链接)
-size [+|-]文件大小(c表示字符数;k表示KB);
+n 是比 n 大;-n是比 n 小; n 正好是 n
-maxdepth n:最多搜索n层目录
-atime n:对文件的最近一次访问是在 n天之前。
- 对文件中的各行进行排序并显示:sort [选项] file
选项:
◆- r:按逆序输出排序结果。
◆+posl - pos2:指定关键字,字段从[posl,pos2)
字段从0开始;
◆**-k pos1[,pos2]:字段从[posl,pos2]字段从1开始;**
◆**-t 分隔符:指定字段的分隔符。默认是空格**
◆**-n:对数字进行排序**
- 显示文件内容,显示时删除连续重复的行:uniq [选项] file
选项:
- 只显示重复行:-d
- 只显示不重复行:-u
- 显示文本文件的行数、字节数和单词数:wc [选项]文件
选项:
- 显示行数:-l
- 显示字数:-w
- 显示单词数:-c
- 比较两个已排序过的文件,显示其结果:comm [-123] [file1] [file2]
选项:
◆**-1:不显示只在第1个文件里出现过的列**
◆**-2:不显示只在第2个文件里出现过的列**
◆**-3:不显示两个文件中相同的行**
- 找出两个文件的不同之处,不需要排序:diff [选项] 源文件/目录 目标文件/目录
- 复制文件或目录:cp [选项] 源文件/目录 目的文件/目录
选项:
-b(backup)、-f(force)、-r或-R(recursive)
- 移动或重命名文件或目录:mv [选项] 源文件/目录 目的文件/目录
选项:
-f(force):强制覆盖
-b:若同名则先备份原文件,再覆盖原文件
- 删除文件或目录:rm [选项] 文件或目录
选项:
选项:-f(force)、-r或-R(recursive)
注意:删除目录要用r选项
- 建立链接文件,默认建立硬链接:ln [选项] 原来文件 链接文件
选项:
-b(backup):若同名备份原文件
-s(symbolic):建立符号链接
- 创建目录:mkdir [选项] 目录
选项:
-m 访问权限
-p(parents):一次性创建多级目录
- 删除目录:rmdir [选项] 目录
注意:
rmdir只能删除空目录,要删除包含文件或子目录的目录,请用rm –rf进行。
文件权限
- 访问权限的表示法:
--- 0 --x 1 -w- 2 -wx 3 r-- 4
r-x 5 rw- 6 rwx 7
- 修改文件的访问权限:
chmod [选项] 数字模式 文件
chmod [选项] 功能模式 文件
当选项为 -R 时:对当前目录下的所有文件与子目录进行相同的
权限改变
- 改变文件或目录的所属组群:chgrp [选项] 组群 文件/目录
选项:
-R:对指定目录的所有文件与子目录进行相同更改
-v:显示命令执行过程
- 改变文件拥有者,并可修改所属组:chown 文件拥有者[.组群] 文件
选项
-R:对指定目录的所有文件与子目录进行相同更改
-v:显示命令执行过程
- 更改默认访问权限:umask [选项] [掩码]
- 将多个文件或目录归档为tar文件,如果使用相关选项还可压缩归档文件:tar 选项 归档/压缩文件 [文件或目录列表]
选项:
选项说明:
-c: 创建归档/压缩文件
-C 路径:解压到指定目录下
-r:向归档/压缩文件追加文件和目录
-t:显示归档/压缩文件内容
-u: 更新归档/压缩文件
-x:还原归档/压缩文件
-v:显示执行过程
-z:采用gzip压缩/解压文件
-j:采用bzip2压缩/解压文件
-f:必需选项
- tar命令
- 压缩/解压缩文件。无选项时执行压缩操作。压缩后产生扩展名为.gz的压缩文件删除源文件:gzip [选项] 文件|目录
选项:
-d(decompress)
-r:参数为目录时,递归压缩目录中的所有文件
-v:显示压缩比
- 压缩/解压缩文件。无选项时执行压缩操作。压缩后产生扩展名为.bz2的文件。删除源文件:bzip2 [选项] 文件
选项:
-d(decompress)、-v、-k(保存源文件)
注意:
bzip2只能压缩单个文件
- 可将多个文件归档后压缩。默认不删除源文件:zip [选项] 压缩文件 文件列表
选项:
-m:压缩后删除源文件
-r:递归压缩目录中的文件
- 解压缩扩展名为.zip的压缩文件:unzip [选项] 压缩文件
选项:
-l:查看压缩包里面的文件
-d
目录:指定解压的目录
-n:不覆盖同名文件
-o:覆盖同名文件
管理用户命令
- 新建用户帐号,超级用户命令:useradd [选项] 用户名
选项:
-c 全名(comment)
-d 主目录(directory)
-e 有效期限(expire)
-g 组群ID|组群名 指定用户所属的主要群组
-u 用户ID(user)
-s 登录Shell
如果没有选项,将按系统默认值设置新用户信息
- 设置或修改用户的口令以及口令的属性。没有加用户名表示修改当前用户:passwd [选项] [用户]
选项:
-d 用户名(delete) //删除用户口令
-l 用户名(lock) //锁定用户账号
-u 用户名(unlock) //解除用户账号
-S 用户名(status) //显示账号的状态
- 修改用户的属性,超级用户命令:usermod [选项] 用户名
选项:
-c 全名(comment)
-d 主目录(directory)
-g 组群ID或组群名 //指定用户所属的主要群组
-u 用户ID(user)
-l 用户名
- 删除指定用户帐号,超级用户命令:userdel [-r] 用户名
选项:
-r(remove):系统不仅删除此用户帐号,还将删除用户的主目录
-
查看用户的UID、GID和用户所属组群的信息。没有选项,则显示全部信息。如果不指定用户,则显示当前用户的信息:id/groups [选项] [用户名]
-
新建组群,超级用户命令:groupadd [选项] 组群名
选项:
-g 组群ID //指定GID
注意:
◼ 该组ID值必须是惟一的,且数值不可为负。
◼ 预设的最小值不得小于500。
◼ 只有root能用该命令
- 修改指定组群属性,超级用户命令:groupmod [选项] 组群名
选项:
-g 组群ID //指定GID
-n 组群名(name) //指定组群名
- 删除指定的组群,超级用户命令:groupdel 组群名
注:若该群是一些用户的主要组群,则需要首先删除这些用户后,才能删除这个组群
- gpasswd [选项] 组群
gpasswd 组名:修改组密码
gpasswd –r 组名:删除组密码
gpasswd –a 用户名 组名:将某个用户加入组
gpasswd –d 用户名 组名:从组里删除用户
软件包管理
- 查询软件包的相关信息:rpm –q[选项] [软件包]
选项:
-a:查询已安装的所有软件包
-f 文件:查询指定文件所属的软件包
-l:查询指定软件包所包含的文件
-i:查询指定软件包的详细信息
- 安装RPM软件包:rpm –i[选项] 软件包文件
选项:
-v:显示安装过程
-h:用#来反映安装的进度
--replacepkgs :重复安装软件包
--test:只对安装进行测试,并不实际安装
--force:忽略软件包及文件的冲突
- 卸载RPM软件包:rpm –e 软件包
注:卸载软件包时,参数不能使用RPM软件包的完整文件名,只能使用软件名称或软件名称加上版本编号
- 升级RPM软件包。如果当前系统中未安装指定的RPM软件包则直接安装:rpm –U[选项] 软件包文件
选项:
-v:显示安装过程
-h:用#来反映安装的进度