Linux第二课 文件系统目录结构

ls 猎取文件 ls /下面有很多根目录,ls /root/是指用户加目录,存配置文件。比如 ls /root/.ssh/authorized_keys,这是在root的家目录下,如果想远程秘钥认证,登录普通用户,在普通用户下加一个.ssh/authorized_keysbi在这里插入图片描述

创建一个普通用户,比如useradd aming的用户,在ls /home/aming/创建.ssh/以及authorized_keys文件,home/aming/就是所建普通用户aming 的家目录,跟root是有区别的,root是在root下,而aming 是在home/aming/下。在这里插入图片描述

authorized_keys必须在.ssh/下

tree是以树形的模式显示目录,用yum命令去安装它在这里插入图片描述

输入tree命令,树状结果就会出来,如果内容太多,可以用Ctrl+c中断它,如果只想显示两层,显示根和根下面的目录,输入 tree --hep,

在这里插入图片描述如果还不直观还可以输入man 用来显示一个文件的帮助文档。

在这里插入图片描述
按任意键就会详细出来选项以及选项的含义

在这里插入图片描述
记得按q键退出,要不然命令会敲打不上。
如果就想指定二层输入tree -L 2/

bin 指软连接包括 ls /usr/bin/ 和 / usr/sbin/ 和/bin/ 和/sbin/ ^c
ls tree man vi mkdir
bin和sbin区分
普通用户 /bin/下的,/sbin/是超级用户的
boot是系统启动相关命令
grub
dev是指Linux设备文件
etc是网卡的配置文件,我在这里插入图片描述

home是用户的加目录,
lib和lib64都是库文件
输入 ldd /bin/ls 这是查找哪个命令依赖哪个库
media是一个媒介目录,ls /media/是个空目录
ls /mnt/是个空目录
ls /opt/是个空目录
ls /proc/是系统启动的进程。
run 是进程产生的文件
ls /srv/是空的,会存一些服务产生的文件
ls /sys/会存系统内核产生的文件
ls /tmp/是系统的临时文件
usr是用户的文件会放入一下,和bin、sbin 差不多
var, ls /var/log会存日志,ls /var/run/是进程的pid。
以下非常重要的目录
在这里插入图片描述

ls命令

  1. ls -l它可以把这个文件的详细信息列出来

在这里插入图片描述

rw是可以读写,前面的root是指用户,后面的root是指用户组,组下面会有多个用户,1422就是这个文件的大小,单位是(输入ls -lh anaconda-ks.cfg,其中lh是指表示更人性化的显示)字节B,表示1422B,5月6 05:53是指文件创建的时间,最后是他的文件名。
ls -la,是查看这个目录下的所有隐藏的文件,点开头的就是隐藏的文件
点–就是指当前目录下,就是root目录下,

在这里插入图片描述

root前面的数字是有多少个文件使用一个i
ls -lta(t是时间的意思),以时间排排序,越早的,越在下面,越晚的越在上面。

在这里插入图片描述
数字4表示:有4个iNode号是一样的文件或目录分别是蓝色标注的:“.”、“…”、“grep”、“.ssh/…”
所以前面的数字是几,就是包括几个子目录。

在这里插入图片描述

把隐藏的都 列出来其中包括:“.”、“…”、grep、.ssh,共4个子目录,所以显示4。
其中“.”是指当前目录,“…”是指上一级目录,举个栗子.ssh/…的上级目录就是root目录

在这里插入图片描述

ls -d /root/与ls -l /root/的区别,如果不加d的情况下,他会把root下的所有字目录全部列出,加了d,只会列本身。

在这里插入图片描述

可以用man ls去看

ls常用的命令,-l -i -a -t -h -d常用的,其中l是指详细信息,i是指iNode,a是指全部的包括隐藏的,t是指按时间顺序排序,h是指在-l显示文件大小的情况下自动变化单位比如K、M,d是指S是指只列目录本身

ll和ls -l是一样的效果,就是它的别名
在这里插入图片描述

文件类型

ls -l
下面dr表示文件的类型目录,“-”表示普通文件
在这里插入图片描述

ls -l /dev/,黄色的表示c( c表示字符串设备,鼠标键盘都是那种黄色的)
在这里插入图片描述
粉绿色是指软连接,真正的文件是在粉绿色文字后面。
软连接是系统的快捷方式
光盘磁盘全是b文件(就是b开头的)
find / -type s 是用来查看指定文件的
在这里插入图片描述

d 是目录,-是普通文件,c是字符串设备,b:光盘、磁盘,s,l软连接文件

alias命令

lls是有别名的,可以用which ls或者which ll来查看别名,还可以用which来看其他命令which man、which yum
如果不想使用别名就可以使用绝对路径,这样alias ll='ls -l --color=auto’就不带颜色color了
查看系统哪些有别名在这里插入图片描述

如果不知道一个命令的真实命令可以用which去查看
可以用alias查看系统里所有命令的别名,
which是查看一个文件所在的路径的
PATH系统环境的变量名,可以用 echo$PATH变量的内容,

在这里插入图片描述
做一个别名,输入alias aming=“ls -lha”,再运行aming 就会看到生效了,
用which aming查一下

在这里插入图片描述
它实际上是“ls -lha”,这才是真正的命令。
取消别名–》输入unalias aming,再输入aming时,会提示未找到命令

在这里插入图片描述

相对路径和绝对路径

任何一个文件都会有一个从根开始的路径,
例如ls /root/anaconda-ks.cfg这个是root下的文件,都是有路径
从根开始就是绝对路径,相对路径就是相对你所在位置的路径,相对当前的路径来找。
检查当前目录下的路径,

在这里插入图片描述
cd命令就是chang directory目录的意思。它是cd到指定目录下
pwd查看当前所在的目录是在哪里,相对当前路径来说的

