2.1 系统目录结构
ls 用来查看目录和文件内容的
/root/.ssh/authorized_keys 密钥存放的文件,必须是这个文件,是在/etc/ssh/sshd_config是在这个配置文件下定义的。
安装tree命令 yum -y install tree
man tree可以查看使用方法
tree 命令是树状显示目录的结构
tree -L 2 / #指定最大的目录深度 也就是说只包含子目录为二层的目录
根目录下的各个目录所代表的意思:
/bin /sbin /usr/bin /usr/sbin 这些目录下都是存放用户经常使用的命令 如:tree man vi mkdir
/bin root和普通用户使用的命令
/sbin root用户使用的命令 s代表super 超级用户
/boot 系统启动相关的关键文件 grub
/dev Linux系统特有的设备文件 鼠标 键盘 光驱
/etc 系统的配置文件 经常用到的配置文件 如 网卡配置文件
/home 普通用户的家目录的文件
/lib /lib64 系统的库文件 许多命令都依赖库文件
查看命令依赖的库文件
ldd /bin/ls
centos 7 开始都是64 不存在32位了
最大的区别是识别的内存的大小
/media 媒介目录
/mnt 临时挂载的目录
/opt 额外安装的一些软件
/proc 系统启动的一些进程
/run 进程产生的一些临时文件 重启或关机就会消失
进程产生的pid 在 crond.pid这个文件里
/srv 服务产生的一些文件
/sys 系统内核产生的一些文件
/tmp 系统的临时目录
/usr 用户的一些文件会放在这个目录下面
后面学习的一些服务会放到/usr/local 下
/var
/var/log目录下存放系统相关的日志文件
/var/run 进程的pid
比较常用的一些目录
/usr/bin /usr/sbin /bin /sbin /etc /var /usr/local
2.2 ls 命令
ls -l 列出文件的详细信息
依此为 文件的权限 1 表示多少个文件使用了相同的inode root 文件的所有者root 文件的所属组 1260代表文件的大小 文件创建的时间 最后是文件名
ls -i 查看文件的inode的号
inode记录文件存在于磁盘的哪一个区域上,两个文件使用同一个inode,就意味着文件位置一样(路径不一样,名字不一样)
ls -lh
h 更加人性化的显示单位
ls -a
a 查看目录下所有隐藏文件,点开头的文件和目录
ls -ld
-d选项代表列出目录本身
找出四个相同的inode 目录
ls -lta
-t 选项按照时间顺序排序文件和目录
man ls 查看更多选项
ll 是ls -l 的别名
which ll 查看命令的路径和别名
2.3 文件类型
第一列 d代表是一个目录 减号代表是一个普通文件
绿色的代表是二进制文件无法查看,普通的文件可以用cat的命令查看
c 代表字符串设备 l代表是软链接
b代表是块设备 磁盘和光盘
s socket文件 是用来通信的 (进程与进程之间 )
2.4 alias别名
which 查看命令的路径和别名
别名是命令加选项,如果不想使用别名可以直接使用绝对路径/usr/bin/ls
alias 查看所有的别名
echo $PATH 查看PATH变量
自定义别名
alias aming ='ls lha'
取消别名
unalias aming
2.5 相对和绝对路径
从根开始的路径都是绝对路径
相对路径
相对你所在目录的路径
pwd 查看当前所在目录的路径
cd change directory cd到一个目录下
2.6 cd 命令
cd - 代表上一次所在的目录在哪里,两个目录可以来回切换
cd cd ~ 进入到当前用户的家目录
cd .. 返回目录的上一层
2.7 创建和删除目录
mkdir make directory
mkdir /tmp/aminglinux
mkdir -p 级联创建目录
-v 可视化创建目录
不能删除非空目录
touch 一个文件
rmdir -p /tmp/aminglinux/1/2 级联删除目录
2.8 rm 命令
rm remove
* 表示通配符
f 强制删除文件或目录,删除时没有任何提示
!tree 查看历史命令最近一次的命令
history 查看历史命令
-r 选项 可以级联的删除文件和目录
2.9 环境变量PATH
echo $PATH
为PATH赋值,使/tmp下 ls2的文件可以直接查看,打开新的终端就失效了
PATH=$PATH:/tmp/
使PATH永久生效:开机或者打开终端都去加载某个命令:vi /etc/profile 把这个写入到文件PATH=$PATH:/tmp/
删除变量
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
2.10 cp命令
源文件拷贝成目标文件 cp /etc/passwd /tmp/1.txt
-r 选项拷贝目录加上
/ 拷贝目录加上斜杠
tree !$ 代表上一个命令的选项
直接运行cp命令会有提问(带有-i参数),执行/usr/bin/cp,则不会提问
拷贝文件可以直接覆盖,拷贝目录会直接拷贝到目标目录下,当目标目录不存在的时候,则将原目录拷贝过来并改为新目录的名字
2.11 mv命令
移动文件,如在同一个目录则相当于该文件名字
更改文件名:
mv anaconda-ks.cfg anaconda-ks.cfg.1
移动文件并修改名字
mv 1.txt /root/2.txt
目标目录有相同文件是会提示是否覆盖,同样可以用绝对路径,避免提问
移动目录:目标目录不存在,即移动并改为目标目录名字,否则直接放入其目标目录下
2.12 文档查看 cat more less head tail
cat
查看文件内容 -A查看所有字符 行末$表示行尾结束符 -n 同时会显示行号
tac倒顺序查看文件内容
more
查看文件内容(对比cat是分屏显示 按空格显示下一页)
cat /etc/passwd >>ananonda-ks.cfg.1将passwd内容增加到ananonda-ks.cfg.1内(>>代表追加)
wc -l 查看文件行数
ctrl +b 向上翻页 ctrl+f向后翻页
less 支持方向键滚动屏幕
按q退出
可输入/加要搜索的内容进行搜索
/root 按n键向后查看其他项 shift+n向前翻看
?root 倒着查看搜索项
直接显示最后一行 shift + g
head 查看前十行 tail 查看后十行,查看动态文件 例如日志文件
查看前两行
heed -n 2
tail -f 实时查看文件
2.13 文件和目录权限chmod
九位三段
第一段 文件所有者权限
W=可写
R=可读
X=可执行
第二段 所属组
第三段 其他用户
用数字表示:r=4 w=2 x=1 rwx=7 rw-=6 --x=1 rw-r—r--=644
chmod 修改权限
chmod 700 2.txt
chmod -R 可将目录及里面的所有子文件和目录的权限更改(chmod 只能更改目录本身)
所有段加权限,减掉权限 chmod a+x aming2 chmod a-x aming2
2.14 更改所有者和所属组 chown
chown 更改所有者
查看系统有哪些用户:
cat /etc/passw
chown aming /tmp/yum.log
chgrp (change group) 更改所属组
chgrp user1 /tmp/yum.log
chown也可以一次性跟改所有者和所属组:
chown user1:yum.log
chown 还可以只更改所属组
chown root yun.log
:
-R与chmod同理,,可以改目录及所有子目录文件所属组和所有者
2.15 umask
查看系统umask值0022
umask 0002 前边0可省略 ,002
对比
022 644 755
002 664 775
777-022=755
666-022=644
如果是033呢?
进行创建文件的权限应是转换为rwx形式进行计算
第一和第二小节合并为一节了