Linux 操作笔记--基础

2022/7/26 5:22:48

本文主要是介绍Linux 操作笔记--基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1-1.文件类型

在 Linux 操作系统中,一共有 7 中文件类型,这 7 中类型是根据文件属性进行划分的,而不是根据文件后缀划分的。

  • -: 普通的文件,在 Linux 终端中没有执行权限的为白色,压缩包为红色,可执行程序为绿色字体
  • d: 目录 (directory), 在 Linux 终端中为蓝色字体,如果目录的所有权限都是开放的,有绿色的背景色
  • l: 软链接文件 (link), 相当于 windows 中的快捷方式,在 Linux 终端中为淡蓝色 (青色) 字体
  • c: 字符设备 (char), 在 Linux 终端中为黄色字体
  • b: 块设备 (block), 在 Linux 终端中为黄色字体
  • p: 管道文件 (pipe), 在 Linux 终端中为棕黄色字体
  • s: 本地套接字文件 (socket), 在 Linux 终端中为粉色字体

1-2.用户类型

在 Linux 中有三大类用户: 文件所有者 , 文件所属组用户 , 其他人 , 我们可以对同一个文件给这三种人设置不同的操作权限,用于限制用户对文件的访问。

  • 文件所有者
    Linux 中的所有的文件都有一个所有者,就是文件的主人
  • 文件所属组
    文件的主人属于哪个组,这个文件默认也就属于哪个组
    用户组中可以有多个用户,这些组中的其他用户和所有者的权限可以是不一样的
  • 其他人
    这个用户既不是文件所有者也不是文件所属组中的用户,就称之为其他人
    其他人对文件也可以拥有某些权限

1-3.文件权限

Linux 中不同的用户可以对文件拥有不同的操作权限,权限一共有四种: 读权限 , 写权限 , 执行权限 , 无权限。

  • 读权限:使用 r 表示,即: read
  • 写权限:使用 w 表示,即: write
  • 执行权限:使用 x 表示,即: excute
  • 没有任何权限:使用 - 表示

1-4.硬链接计数

硬链接计数是一个整数,如果这个数为 N (N>=1),就说明在一个或者多个目录下一共有 N 个文件,但是这 N 个文件并不占用多块磁盘空间,他们使用的是同一块,如果通过其中一个文件修改了磁盘数据,那么其他文件中的内容也就变了。每当我们给给磁盘文件创建一个硬链接(使用 ln),磁盘上就会出现一个新的文件名,硬链接计数加 1,但是这新文件并不占用任何的磁盘空间,文件名还是映射到原来的磁盘地址上。

1-5.其他属性

  • 文件大小 —> 单位是字节
  • 如果文件是目录显示为 4096, 这是目录自身大小,不包括目录中的文件大小
  • 文件日期:显示的是文件的修改日期,只要文件被更新,日期也会随之变化
  • 文件名:文件自己的名字(没啥可解释的)
    -- 如果文件类型是软连接会这样显示: link -> /root/file/test, 后边的路径表示快捷方式链接的是哪个磁盘文件

2-1.cd命令-路径切换

cd $dir_name

  • 目录名:使用相对路径 / 绝对路径都可以,该路径必须是一个有效路径

  • 特殊的目录:
    ..: 表示当前目录的上一级目录,使用 cd .. 或者 cd ../ 都可以
    . : 表示当前目录,使用 . 或者./ 都可以,cd . 不会切换目录

  • 进入家目录:
    cdcd ~cd /home/$user_name

  • 在临近的两个目录之间切换:
    cd -

2-2.ls命令--文件列表

  • ls [args] - 查看当前目录
  • ls [args] $dir_name - 查看指定目录
  • ls [args] $file_name - 查看指定文件信息
  • args 参数说明
    -a - all的意思,显示所有文件(包含隐藏文件)
    -l - list的意思,显示详细信息列表,包括:文件类型、文件所有者权限、文件所属组权限、其他人权限、硬链接计数、文件所有者、文件所属组、文件大小、文件修改时间、文件名
    例如:d rwx rwx r-x 5 user1 users 4096 Jan 15 18:00 pictures
    -h - human的意思,即命令说人话,文件大小以换算好的单位显示,更加直观
    -F - 显示目录后缀,即在目录名后面显示一个/,以示区分文件与目录表现形式

3-1. 创建

  • 创建单层目录:mkdir $new_dir_name
  • 创建多层目录:mkdir -p /home/user1/a_dir/b_dir

3-2.删除

rm [args] $[file_name or dir_name]
参数:

  • -i - 删除时进行信息提示
  • -r - recursion,递归删除,用于删除非空文件夹
  • -f - force,强制删除,无提示,直接删除且无法恢复,慎用

3-3.复制

  • 复制文件
    cp $src_file_path $dest_file_path - 目标路径文件存在则覆盖
  • 复制目录
    • cp -r $src_dir $dest_dir
      • -r,代表递归拷贝,
      • 目标路径目录不存在,则src_dir拷贝过去,命名为dest_dir目录
      • 目标路径目录存在,则拷贝到目标目录之下
    • cp A/a.txt B - 复制A目录的a.txt文件到B目录
    • cp -r A/* B - 复制A目录下的所有文件到B目录

3-4.移动

  • 文件移动
    mv a.txt B - 文件a.txt移动到目录B中
    mv A B - 目录A移动到目录B中,B必须是目录且必须存在
  • 文件改名
    mv a.txt b.txt - 同级目录中,a.txt改名为b.txt
    mv a_path b_path - a_path和b_path都存在,则覆盖b_path文件,a_path删除,剩下b_path文件


这篇关于Linux 操作笔记--基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程