预习笔记和直播笔记
预习笔记
2.1-2.2 系统目录结构
根下目录各项功能
/bin 普通用户
/sbin root用户
/boot 系统启动相关文件
/dev 设备文件
/etc 系统配置文件
/home 用户加目录文件
/lib/ /lib64/ 系统库文件
ldd / 查询依赖关系命令
/media 媒介目录(默认空) 如U盘
/mnt 临时挂载的目录(默认空) 如硬盘 光驱
/opt 空目录
/proc 系统启动的进程
/root root用户的家目录
/run 进程临时文件
/srv 服务产生的文件(空)
/sys 系统内核相关文件
/tmp 系统临时目录(任何用户)
/usr 用户文件
/var 存储信息
ls(list) 列取系统目录和文件
/home 普通用户 /root 根目录
- 根下目录
tree命令安装及使用命令
yum install -y tree tree 安装
tree --hep 显示常用选项
man 显示文件的帮助文档
tree -L 2 显示二层文档
要求:必须熟知根下各项目录功能
2.3 ls 命令
ls下常用命令详解
ls -l ls-lh 文件详细信息
ls -i ino 号
ls -a 查看目录所有隐藏文件 . 当前文档
ls -t 如ls -lta 按时间排序
ls -d 如ls -ld 只列根目录本身
man ls ls所有命令
ls -h 变换单位
ll=ls -l 缩写
which xx 查看别名
2.4 文件类型
文件类型详细解释
ls -a 查看目录所有隐藏文件
第一列第一位表示文件类型
d 目录
c 字符串设备
l 软连接文件
b 光盘 磁盘
s 通信(进程 服务)
软连接文件示例
普通文件或二进制 普通文件可使用cat查看
2.5 alias 命令
alias自定义命令 取消命令
alias命令是命令加选项的组合形成的一个新命令
which xx 查看别名
alias 显示系统内所有有别名
alias xx=命令 自定义命令别名
unalias xx 取消自定义别名
2.6 相对和绝对路径
相对和绝对路径的概念
绝对路径 根开始的
相对路径 相对当前目录位置(不是以根开头的路径)
pwd 查看现在目录位置
cd(change directory) 进入目录
2.7 cd命令
cd及cd扩展命令
cd(change directorry) 进入目录
cd - 上次所在的目录(可来回切换目录)
cd ~ 用户主目录
cd .. 进入到上一级目录
2.8 创建和删除目录mkdir rmdir
创建及删除目录的用法 及目录级联增减
mkdir (make directory) 创建一个目录
mkdir -p /root/1/2/3/ 创建一连串目录路径 同时创建1、2、3
mkdir -pv 创建一连串目录路径 可视化过程
rmdir(remove directory) 移除一个目录(必须为空)
touch 创建一个空白文件
rmdir -p 删除级联目录
[root@dazhou ~]# mkdir /tmp/dazhou
[root@dazhou ~]# ls /tmp
dazhou vmware-root_5343-4147555858
ks-script-IJMr3S vmware-root_5350-3099801066
systemd-private-157c75844fbb4137b91db636c05c1901-chronyd.service-0fude3 vmware-root_5351-4147424820
systemd-private-e7780db7e8fa4c9f81681f0632a63c24-chronyd.service-JYdQsb vmware-root_5365-4122847654
vmware-root_5318-3100325330 vmware-root_5368-3100325363
vmware-root_5334-3133354946 yum.log
[root@dazhou ~]# mkdir -p /tmp/dazhou/1/2/
[root@dazhou ~]# tree -L 5 /tmp/
/tmp/
├── dazhou
│ └── 1
│ └── 2
├── ks-script-IJMr3S
├── systemd-private-157c75844fbb4137b91db636c05c1901-chronyd.service-0fude3
│ └── tmp
├── systemd-private-e7780db7e8fa4c9f81681f0632a63c24-chronyd.service-JYdQsb
│ └── tmp
├── vmware-root_5318-3100325330
├── vmware-root_5334-3133354946
├── vmware-root_5343-4147555858
├── vmware-root_5350-3099801066
├── vmware-root_5351-4147424820
├── vmware-root_5365-4122847654
├── vmware-root_5368-3100325363
└── yum.log
[root@dazhou ~]# mkdir -pv /tmp/dazhou/2/3/4
mkdir: 已创建目录 "/tmp/dazhou/2"
mkdir: 已创建目录 "/tmp/dazhou/2/3"
mkdir: 已创建目录 "/tmp/dazhou/2/3/4"
[root@dazhou ~]# rmdir -pv /tmp/dazhou/2/3/4
rmdir: 正在删除目录 "/tmp/dazhou/2/3/4"
rmdir: 正在删除目录 "/tmp/dazhou/2/3"
rmdir: 正在删除目录 "/tmp/dazhou/2"
rmdir: 正在删除目录 "/tmp/dazhou"
rmdir: 删除目录 "/tmp/dazhou" 失败: 目录非空
2.9 rm命令
删除、强制删除命令使用和扩展
rm (remove) 可删除文件、非空目录
rm -f 强制删除文件、非空目录(提示)
history 最近敲过的所有命令
rm -r 删除文件、非空目录
rm -rf 强制删除文件、非空目录 (不提示)
! tree 最近一次tree命令
rm -rfv 强制删除文件、非空目录 显示过程
rm命令示例
[root@dazhou ~]# rm -r /tmp/dazhou/2/3/
rm:是否进入目录"/tmp/dazhou/2/3/"? y
rm:是否删除普通空文件 "/tmp/dazhou/2/3/111.txt"?y
rm:是否删除目录 "/tmp/dazhou/2/3/"?y
[root@dazhou ~]# rm -rf /tmp/dazhou/2
[root@dazhou ~]# !tree
tree /tmp/dazhou/
/tmp/dazhou/
└── 1
└── 2
2 directories, 0 files
[root@dazhou ~]#
删除不存在的文件或者目录示例
2.10 环境变量 PATH
PATH的使用及扩展命令
PATH 环境变量( 环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。)
命令存在于
PATH=$PATH:/tmp/ 创建一个可直接使用的命令 创建一个目录
PATH环境变量 关机重启后不生效
永久生效方法:
vi /etc/profile 然后添加命令 开机打开终端每次加载命令
编辑模式下 dd 快速删除
2.11cp命令 拷贝
cp拷贝命令的格式及拷贝目录命令
拷贝 copy(拷贝原文件成目标文件)
cp格式:cp 源文件或源目录 目标文件或目标目录
cp -r 目录至拷贝目录
cp命令 目录都加 /
!$上一条命令的最后一个参数
which 显示别名 详细命令
示例
[root@dazhou ~]# which cp
alias cp='cp -i'
/usr/bin/cp
[root@dazhou ~]# which rm
alias rm='rm -i'
/usr/bin/rm
免问拷贝
[root@dazhou ~]# /usr/bin/cp /etc/passwd /tmp/dazhou/1.txt
[root@dazhou ~]#
文件拷贝会问 目录不会问
[root@dazhou ~]# cp -r /tmp/dazhou/ /tmp/dazhou2/
[root@dazhou ~]# tree /tmp/
/tmp/
├── dazhou
│ ├── 1
│ │ └── 2
│ ├── 1.txt
│ └── 2
├── dazhou2
│ └── dazhou
│ ├── 1
│ │ └── 2
│ ├── 1.txt
│ └── 2
2.12mv
mv命令 :移动、改名
mv(move) 移动文件
同一目录下 mv 源文件 改后名称 更改文件名
[root@dazhou dazhou]# tree !$
tree /tmp/dazhou
/tmp/dazhou
├── 1
│ └── 2
├── 1.txt
└── 2
3 directories, 1 file
[root@dazhou dazhou]# mv 1.txt 111.txt
[root@dazhou dazhou]# tree /tmp/dazhou
/tmp/dazhou
├── 1
│ └── 2
├── 111.txt
└── 2
3 directories, 1 file
mv x xx/xxx 将x移动到xx下并且改名xxx
[root@dazhou dazhou]# mv 111.txt /root/2.txt
[root@dazhou dazhou]# ls
1 2
[root@dazhou dazhou]# ls /root/
2.txt anaconda-ks.cfg
/usr/bin/mv x xx/直接移动覆盖文件 不询问
[root@dazhou ~]# mv 2.txt /tmp/dazhou
mv:是否覆盖"/tmp/dazhou/2.txt"? y
[root@dazhou ~]# /usr/bin/mv 2.txt /tmp/dazhou
[root@dazhou ~]# ls
anaconda-ks.cfg
[root@dazhou ~]#
特殊用法:移动目录 目标是目录且不存在其实是改名
[root@dazhou tmp]# ls
dazhou vmware-root_5343-4147555858
dazhou2 vmware-root_5350-3099801066
ks-script-IJMr3S vmware-root_5351-4147424820
systemd-private-157c75844fbb4137b91db636c05c1901-chronyd.service-0fude3 vmware-root_5365-4122847654
systemd-private-e7780db7e8fa4c9f81681f0632a63c24-chronyd.service-JYdQsb vmware-root_5368-3100325363
vmware-root_5318-3100325330 yum.log
vmware-root_5334-3133354946
[root@dazhou tmp]# mv dazhou/ dazhou5/
[root@dazhou tmp]# ls
dazhou2 vmware-root_5343-4147555858
dazhou5 vmware-root_5350-3099801066
ks-script-IJMr3S vmware-root_5351-4147424820
systemd-private-157c75844fbb4137b91db636c05c1901-chronyd.service-0fude3 vmware-root_5365-4122847654
systemd-private-e7780db7e8fa4c9f81681f0632a63c24-chronyd.service-JYdQsb vmware-root_5368-3100325363
vmware-root_5318-3100325330 yum.log
vmware-root_5334-3133354946
[root@dazhou tmp]#
2.13 文档查看cat_more_less_head_tai
查看 追加 搜索 定位搜索 动态显示 文档
cat用法及示例
cat 查看文件内容
tac 倒序查看文件内容
cat -A 查看文件所有字符
cat -n 查看的同时显示行号
cat xx>>xxx 将xx文件内容追加到xxx里
[root@dazhou tmp]# cat /etc/passwd >> /tmp/dazhou5/111.txt
[root@dazhou tmp]# cat dazhou5/111.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
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:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
dazhou:x:1000:1000::/home/dazhou:/bin/bash
xiaoli:x:1001:1001::/home/xiaoli:/bin/bash
wc -lxx 查看xx文件多少行
[root@dazhou tmp]# wc -l dazhou5/111.txt
21 dazhou5/111.txt
[root@dazhou tmp]#
more 查看文件内容(一屏)
空格或者ctrl f往下看 ctrl b 往上看
less 查看文件内容(一屏)
支持上下方向键 最后q退出
less下
/ x 从前往后搜索x(shif n往前看x字符 n 下一条x字符)
? x 从后往前搜索x(shif n往后看x字符 n 前一条x字符)
shif g (大写G)定位行尾 g 定位行首
head
head 文件 查看文件的头10行
head -n 文件 指定查看文件头几行
tail
tail 文件 查看文件的尾10行
tail -n 文件 指定查看文件尾几行
tail -f 文件 动态显示文件内容
[root@dazhou tmp]# tail -f dazhou5/111.txt
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:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
dazhou:x:1000:1000::/home/dazhou:/bin/bash
xiaoli:x:1001:1001::/home/xiaoli:/bin/bash
2.14 文件或目录权限chmod
权限更改
批量更改权限
指定所有者、用户组、其他用户组增减r、w、x权限
一个文件有三个权限位
[root@dazhou ~]# ll
总用量 4
-rw-r--r--. 1 root root 0 3月 18 12:47 2.txt
-rw-------. 1 root root 1418 3月 14 19:34 anaconda-ks.cfg
[root@dazhou ~]#
前三位rwx 所有者是否可读可写可执行
中三位rwx用户组是否可读可写可执行 后三位rwx
除了所有者、用户组其他用户是否可读可写可执行
权限用数字代替 r=4 w=2 x=1
[root@dazhou ~]# r=4 w=2 x=1 rwx=7 rw-=6 --x=1 rw-r--r--=644
chmod=change mode 更改权限
chmod 700 文件 更改所有者权限
[root@dazhou ~]# chmod 700 2.txt
[root@dazhou ~]# ll 2.txt
-rwx------. 1 root root 0 3月 18 12:47 2.txt
[root@dazhou ~]#
最后一位. 说明文件受制于SElinux
批量更改目录及子目录权限
chmod -R 770 目录 将目录下子目录 子文件权限批量更改为770
[root@dazhou tmp]# ll dazhou1
总用量 0
-rw-r--r--. 1 root root 0 3月 18 12:57 1.txt
[root@dazhou tmp]# chmod -R 770 dazhou1
[root@dazhou tmp]# ll dazhou1/1.txt
-rwxrwx---. 1 root root 0 3月 18 12:57 dazhou1/1.txt
[root@dazhou tmp]#
另一种更改权命令
chmod u=,g=,o= 文件 也是更改权限
[root@dazhou tmp]# chmod u=rwx,g=r,o=rx dazhou1
[root@dazhou tmp]# ll /tmp/
/tmp/:
总用量 4
drwxr--r-x. 2 root root 19 3月 18 12:57 dazhou1
所有权限位置都加减r、w、x(也可某个权限位)
[root@dazhou tmp]# chmod a+x dazhou1
[root@dazhou tmp]# ls -ld dazhou1/
drwxr-xr-x. 2 root root 19 3月 18 12:57 dazhou1/
[root@dazhou tmp]# chmod a-x dazhou1
[root@dazhou tmp]# ls -ld dazhou1/
drw-r--r--. 2 root root 19 3月 18 12:57 dazhou1/
[root@dazhou tmp]#
2.15更改所有者和所属组chown
更改文件所有者及用户组
更改文件及目录下子文件所有者及用户组
- chown=change owner 更改所有者、所属组
更改所属者
chwon 用户 文件 将某文件更改为某用户所有
[root@dazhou tmp]# chown dazhou /tmp/yum.log
[root@dazhou tmp]# ls /tmp/yum.log
/tmp/yum.log
[root@dazhou tmp]# ll /tmp/yum.log
-rw-------. 1 dazhou root 0 3月 14 19:27 /tmp/yum.log
[root@dazhou tmp]#
更改所属组
chgrp 组 文件 将某文件更改为某所属组
[root@dazhou tmp]# chgrp dazhou /tmp/yum.log
[root@dazhou tmp]# ll /tmp/yum.log
-rw-------. 1 dazhou dazhou 0 3月 14 19:27 /tmp/yum.log
更改所属组和所属者
chown 用户:组 文件 将某文件更改所有者和所属组
[root@dazhou tmp]# chown dazhou:xiaoli /tmp/yum.log
[root@dazhou tmp]# ll /tmp/yum.log
-rw-------. 1 dazhou xiaoli 0 3月 14 19:27 /tmp/yum.log
[root@dazhou tmp]#
也可只改所属组
[root@dazhou tmp]# chown :xiaoli /tmp/yum.log
[root@dazhou tmp]# ll /tmp/yum.log
-rw-------. 1 dazhou xiaoli 0 3月 14 19:27 /tmp/yum.log
[root@dazhou tmp]#
批量更改目录下及子目录子文件的所属者 所属组
chown -R 所属者:所属组 文件 更改其文件及目录下子目录或者文件权限
[root@dazhou tmp]# chown -R dazhou:xiaoli /tmp/dazhou1
[root@dazhou tmp]# ll /tmp/dazhou1
总用量 0
-rwxrwx---. 1 dazhou xiaoli 0 3月 18 12:57 1.txt
[root@dazhou tmp]# ll /tmp/
总用量 4
drw-r--r--. 2 dazhou xiaoli 19 3月 18 12:57 dazhou1
2.16 umask
文件、组默认权限权限组更改算法
默认创建文件权限644 组755
[root@dazhou tmp]# touch dazhou1/2.txt
[root@dazhou tmp]# ll dazhou1/2.txt
-rw-r--r--. 1 root root 0 3月 18 13:22 dazhou1/2.txt
[root@dazhou tmp]#
umask 0002 更改后 原权限 权限对比
[root@dazhou tmp]# 022 644 755
[root@dazhou tmp]# 002 664 775
umask 其作用
用来决定默认的文件和默认的组的权限
文件默认权限666 组默认权限777
直播笔记
- 目录结构
http://www.apelearn.com/study_v2/linux_dir_tree.jpg - alias 别名 复杂命令简单化
- PATH 环境变量
- umask
- cp 拷贝目录到目录 加-r 左到右 右存在 拷贝到右下 不存在 就是改名字
(rsync) 类似功能 - mv 移动(剪切)
- linux下 文件 目录 都属于文件