第一单元:
1.虚拟机控制
rht-vmctl start desktop 开启一个虚拟机
rht-vmctl view desktop 显示虚拟机
rht-vmctl poweroff desktop 关闭虚拟机
rth-vmctl reset desktop 重置虚拟机
2.命令提示符前面的解释
[kiosk@foundation0 Desktop]$
kiosk:打开shell的用户
@:分隔符
foundation0:主机名称
Desktop:工作目录名称
$:身份提示符 #超级用户 $普通用户
3.切换用户
su - username:高级用户切换到低级用户不要密码,低级用户切换到高级用户需要用密码,同级用户相互切换也要密码(密码输入是无回显,为了安全)
若想退出当前用户登陆:exit
3.虚拟台控制
Ctrl+Alt+F(1/7):进入图形用户界面
Ctrl+Alt+F(2~6):进入虚拟控制台
4.命令的执行
命令必须在命令提示符后输入
格式:命令 参数目标
参数:-单词缩写;--单词全拼
撤销命令的执行:Ctrl+c
5.命令的帮助
1)whatis
2)--help
[]:可加可不加
...:可加入任意多个
<>:必须要加
6.系统使用的基础方法:
工作界面的转换:Ctrl+Alt+上/下
退出bash:Ctrl+d/exit
Ctrl+Shift+n:在新窗口打开shell
Ctrl+Shift+t:在同一窗口打开新的
上面两个都是在shell里才能用
7.系统关机,重启
重启:reboot/init6/shutdown -r now
关机:poweroff/init0/shutdown -h now
8.锁屏 Ctrl+Alt+L
简单的系统命令
1.date
watch -n 1 date 让命令每秒执行一次
date 11111111 把系统时间设定为11月11日11点11分
date 111111112016.55
date -d +/-xday 查看x天前或后的时间
date +%... 设定date的输出格式
2.passwd
修改用户密码:passwd username
passwd -S 用户密码信息
--status
-l 锁定帐号
-u 解锁
-n 设定密码最短有效期
-x 设定密码最长有效期
-w 警告期
-i 设定用户非活跃天数
-d 清除用户密码
监控passwd密码信息
watch -n 1 passwd -S student
3.文件的查看
cat filename 显示文件的全部内容
head filename 显示一个文件的前几行
head -n 5 filename 前5行
tail file 显示一个文件的后几行
tail -n 5 filename 后5行
less 分页浏览
/关键字 查找关键字
n/N 向下/上显示关键字
4.wc统计文件容量信息
wc -l 行数
-w 字数
-c 字节数
-m 字符数
5.tab键:补齐命令,文件名,命令的参数
a+TAB x2 显示系统中所有a开头的命令
6.history历史调用
history 显示历史
history -c 清除当前环境当中的历史命令
!数字 执行第多少行的命令
!字母 执行最近一条以这个字母开头的命令
Ctrl+R+关键字 执行最近一条含有这个关键字的命令
上下键:主行调用命令
7.linux中的快捷键
左右 一个字符一个字符的移动
Ctrl + 左右 一个字一个字移动
ctrl + a 光标移动到行首
+ e 光标移动到行尾
+ u 光标所在位置删除到行首
+ k 光标所在位置删除到行尾
+ r +关键字 调出最近一条含有关键字的命令
+ c 撤销已输入的命令
+ d 关闭当前环境
+ Shift + t 在现有的shell中重新打开一个table
+ Shift + pageup/pagedown 切换table
+Alt + l 锁屏
+Alt + 上/下 切换工作界面
+Alt + f1/7 进入图形界面
+Alt + f2~6 进入虚拟控制台
<<<第一单元练习题>>>
1.用student用户登陆系统图形界面
2.打开一个bash
1)右键 —— open in terminal
2)Applications —— Favorites —— Terminal
3)设置快捷键——Ctrl + o
3.修改student的密码,把密码更新成"T3st1ngtlme"(主机字母和数字)
[kiosk@foundation90 ~]$ passwd
Changing password for user kiosk.
Changing password for kiosk.
(current) UNIX password:
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[kiosk@foundation90 ~]$
4.显示当前系统时间
[kiosk@foundation90 ~]$ date
Tue Dec 27 10:19:32 CST 2016
5.显示当前系统时间,显示格式为:"小时:分钟:秒 AM/PM"(AM/PM为上下午标识)
[kiosk@foundation90 ~]$ date +%r
10:37:38 AM
[kiosk@foundation90 ~]$ date +%X
10:38:27 AM
6.显示“/usr/bin/clean-binary-files”的文件类型
[kiosk@foundation90 ~]$ file /usr/bin/clean-binary-files
/usr/bin/clean-binary-files: POSIX shell script, ASCII text executable
7.统计“/usr/bin/clean-binary-files”的文件大小
[kiosk@foundation90 ~]$ wc /usr/bin/clean-binary-files
594 1780 13220 /usr/bin/clean-binary-files
[kiosk@foundation90 ~]$ wc -c /usr/bin/clean-binary-files
13220 /usr/bin/clean-binary-files
[kiosk@foundation90 ~]$ wc -l /usr/bin/clean-binary-files
594 /usr/bin/clean-binary-files
[kiosk@foundation90 ~]$ wc -w /usr/bin/clean-binary-files
1780 /usr/bin/clean-binary-files
[kiosk@foundation90 ~]$ wc -m /usr/bin/clean-binary-files
13220 /usr/bin/clean-binary-files
当file里是中文时
[kiosk@foundation90 ~]$ wc -c file
11 file
[kiosk@foundation90 ~]$ wc -m file
5 file
当file里是英文时
[kiosk@foundation90 ~]$ wc -c file
7 file
[kiosk@foundation90 ~]$ wc -m file
7 file
8.用快捷方式在shell中调用已经执行过的第4条命令
[kiosk@foundation90 ~]$ !4
touch file3
出错:命令没有好好看敲的是history !4,然后出现了这个错
[kiosk@foundation90 ~]$ history !4
bash: history: !4: numeric argument required
9.用快捷方式执行最近一条含有"date"关键字的命令
(reverse-i-search)`':
[kiosk@foundation90 ~]$ date +%X
11:12:40 AM
第二单元:
一:linux的系统结构
1.倒树结构,根目录在最上层(/)
根目录/下的二级目录:
1)/bin 二进制可执行文件也就是系统命令
2)/sbin 系统管理命令存放位置
3)/boot 启动分区,负责系统启动
4)/dev 设备管理文件
5)/etc 大多数系统管理文件
6)/home 普通用户的家目录
7)/lib 32位系统库文件存放位置
8)/lib64 64位系统库文件存放位置
9)/media 系统临时设备挂载点
10)/mnt 系统临时设备挂载点
11)/run 系统临时设备挂载点
12)/opt 第三方软件安装位置
13)/proc 系统信息
14)/root 超级用户家目录
15)/srv,/var 系统数据
16)/sys 系统管理,主要是关于内核的
17)/tmp 系统临时文件存放位置
18)/usr 系统用户相关信息数据及用户自定义软件存放位置
2.通配符:
*:代表任意数量的任意字符 file*就可代表法file1,file11,fileaaa
?:代表一个任意的字符 file?可代表file1,filea,file@
[]:例:file[abc]代表文件是filea,fileb,filec中的0/1/2/3个
[^]:例:file[^abc]代表除filea,fileb,filec中的其他所有
二.文件的寻址
绝对路径:从根目录/开始的路径 例如:/root/Desktop/file
相对路径:从当前目录开始 touch file:系统会在当前路径下创建一个file,file就是一个相对路径,但是他file的前面自动添加了/root/Desktop/
三.文件的管理
1.touch功能:
1)新建一个文件
kiosk@foundation90 Desktop]$ touch file
[kiosk@foundation90 Desktop]$ touch westos1/test 前提是westos1在Desktop下
2)修改文件的时间戳
touch test/:修改了test这个目录的时间戳
[kiosk@foundation90 ~]$ watch -n 1 stat file
[kiosk@foundation90 ~]$ touch 11111111 file
2.pwd:显示当前路径
[kiosk@foundation90 Desktop]$ pwd
/home/kiosk/Desktop
3.echo:功能相当与c中的printf
[kiosk@foundation90 ~]$ echo hello
hello
4.mkdir:创建一个目录
[kiosk@foundation90 ~]$ mkdir westos
mkdir -p 目录[/目录]:当最上级目录不存在时
5.cd:切换工作目录
[kiosk@foundation90 Desktop]$ cd /etc
[kiosk@foundation90 etc]$
cd ~:回到当前用户家目录
[kiosk@foundation90 etc]$ cd ~
[kiosk@foundation90 ~]$
cd ~username:切换到username的工作目录
[kiosk@foundation90 ~]$ cd ~kiosk
cd -:回到上次所在目录
[kiosk@foundation90 etc]$ cd -
/home/kiosk/Desktop
[kiosk@foundation90 Desktop]$
cd ..:回到上一级目录
[kiosk@foundation90 Desktop]$ cd ..
[kiosk@foundation90 ~]$
6.ls:列出当前目录下的所有文件
[kiosk@foundation90 ~]$ ls
Desktop Downloads Pictures Templates westos
Documents Music Public Videos
ls direcory|filename:列出某一目录下的文件或文件本身
[kiosk@foundation90 ~]$ ls Desktop
aa file filea fileb filec westos zongjie2 运维
[kiosk@foundation90 ~]$ ls file
file
ls -d direcotry:列出目录本身
[kiosk@foundation90 ~]$ ls -d Desktop
Desktop
ls -l file|directory:列出文件或目录内容的属性
[kiosk@foundation90 ~]$ ls -l file
-rw-rw-r-- 1 kiosk kiosk 0 Dec 26 00:06 file
[kiosk@foundation90 ~]$ ls -l Desktop
total 4
-rw-rw-r-- 1 kiosk kiosk 0 Dec 25 22:33 aa
-rw-rw-r-- 1 kiosk kiosk 0 Dec 25 22:46 file
-rw-rw-r-- 1 kiosk kiosk 0 Dec 25 22:21 filea
-rw-rw-r-- 1 kiosk kiosk 0 Dec 25 22:21 fileb
-rw-rw-r-- 1 kiosk kiosk 0 Dec 25 22:21 filec
drwxrwxr-x 2 kiosk kiosk 6 Dec 25 22:44 westos
-rw-r--r-- 1 kiosk kiosk 3281 Dec 26 00:05 zongjie2
drwx------ 3 kiosk kiosk 28 Dec 25 17:05 运维
ls -ld directory:列出目录本身的属性
[kiosk@foundation90 ~]$ ls -ld Desktop
drwxr-xr-x 4 kiosk kiosk 103 Dec 26 00:10 Desktop
ls -a:列出目录中所有的文件,还有以“.开头的隐藏文件
[kiosk@foundation90 ~]$ ls -a
. .bashrc Downloads .gnupg Music Videos
.. .cache .esd_auth .ICEauthority Pictures westos
.bash_history .config file .lesshst Public
.bash_logout Desktop .gnome2 .local .ssh
.bash_profile Documents .gnome2_private .mozilla Templates
ls -R:递归列出目录下的子文件
7.cp:文件复制(注意不要看成cd)
cp是新建文件的过程
cp file file1 file2 ... directory 将文件制到目录下
[kiosk@foundation90 Desktop]$ cp file file1 file2 westos
cp file test 将文件复制给test文件,test可以不存在
[kiosk@foundation90 Desktop]$ cp file test
cp -r directory directory 将目录复制给目录
[kiosk@foundation90 Desktop]$ cp -r westos1 westos2
8.mv:文件的移动或重命名
相同磁盘的mv 是重命名,不同磁盘的mv是复制删除
mv file file1 linux/ westos/:可以同时把文件和目录同时放到一个目录下
.:当前路径
..:上一级目录
mv ../file . 将上一级目录下的file文件移动到当前路径下
mv file file1 ... directory 将file file1等文件移动到目录下
[kiosk@foundation90 Desktop]$ mv file1 file2 file westos1
mv 存在的文件 不存在的文件 相当于文件的重命名
[kiosk@foundation90 Desktop]$ mv file1 file2 file westos1
mv westos/linux . 将westos下的linux移动到当前目录下
[kiosk@foundation90 Desktop]$ mv westos2/westos1 westos1
9.file:测试文件内容
用法:file [选项] 文件名
10.vim:文本方式编辑文件
vim filename (若fiilename不存在,则自动创建)进入到命令模式
按i进入到插入模式,此时可以写文件
若完成编辑,按Esc退出插入模式,输入“:wq”保存并退出
如果只是看下文件没有修改则按Esc+":q"
如果修改文件之后觉得做错了,不想保存则按Esc+":q!"
vim异常退出时,会生成一个.filename.swp文件
再次进入vim filename时进入另一个界面此时,按d会删除那个.swp文件
11.rm:删除目录或文件
rm -f :强制删除不提示
rm -r : 删除目录
rm -d : 删除目录
[kiosk@foundation90 Desktop]$ rm westos/* :删除westos里的文件(不能有目录)而不删除最外面的目录
[kiosk@foundation90 Desktop]$ rm -r westos/*:删除westos里的所有文件及目录,而不删除最外面的目录
四.正则表达式
*:匹配任意多个任意的字符
?:匹配一个任意的字符
[[:alpha:]]:匹配一个字母
[[:lower:]]:匹配一个小写字母
[[:upper:]]:匹配一个大写字母
[[:digit:]]:匹配一个数字
[[:alnum:]]:匹配一个数字或字母
[[:punct:]]:匹配一个符号
[[:space:]]:匹配一个空格
举例:
怎么把带数字的而且有.conf后缀的文件找出来
ls *[[:digit:]]*.conf
没有数字的文件怎么找:
{}:表示不存在的或存在的
{a..f}:1到9
{1,3,5}:1,3,5
{a,c,e}:a,c,e
{1..3}{a..c}:1a,1b,1c,2a,2b,2c,3a,3b,3c
举例:touch file{1..9}:生成file1~file9
touch file{1,3,5}:生成file1,file3,file5
[]:表示存在的
[a-c]:表示a,b,c
[1-3]:表示1,2,3
[123]:表示1,2,3
[^abc]/[!abc]:表示除了a,b,c
举例:前提为file什么什么的文件存在
rm file[a-c]:把filea,fileb,filec删掉
rm file[^abc]:把除了filea,fileb,filec的file什么什么的文件删掉
~:当前用户家目录
~username:指定的用户家目录
~+:当前目录
~-:之前所在目录
.:当前目录
..:当前目录的上一级目录
第三单元
获取在线帮助:
1.man:
是manual的缩写
man man 查看man命令的帮助
man passwd 查看passwd命令的帮助
man的级别
1 系统命令
2 系统接口
3 函数库
4 特殊文件,比如设备文件
5 文件
6 游戏
7 系统的软件包
8 系统管理命令
9 内核
举例:
man 5 passwd 查看/etc/passwd文件的帮助
man 1 passwd 查看passwd命令的帮助
man页面的快捷方式
上下键 向上/下一行
pageup/pagedown 按页翻看
d/u 按半个屏幕翻看
G/gg 跳转页面到man最下面或最上面
/关键字 搜索关键字,关键字会高亮显示,按n/N翻
q 退出帮助页面
2.info
<<<第二单元练习>>>
1.用命令和正则表达式按照要求建立文件
*)用一条命令建立12个文件WESTOS_classX_linuxY(X的数值范围为1-2,Y的数值范围为1-6)
[kiosk@foundation90 Desktop]$ touch WESTOS_class{1,2}_linux{1..6}
*)这些文件都包含在root用户桌面的study目录中
[root@foundation90 Desktop]# ls
study WESTOS_class1_linux5 WESTOS_class2_linux4
WESTOS_class1_linux1 WESTOS_class1_linux6 WESTOS_class2_linux5
WESTOS_class1_linux2 WESTOS_class2_linux1 WESTOS_class2_linux6
WESTOS_class1_linux3 WESTOS_class2_linux2
WESTOS_class1_linux4 WESTOS_class2_linux3
[root@foundation90 Desktop]# mv WE* /root/Desktop/study
[root@foundation90 Desktop]# ls /root/Desktop/study
WESTOS_class1_linux1 WESTOS_class1_linux5 WESTOS_class2_linux3
WESTOS_class1_linux2 WESTOS_class1_linux6 WESTOS_class2_linux4
WESTOS_class1_linux3 WESTOS_class2_linux1 WESTOS_class2_linux5
WESTOS_class1_linux4 WESTOS_class2_linux2 WESTOS_class2_linux6
*)用一条命令建立8个文件redhat_versionX(x的范围为1-8)
[kiosk@foundation90 Desktop]$ touch redhat_version{1..8}
*)redhat_virsionX这些文件都包含在/mnt目录中的VERSION中
[root@foundation90 Desktop]# mkdir /mnt/VERSION
[root@foundation90 Desktop]# mv red* /mnt/VERSION
[root@foundation90 Desktop]# ls /mnt/VERSION
redhat_version1 redhat_version3 redhat_version5 redhat_version7
redhat_version2 redhat_version4 redhat_version6 redhat_version8
2.管理刚才信建立的文件要求如下
*)用一条命令把redhat_versionX中的带有奇数的文件复制到桌面的SINGLE中
[root@foundation90 Desktop]# cp /mnt/VERSION/redhat_version[13579] SINGLE
[root@foundation90 Desktop]# ls SINGLE
redhat_version1 redhat_version3 redhat_version5 redhat_version7
*)用一条命令把redhat_versionX中的带偶数数的文件复制到/DOUBLE中
[root@foundation90 Desktop]# cp /mnt/VERSION/redhat_version[02468] DOUBLE
[root@foundation90 Desktop]# ls DOUBLE
redhat_version2 redhat_version4 redhat_version6 redhat_version8
*)用一条命令把WESTOS_classX_linuxY中class1的文件移动到当前用户桌面的CLASS1中
[root@foundation90 Desktop]# mv study/*class[1]* CLASS1
[root@foundation90 Desktop]# ls CLASS1
WESTOS_class1_linux1 WESTOS_class1_linux3 WESTOS_class1_linux5
WESTOS_class1_linux2 WESTOS_class1_linux4 WESTOS_class1_linux6
*)用一条命令把WESTOS_classX_linuxY中class2的文件移动到当前用户桌面的CLASS2中
[root@foundation90 Desktop]# mv study/*class[2]* CLASS2
[root@foundation90 Desktop]# ls CLASS2
WESTOS_class2_linux1 WESTOS_class2_linux3 WESTOS_class2_linux5
WESTOS_class2_linux2 WESTOS_class2_linux4 WESTOS_class2_linux6
3.备份/etc目录中所有带有名字带有数字并且以.conf结尾的文件到桌面上的confdir中
[root@foundation90 Desktop]# cp /etc/*[[:digit:]]*.conf confdir
[root@foundation90 Desktop]# ls confdir
e2fsck.conf krb5.conf mke2fs.conf
5.删掉刚才建立或者备份的所有文件
[root@foundation90 Desktop]# rm -fr confdir