码迷,mamicode.com
首页 > 其他好文 > 详细

2018.3.27 二周第二次课

时间:2018-03-27 23:00:51      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:环境变量PATH   cp命令   mv命令   文档查看cat/more/less/h   

1. 环境变量PATH

命令介绍:
which 查找某个命令的绝对路径
!$ 这个命令可以查看你最后一个命令的参数 (上一条命令最后一个参数)
例:tree !$
cp -r 如果目标目录存在的话,则会拷贝到目标目录下的目录里面,如果目标目录不在的话,则会创建目录放置那里。
wc 可以查看一个文件的行数有多少, 语法:wc -l anaconda-ks.cfg.1 # -l后面跟要查看的文件相对路径或绝对路径

1.1 PATH环境变量

如何自定义环境变量
例:假设把ls命令换成ls2并且实现ls的功能,我们首先把给ls的根目录cp到一个文件里,如/tmp。

第一步: 先查看ls在哪个路径下,在这里我们可以看见他在/usr/bin下

[root@zhangzhen-01 ~]# which ls
alias ls=‘ls --color=auto‘
/usr/bin/ls

第二步:查看一下PATH(环境变量)下都有哪些目录

[root@zhangzhen-01 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

第三步:我们把 ls 的绝对路径CP一份到/tmp下

[root@zhangzhen-01 ~]# cp /usr/bin/ls /tmp/ls2
[root@zhangzhen-01 ~]# ls /tmp/
ks-script-PhAkJi
ls #在这个命令的备份在这里

第四步:我们使用PATH(环境变量)赋值,在基础上再添加一个目录。

[root@zhangzhen-01 ~]# PATH=$PATH:/tmp
[root@zhangzhen-01 ~]# !echo
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp

第五步:用which ls2 查看是否生效

[root@zhangzhen-01 ~]# which ls2
/tmp/ls2

在这里,我们新开一个终端,刚才设置的PATH(环境变量)就不生效了
如何让他永久生效呢? 我们就需要改一个配置文件。

第一步:编辑配置文件 vi /etc/profile ,按大“G"进入到最后一行,再按"A"让光标到最后一个字符末尾,回车,添加

PATH=$PATH:/tmp/

如何赋值PATH(环境变量)呢,直接用PATH赋值

[root@zhangzhen-01 ~]# PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:
[root@zhangzhen-01 ~]# !echo
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:

2.命令cp (拷贝原文件成目标文件)

概念:cp即copy的简写
命令格式为: cp [选项] [来源文件] [目的文件]
-r : 如果要复制一个目录,必须加-r选项,否则不能复制。
cp -r 如果目标目录存在的话,则会拷贝到目标目录下的目录里面,如果目标目录不在的话,则会创建目录放置那里。

我想吧test1目录复制到当前目录下并且修改名字为test2.
[root@zhangzhen-01 /]# mkdir /home/zhangzhen-03/test1
[root@zhangzhen-01 /]# ls /home/zhangzhen-03/
test1
[root@zhangzhen-01 /]# cp -r /home/zhangzhen-03/test1/ /home/zhangzhen-03/test2/
[root@zhangzhen-01 /]# ls /home/zhangzhen-03/
test1 test2

-i 选项:这个是安全选项,如果遇到一个已存在的文件,会询问是否覆盖。

3.mv 命令 (move)

该命令的格式为:mv [选项] [源文件或目录] [目标文件或目录]
该命令有几种情况
1)目标文件是目录,但该目录不存在
2)目录文件是目录,切目录存在
3)目录文件是文件,切该文件不存在
4)目标文件是文件,但该文件存在

例1:

如源目录到目标目录且该目录不存在时
[root@zhangzhen-01 zhang]# mkdir 1 2 3
[root@zhangzhen-01 zhang]# ls
1 2 3
[root@zhangzhen-01 zhang]# mv 1 4
[root@zhangzhen-01 zhang]# ls
2 3 4

