Shell入门02 -- Linux目录结构与常见命令

目录结构

常见命令

目录操作命令
1.1 目录切换 cd
  • cd /:切换到根目录;
  • cd /usr:切换到根目录下的usr目录;
  • cd ..:切换到上一级目录;
  • cd ~:切换到home目录,也就是用户目录;
1.2目录查看 ls
  • ls:查看当前目录下的所有目录与文件;
  • ls -a:查看当前目录下的所有目录与文件(包括隐藏文件);
  • ls -l:以列表的形式查看当前目录下的所有目录与文件;
  • ls dir:查看指定目录dir下的所有目录与文件;
1.3目录的操作(增,删,改,查)
1.3.1 创建目录 mkdir
  • mkdir YanZi:在当前目录下创建一个名为YanZi的目录;
  • mkdir -p Test1/Test2:在在当前目录下创建一个名为Test1的目录,内部还有一个Test2目录,即创建多级目录,需要加-p选项参数;
1.3.2 删除目录或文件 rm
  • rm 目标文件名:删除当前目录下的目标文件;
  • rm -f 目标文件名:删除当前目录下的目标文件;
  • rm -r 目标目录名:直接删除当前目录下的目标目录,不论目标目录是否为空;
  • rm -rf 目标目录名:直接删除当前目录下的目标目录,不论目标目录是否为空;
  • rmdir 目标目录名:当前目标目录为空直接删除,当目标目录非空,不能删除会提示Directory not empty
  • rm -rf *:将当前目录下的所有目录和文件全部删除;
  • 参数-r:向下递归,不管有多少级目录,一并删除;
  • 参数-f:直接强行删除,不作任何提示的意思;
1.3.3 修改目录 mv与cp
  • mv 目录A 新目录B:将当前目录A的名称改成新的目录B的名称,即文件夹名称的修改,注意⚠️mv语法不仅可以修改目录名还可以修改文件名
  • mv 目录A 新路径:将当前目录A剪切到新路径当中去,注意⚠️mv语法不仅可以剪切目录还可以剪切文件
  • cp -r 目标目录名 新路径:将目标目录拷贝到新路径,目标目录中的所有文件与目录都会递归拷贝,-r代表递归,注意⚠️cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归
1.3.4 搜索目录 find
  • find 目标目录 -name 't*':查找目标目录下的所有以t开头的目录或文件;
文件操作命令
1.1文件的操作(增,删,改,查)
1.1.1 创建文件 touch 与 vim
  • touch aaa.txt:创建一个aaa.txt文件;
  • vim bbb.txt:若bbb.txt文件不存在会创建一个bbb.txt文件,且进入编辑模式,若bbb.txt文件存在,则直接进入编辑模式;
1.1.2 删除文件
  • rm -r 目标文件名:删除目标文件;
  • rm -rf 目标文件名:删除目标文件;
1.1.3 修改文件 vim
  • vim 目标文件名:进去目标文件的编辑模式,然后按i,可向文件中添加内容,编辑完成后按Esc退出,再按组合键shift + :,然后输入wq 保存退出;
1.1.4 查看文件 cat
  • cat 目标文件名:查看目标文件内容,只能显示最后一屏内容;
  • more 目标文件名:查看目标文件内容;
1.2文件权限修改
  • 在进行文件权限的修改之前,首先我们来详述一下Linux文件的基本属性,下图是我Mac电脑桌面上的所有目录与文件:
image.png
  • 针对脚本文件xs.sh 其所在行为:-rwxrwx---@ 1 liyanyan33 staff 49 9 29 10:05 xs.sh
  • 第一部分-rwxrwx---:这是最左侧的10个占位字符:
    • 第1个占位字符:表示文件类型-表示文件,d表示目录也就是文件夹;
    • 第2-4占位字符:表示属主(该文件的所有者)拥有该文件的权限,r表示读的权限,w表示写的权限,x表示执行的权限,-表示无对应的权限;
    • 第5-7占位字符:表示属组拥有该文件的权限,其他同上;
    • 第8-10占位字符:表示其他用户拥有该文件的权限,其他同上;
  • 第二部分 1 数字1:表示该文件链接的数量;
  • 第三部分 liyanyan33:表示该文件的属主用户名;
  • 第四部分 staff:表示该文件的属组名;
  • 第五部分 49:表示该文件的size大小;
  • 第六部分 9 29 10:05:表示该文件最近一次的修改时间;
  • 第七部分 xs.sh:文件名
  • chmod 指令可以用来修改文件的权限,从上面的描述我们知道一个文件的权限有9种,首先有执行三个权限,再分别对应属主属组其他用户,所以存在9种,对应最左侧第1-10的占位字符;
  • Linux文件属性有两种设置方法,一种是数字,一种是符号
  • 各权限的分数对照表如下:r:4 w:2 x:1
  • 每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx--- 分数则是:
  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+2+1 = 7
  • others= rwx = 4+2+1 = 7
  • 所以等一下我们设定权限的变更时,该文件的权限数字就是 777,变更权限的指令 chmod 的语法是这样的 chmod 777 xs.sh,执行之后再次查看,如下所示:
    image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容