摘要
2.10 环境变量PATH2.11 cp命令2.12 mv命令2.13 文档查看cat/more/less/head/tail
一 环境变量PATH
1.基本的环境变量
基本的环境变量有5个,分别是 /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
例如,使用which命令查询的环境变量路径就是来自环境变量,查询时,就是从这几个目录下查,因此速度较快
其实,真正使用一个命令的时候应当使用绝对路径,命令也是一个文件
2.将一个命令复制一份到其他路径
上图中,我将ls命令复制了一份到/tmp/ls02,当我使用/tmp/ls02时,命令有效,且与ls效果相同,但当我直接使用ls02命令时无效,原因是ls02并没有在5个基本环境变量目录里面,如果我需要使用ls02这个命令,那么就需要将环境变量改掉。
3.给PATH增加新的值
使用公式PATH=$PATH:【待新增的目录值】
使用上述方法更改后,PATH只能临时生效
4.使修改后的PATH永久有效
使用命令编辑配置文件/etc/profile,在文件末尾加上PATH=$PATH:/tmp/这个命令,如下:
# vi /etc/profile
按下i键,使用向下按键到文件末尾,添加一行命令
PATH=$PATH:/tmp/
5.给PATH删除新增的值
直接给PATH赋值,同时删除/etc/profile文件末尾的设置
# PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
小技巧:在编辑文件时,可以不用进入编辑模式,直接连续点击2次【d】,即可删除当前行。
二 cp命令
copy拷贝
1.拷贝文件
# cp 【源文件】 【目标文件】
2.拷贝目录
# cp -r 【源目录】 【目标目录】
执行命令前的目录结构
执行拷贝目录命令后的目录结构:
注意点:1)拷贝目录需要加-r
2)!$ 表示上一条命令的最后一个参数
3) alias cp='cp -i'中的-i表示执行此命令时要提示是否覆盖***,-i其实是一个安全选项
4) /usr/bin/cp ** ** :直接执行此复制命令时就不会提示是否覆盖
5)cp -r ** **:当目标目录已经存在的时候,它会把源目录放到目标目录下;当目标目录不存在时,它会把源目录拷贝过来并改个名字
执行命令前目录结构:
执行命令后目录结构:
6)如果目标目录下已经存在一个子目录名跟源目录一样,那么会提示是否覆盖
执行命令前目录结构:
执行命令时提示:
三 mv命令
mv :move移动文件,
1.使用mv命令改文件名
# mv 【源文件】 【目标文件】
如果在同一个目录下,相当于改文件名
2.移动并改名
适用于目标文件所在目录不同于源文件所在目录
3.源文件名与目标文件名相同时
当源文件名与目标文件名相同时,系统会提示是否覆盖,因为mv命令下面有-i选项,如果不想提示,请使用目录命令,不要使用别名
移动前:
移动后:
4.移动目录
# mv 【源目录】 【目标目录】
1)给目录改名字
当目标目录不存在时,相当于改名字
目录移动前:
目录移动后:
2)当目标目录存在时
当目标目录存在时,执行此命令后会将源目录放到目标目录下面去,这一点和cp是一样的
执行命令前:
执行命令后:
如果目标目录的子目录中存在与源目录名相同的子目录,则系统会提示是否覆盖
四 文档查看
1.# cat 【文件名】
查看文件内容
2.# tac 【文件名】
倒序查看文件内容
3.cat的选项
# cat -A 【文件名】:显示所有文档内容
$ 表示行尾结束符
# cat -n 【文件名】 :-n表示显示行号
4.# more 【文件名】
也是查看文档内容,但不是如cat一样一下子全部显示出来,他是一屏一屏地显示
可以按空格键来显示下一屏,ctrl+b(background向后)查看前一屏
# wc -l 【文件名】:可以查看某个文件的行数
cat /etc/passwd >> anaconda-ks.cfg.1 :将前面文档的内容追加到后面文档中去
5.# less 【文件名】
less:也是查看文档内容,也支持空格键和ctrl+b键,同时,还支持ctrl+f(foreground向前)查看下一屏、上下方向键来一行一行地上下翻动;但是当文档内容结束时不会像more一样自动退出来,需要按q键退出
使用less命令查看文档内容时:可以在冒号后输入/***来查询***所在的位置,同时,如果有多个***这样的字符串,可以使用n(next)下一个或shift+n(上一个);
在上面表述中的/表示从前往后搜索,如果想要从后往前搜索,需要使用? 此时也可使用n 和 N(shift+n),同时g和G(shift+g)表示定位到行首和行尾;
5.# head 【文件名】
查看文件的头十行
6.# tail 【文件名】
查看文件的末尾十行
7.# head -n 2 【文件名】
查看文件的头2行
8.# tail -n 2 【文件名】
查看文件的末尾2行
9.# tail -f【文件名】
动态地显示此文件的内容,看日志的时候会用到