二周第二次课(3月27日)
2.10 环境变量PATH
在环境变量路径里的命令,可以直接执行,不用填写绝对路径which 查看一个命令的别命及绝对路径(查找的范围在环境变量里)
# which ls
alias ls='ls --color=auto'
/usr/bin/ls
查看环境变量
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:
复制ls命令到tmp目录下,并改名字为ls2
# cp /usr/bin/ls /tmp/ls2
临时添加新的环境变量/tmp 注意,这个环境变量只在当前终端有效,重启或者打开新的终端,都会失效
# PATH=$PATH:/tmp/
# which ls2
/tmp/ls2
# ls2
anaconda-ks.cfg
在新的终端打开效果
永久增加新的环境变量
修改profile
#vi /etc/profile
在末尾增加一行PATH=$PATH:/tmp/
再打开新的终端可以看到
删除环境变量tmp
方法1,临时删除环境变量tmp,同样也只是当前终端删除
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/tmp/:/root/bin
# PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
在新的终端中
方法2,修改profile文件,删除刚才填写的PATH=/tmp/
vi 编辑的小技巧,用vi打开文件,移动光标,直接按两下d可以删除该行数据
2.11 cp命令
查看cp# which cp
alias cp='cp -i'
/usr/bin/cp
cp 【选项】【源文件】【目标文件】
a.拷贝文件
把passwd文件复制到tmp文件夹下#cp /etc/passwd /tmp/
查看一下tmp
把passwd文件复制到tmp下并命名为1.txt
#cp /etc/passwd /tmp/1.txt
查看一下tmp目录
复制已存在的文件会提示是否覆盖
# cp /etc/passwd /tmp/1.txt
cp:是否覆盖"/tmp/1.txt"?
不想让它询问,就用绝对路径
# /usr/bin/cp /etc/passwd /tmp/1.txt
b.拷贝目录
cp -r 源目录 目标目录xmlinux目录
xm目录
把xmlinux目录拷贝到xm目录下
# cp -r /tmp/xmlinux/ /tmp/xm1/
再次复制,会提示是否覆盖
2.12 mv命令
a.移动文件
在同一目录下就是改名字
# mv 1.txt 2.txt
把root目录下的1.txt移动到tmp目录下
#mv 1.txt /tmp
如果1.txt 已存在则提示是否覆盖
按下n表示不移动文件,这一点和windows不一样
b.移动目录
1.把tmp下的xm目录移动到根目录下2.把一个目录移动到不存在的目录,则会移动到该路径并改目录名字
3.若把一个目录移动到已经存在的目录里则提示是否覆盖,但是只有目标目录是空目录才可以覆盖
下图中,我把/xm2/xmlinux删空之后才可以把/tmp/xmlinux移动过来
2.13 文档查看cat/more/less/head/tail
1.cat 查看文件内容
# 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
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
-A 显示所有字符 (下面的多了个$)
# cat -A /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$
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin$
sync:x:5:0:sync:/sbin:/bin/sync$
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown$
halt:x:7:0:halt:/sbin:/sbin/halt$
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin$
operator:x:11:0:operator:/root:/sbin/nologin$
games:x:12:100:games:/usr/games:/sbin/nologin$
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin$
nobody:x:99:99:Nobody:/:/sbin/nologin$
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin$
dbus:x:81:81:System message bus:/:/sbin/nologin$
polkitd:x:999:997:User for polkitd:/:/sbin/nologin$
postfix:x:89:89::/var/spool/postfix:/sbin/nologin$
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin$
chrony:x:998:996::/var/lib/chrony:/sbin/nologin$
-n显示行号
# cat -n /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
10 operator:x:11:0:operator:/root:/sbin/nologin
11 games:x:12:100:games:/usr/games:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
13 nobody:x:99:99:Nobody:/:/sbin/nologin
14 systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
15 dbus:x:81:81:System message bus:/:/sbin/nologin
16 polkitd:x:999:997:User for polkitd:/:/sbin/nologin
17 postfix:x:89:89::/var/spool/postfix:/sbin/nologin
18 sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
19 chrony:x:998:996::/var/lib/chrony:/sbin/nologin
2.more
先补充一点其他知识
把/etc/passwd追加到2.txt中
# cat /etc/passwd >>2.txt
查看一个文件的行数
# wc -l 2.txt
152 2.txt
用more查看2.txt
#more 2.txt
按空格往下翻页,翻到最后自动退出命令
CTRL+B 往上翻页
3.less
用less查看2.txt
# less 2.txt
空格键或CTRL+F往下翻页
CTRL+B 往前翻页
同时也支持方向键上下查看
看完后需要按q键退出
/ +字符串可以从前往后进行搜索 结果高亮显示
/sh
n键往下看
shift+n 往上看
?+字符串 从后往前搜索并高亮显示
?root
同样的 n键往下看
shfit+n往上看
字母g 定位到行首
G 定位到末尾
4.head
head 查看一个文件头10行
# head 2.txt
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
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
-n 指定行数
# head -n 2 2.txt
5.tail
查看文件的后10行
# head -n 2 2.txt
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[[email protected] ~]# tail 2.txt
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
-n 指定要显示的行数
-f 经常用来查看个动态的文件 看日志会用到
#tail -f 2.txt