Linux 124课程 2从命令行管理文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 124课程 2从命令行管理文件相关的知识,希望对你有一定的参考价值。

  1. 文件目录
    技术分享图片

/ 代表根目录 整个系统全部在根目录中
/boot 存放启动配置文件 建议,单独做成一个分区
/dev 设备文件目录 比如:光盘、硬盘
/etc 存放所有的配置文件
/home 普通用户的家目录文件
/root 管理所在的家目录
/run 存放动态文件(不持久运行的应用程序数据),关机就清空文件
/tmp 存放临时文件,一个星期以后可能就没有了
/var 存放动态数据文件 比如 :/var/log/messages 日志文件
/usr 存放已安装的软件程序和库文件
/usr/bin 存放普通用户的命令
/usr/sbin 存放管理员的命令
/usr/local 存放自定义软件

which mkdir
/usr/bin/mkdir
Which usesradd
/usr/sbin/mkdir

/proc 存放内核参数以及硬件参数 比如:cpu 、内存相关信息
Cat /proc/cupinfo 查看CPU信息
Cat /proc/meminfo 查看CPU信息

2.pwd 查看所在目录
cd / 切换到根目录下

如何查看所在的目录路径
  pwd 查看目录
  whatis pwd
  
3.cd切换目录
  cd 目录
  
  相对路径:路径是以当前路径为起点
  . 表示当前目录下
  .. 表示上一级目录
  ~ 表示返回自己的家目录 相当于输入cd
  绝对路径:永远以根作为路径起点
  
比如: cd /home/student 以根为起点,这是一个绝对路径
Cd ../home/student 相对路径

Cd ./student 进入当前目录下的/student目录 “./” 可以省略,直接输入student进入

  1. ls 列出当前目录下的所有内容
    -l 以长格式显示
    -a 显示所有文件包括隐藏文件和. 以及.. 包括. /. ./.bash 隐藏文件
    -A 显示所有文件包括隐藏文件
    -d 显示所有目录文件,一般和-l 结合使用
    Ls -ld 显示当前目录的长文件格式
    -h 以K/M/G为单位显示信息 一般和-l 结合使用
    -R 递归显示

  2. touch 创建空文件(可以刷新文件的时间戳
      touch file1 创建file1文件
      
      echo 123 echo hello world > file1
      Cat file1 查看file1中的内容
      Ls -l file1 可以看见时间戳修改
      
      touch file1 时间戳会修改,文件中的内容不会修改
      Touch file1 file2 file3 创建多个文件
      Touch file{5..9 }

  3. mkdir 创建一个空目录
    -p 创建多级目录 如果之前没有目录也可以创建
      Mkdir dir1 dir2 dir3
      Mkdir dir{5..9}
      
      Mkdir -p a/b/c 创建c目录,如果没有b,就先创建b,
      Ls -R a ls递归查看
      
  4. mv 移动文件、目录/重命名(路径相同的移动)
    (移动文件时,默认保留原文件的权限)
      Mv file1 dir1/
      Mv ../file2 ../dir2
      Mv file5 file5.old
      Mv file9 dir9/file99
      mv a dir1/
      
  5. cp 复制
    -i 覆盖复制时有提示信息
      -f 强制覆盖
      -r 递归复制
      -p 保留原属性
      
    cp也可以重命名,相同目标下做复制,可以重命名
    Dir1中存在文件和多级目录
    Cp dir1 dir2/ 无法复制
    Cp -r dir1 dir2/ 递归复制

Cp 命令在系统中默认添加-i选项,所以会自动提醒是否覆盖原文件
alias 查看系统当中的命令别名

Cp -rfp dir1 dir2/
  

  1. rm/rmdir 删除目录、文件 rm 一定要慎用

  Rmdir 删除空目录
  
  Rm 删除文件或目录
-i 覆盖复制时有提示信息
  -f 强制覆盖
  -r 递归复制

Rm dir1

  Rm file4
  Rm -f file6 不需要询问是否删除
  Rm -f -r dir1 强制递归删除文件和目录
  Rm -r dir2 提示是否删除

  Rm -rf / root/dir2

  1. 文件通配: 路径名扩展

Mkdir dira
Dir1,dir2,dir3,dir4,dir5,file7,file8
需要将dir1,dir2,dir3 这些数字的文件夹显示出来
  
  特殊字符分类:
  元字符 (后面介绍)
  重定向 > >>
  管道符 |

  通配符
   匹配0个或多个字符
  ? 匹配任意一个字符
  [ list] 匹配list中的任意一个字符
  [ !list] 匹配除list以外的的任意一个字符
  {string1,string2,string3,...} 匹配字符创
  [[:digit:]] 外面表示匹配一个字符,里面表示匹配一个数字
  [[:lower:]] 表示匹配小写字母
  [[:upper:]] 表示匹配大写字母
  [[:alum:]] 表示匹配数字或下划线
  [[:space:]] 表示匹配空格
  [[:punct:]] 表示”.”
  
  
ls -ld dir
匹配dir的文件夹
Mkdir diraa

Ls -ld dir? 匹配dir后面一个字符的文件夹
Ls -ld dir[0-9] 0-9中的一个字符匹配出来

Mkdir dir{b..f} 创建b-f的文件夹
Ls -ld dir[a-z] a-z中的一个字符匹配出来
Ls -ld dir[!a-z] 除了a-z中的一个字符匹配出来

Touch file{aa,bb,cc,dd,ee,ff}
Ll file {aa,bb,cc,ff}

Ls -ld dir[[:digit:]] 显示数字 Ls -ld dir[0-9]

Touch file{A..E}
Ls -ld dir[A-Z]
Ls -ld dir[a-z]

  (3)转义符:
  ‘’ 硬转义
  “” 软转义
  \ 转义
  
  
  Touch xx yy
  Touch “xx yy”
  Touch’xx yy’
  
  a=1 定义变量
  echo a 输出a
  Echo $a 输出变量a
  Echo “$a” 1 “” 如果出现了特殊符号,当做特殊字符输出
  Echo ‘$a’ $a ‘’ 如果出现了特殊符号,当做普通字符输出
  Echo “\$a” $a 当做普通字符输出
  Echo ‘\$a’ \$a

以上是关于Linux 124课程 2从命令行管理文件的主要内容,如果未能解决你的问题,请参考以下文章

Linux 124课程 15使用虚拟化系统

RH124-02 通过命令管理文件和目录

RH124 章2 命令行管理文件

Linux 124课程 4 创建,查看,编辑文件

Linux 124课程 13安装和升级软件包

Linux 124课程 3 红帽企业Linux获得帮助