CD命令

cd是change directory目录的意思,是进入一个目录的命令。pwd就是查看当前所在的路径,所在的目录是在哪里,主要是针对当前目录来说的。
先输入cd /etc/sysconfig/,接着反复的输入“cd - ”命令和“pwd”命令会出现/root/和/etc/sysconfig/会交互出现。cd -表示上一次所在的目录在哪里,相当于遥控器的返回功能一样,可以实现反复交换。所以cd-就很容易进入上一次所在的目录。
在这里插入图片描述

cd后面什么都不加就进入当前用户加目录下,也就是登陆时的加目录下。比如输入cd /tmp/,然后输入cd命令,再输入pwd,就回到root的加目录下。

在这里插入图片描述
输入cd ~命令,和用户的加目录是一样的, ~ 就是用户加目录(root)
输入cd … 就会进入到上一级目录

输入cd /etc/sysconfig/network-scripts/,输入pwd命令,查看文件路径,分别输入cd …和pwd命令,然后输入cd…和pwd命令,然后输入cd…和pwd命令,( /etc/sysconfig/network-scripts/这个是3级目录)输入到做好后就会发现到根下了。

在这里插入图片描述

输入man cd,可以查看cd,有哪些用法,哪些选项。

创建和删除目录mkdir rmdir
mkdir就是make directory的缩写。
1.创建一个目录,输入mkdir /tmp/aminglinux,再输入ls -ld /tmp/aminglinux/查看这个目录的详细信息(其中ls -ld加了d表示只列出当前这个目录的详细信息)。data命令是显示时间的

在这里插入图片描述

输入mkdir /tmp/aminglinux/1/2/,会出现没有哪个文件或目录,因为只是创建了aminglinux没创建1和2
可以用-p命令,可以级联创造一串目录,输入mkdir -p /tmp/aminglinux/1/2/,就可以级联创建了!
可以分别输入ls -l /tmp/aminglinux/和ls -l /tmp/aminglinux/1/查看在这里插入图片描述

输入mkdir -pv /tmp/aminglinux/2/3/4可以看见创建目录的过程

在这里插入图片描述

删除目录命令,rmdir == remove directory (的简写)

输入rmdir /tmp/aminglinux/2,会发现删除失败,目录非空(也就是删除一个目录的前提是,这个目录是空的);再输入rmdir /tmp/aminglinux/2/3/时,发现也不能删除,因为3下面有4这个目录,需要先删除4,然后才能一级级的向上删除
创建一个文件(touch是创建文件的命令),输入touch /tmp/aminglinux/2/3/1.txt,创建后输入ls /tmp/aminglinux/2/3/(或者用ls -ld /tmp/aminglinux/2/3/)就会出现1.txt这个,也可以输入tree /tmp/aminglinux/就会出现树状的显示,更明了。

在这里插入图片描述

输入rmdir /tmp/aminglinux/2/3,发现还是删除不了,下面还是非空目录
输入rmdir /tmp/aminglinux/2/3/1.txt还是不能删除,不是目录
试一下rmdir /tmp/aminglinux/1/2/,输入ls /tmp/aminglinux/,查看发现把2删除了,而1还是存在的。
输入mkdir /tmp/aminglinux/1/2实际上已经把1和2删除了,但是aminglinux/这个目录没有删除,显示失败,目录非空(输入tree /tmp/aminglinux/就会出现树状的显示)这个命令只能删除目录,而且只是非空目录。
输入rmdir -p /tmp/aminglinux/1/2/,只要为空,它都会给删除,一般这个命令不用。这个是级联删除,比较彻底。
rm也能删除非空的目录,rm remove
比如1.txt,输入rm /tmp/aminglinux/2/3/1.txt,它会问是否删除普通空文件 /tmp/aminglinux/2/3/1.txt?输入y,表示同意。输入tree /tmp/aminglinux/查看树状结构,发现1.txt没了。

在这里插入图片描述
如果想不要让他出现提醒,可以进行设置,先把删除的文件再重新建立touch /tmp/aminglinux/2/3/1.txt,输入rm /tmp/aminglinux/2/3/ * 或者输入rm /tmp/aminglinux/2/3/.txt(后面输入表示通配,表示这个文件下的所有文件)再删除,他还会继续问,不想让他继续问,可以输入rm -f /tmp/aminglinux/2/3/1.txt,(f就是force强制的)就会强制不问了。

在这里插入图片描述
输入!tree(!意思是使用命令历史里面最近一次用tree命令开头的命令,!touch表示最近touch的一命令,可以使用上下方向键来回的找以前敲过的命令),查看树状结构发现3下面已经没有1.txt文件了。
记住 rm -f 可以强制删除一个目录。

在这里插入图片描述

rm -r 级联的删除目录文件在这里插入图片描述

级联删除实例:先是询问是否进入目录,是否删除空目录,是否删除目录,但是依然会询问在这里插入图片描述

当加上f后, 就不会再询问。在这里插入图片描述
rm -rfv /tmp/aminglinux/2/3/(用这个命令加了v就可以看到删除3 目录和1.txt的步骤了)在这里插入图片描述

rm -rfv /tmp/aminglinux/2/3/去删除一个不存在的目录或者文件时,它什么都不会提示。这是f起 的作用。在这里插入图片描述
把f加上就会提示没有这个目录在这里插入图片描述

cat命令

cat命令是查看文件内容的,tcas是与cat命令相反的,可以倒序查看文件内容。最后一行的内容与cat的第一行的一样。

是重定向的意思,反复输入cat /etc/passwd >> anaconda-ks.cfg 和 wc -l anaconda-ks.cfg命令就会发现,文件数再增加。在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值