文件1本身存在,4不存在,把1修改名字为4

例2:

如源目录到目标目录且该目录存在时
[root@zhangzhen-01 zhang]# mv 1 4
[root@zhangzhen-01 zhang]# ls
2 3 4
[root@zhangzhen-01 zhang]# mv 2 3
[root@zhangzhen-01 zhang]# ls
3 4
[root@zhangzhen-01 zhang]# ls 3/
2
#假设2目录移动到本目录下,且名字修改成3,如目标目录存在的话,则会放到该目标目录下的目录。

例3:目录文件是文件,切该文件不存在,则修改名字

[root@zhangzhen-01 3]# ls
1 2
[root@zhangzhen-01 3]# mv 1 3
[root@zhangzhen-01 3]# ls
2 3

例4:目标文件是文件,但该文件存在

[root@zhangzhen-01 3]# ls
2 3
[root@zhangzhen-01 3]# mv 2 3
mv:是否覆盖"3"? n

如果该目录存在的话,则覆盖。

3. 文档查看cat_more_less_head_tai

大“G”直接翻到最后一行,小“g”行首。
cat命令的使用

参数 -A :显示所有的内容,包括特殊字符 如“$”符号,表示行尾,结束的意思
命令如下 : cat -A /etc/passwd
参数 -n :显示行数
命令如下 : cat -n /etc/passwd
例: 查看 /etc/passwd 文件
[root@zhangzhen-01 ~]# cat /etc/passwd #省略号为省略中间的部分
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
·······
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
zhangzhen-03:x:1000:1000::/home/zhangzhen-03:/bin/bash

tac命令的使用

概念: 查看一个文件的内容,和cat的概念一样,cat是正序,tac是倒序查看
命令如下 : tac /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin


adm:x:3:4:adm:/var/adm:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
bin:x:1:1:bin:/bin:/sbin/nologin
**root:x:0:0:root:/root:/bin/bash**   #最后一行和cat命令的第一行是一样的

more命令的使用

概念:当文件内容太多,一屏不能全部显示时,用cat是查看不了前面的内容,这时可以使用“Ctrl+B”可以向上翻屏,按Ctrl+F可以向下翻屏(也可以按空格),想退出输入“q”
命令如下:more /var/log/cron # more后面跟你想查看的文件目录

wc 命令的使用

wc命令使用参考:https://baike.baidu.com/item/wc/405573?fr=aladdin
概念:wc命令是查看一个文件有多少行
语法:wc -l anaconda-ks.cfg.1 # -l是统计行数
例:查看一个文件有多少行
[root@zhangzhen-01 ~]# wc -l anaconda-ks.cfg
51 anaconda-ks.cfg

less 命令的使用 建议使用
概念:跟more使用的方法一样,后面直接跟文件名
优点:这个可以使用方向键 上下左右 来控制,也可以使用空格翻页
less可以实现查找功能,打开一个文档后,输入“/” 后面跟你想要查找的字符串,输入“?”可以从后往前看。
按小“n”可以查看下一个字符串在哪,按大“N”可以向上查找。

head命令的使用

概念:命令head用于显示文件的前10行,后面直接跟文件名。如果加“-n”选项,则显示文件的前几行。
语法:head /etc/passwd
显示头两行语法: head -n 2 /etc/passwd

tail命令的使用

概念:和head类似,命令tail用于显示文件的最后10行,直接跟文件名,如果加“-n”,则显示文件的前几行。
语法:tail /etc/passwd
显示最后两行语法:tail -n 2 /etc/passwd

-

命令 tail -f 可以查看动态日志,适合查看正在生成的文件。
语法: tail -f /etc/passwd

技术分享图片

2018.3.27 二周第二次课

标签:环境变量PATH   cp命令   mv命令   文档查看cat/more/less/h   

原文地址:http://blog.51cto.com/13646023/2091822

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!