Linux快速入门之文件操作(01)

Linux 小白快速入门 01

文章目录

    • Linux 小白快速入门 01
      • 1.文件管理命令
        • 1.1.cd命令
        • 1.2 ls命令
        • 1.3 用户类型 、文件权限
        • 1.4 创建/删除目录
        • 1.5 拷贝 / 移动 命令
        • 1.6 软/硬链接

1.文件管理命令

Linux 目录 :万物皆文件,linux系统只有文件概念\ 命令严格区分大小写

Linux快速入门之文件操作(01)_第1张图片

在 linux 中根目录的子目录结构相对是固定的 (名字固定), 不同的目录功能是也是固定的

  • bin: binary, 二进制文件目录,存储了可执行程序
  • boot: 存储了开机相关的设置
  • dev: device , 设备目录
  • etc: 配置文件目录
  • home: 存储了普通用户的家目录
  • root: root 用户的家目录
  • tmp: 临时目录,存放临时数据,重启电脑数据就被自动删除了
  • usr: unix system resource, 系统的资源目录
  • var: 存储了系统使用的一些经常会发生变化的文件, 比如:日志文件
  • lib: library, 存储了一些动态库和静态库
  • media: 挂载目录,挂载外部设备,比如:光驱,扫描仪

对于用户自己的文件,一般都是存放到自己的家目录中,也就是 /home/用户名

路径指定方式:相对路径 、 绝对路径

  • 相对路径: 相对于当前文件的路径

    ./: 代表目前所在的目录

    。。/: 代表当前目录的上一层目录

  • 绝对路径: 从系统磁盘起始节点开始描述的路径

    ​ Linux:起始节点为根目录,比如: /root/luffy/get/onepiece

1.1.cd命令

在 Linux 终端中如果想要进行工作路径的切换,需要使用 cd 命令。在进行目录的切换的时候, 我们可以使用相对路径也可以使用绝对路径。

$ cd 目录名

目录名: 使用相对路径 / 绝对路径都可以,该路径必须是一个有效路径
特殊的目录:
: 表示当前目录的上一级目录,使用 cd … 或者 cd …/ 都可以
. : 表示当前目录,使用 . 或者./ 都可以,cd . 不会切换目录

  • 进入家目录
$ cd                    # 方式1
$ cd ~                  # 方式2
$ cd /home/用户名        # 方式3
  • 临近的两个目录之间切换 (常用 cd -)
# 频繁在两个目录之间切换
$ cd -

1.2 ls命令

ls 就是 list, 打印指定的文件信息,如果是目录,显示对应目录中有哪些子文件

$ ls [args]           # 查看当前目录
$ ls [args] 目录名 	# 查看指定目录
$ ls [args] 文件名 	# 查看某个文件的信息

小白:直接使用 ls 或 ll

  • 显示所有文件
# 查看root家目录下所有非隐藏文件
[root@VM-8-14-centos ~]# ls
ace  luffy

# 查看root家目录下所有文件 (隐藏 + 非隐藏)
[root@VM-8-14-centos ~]# ls -a
.   ace            .bash_logout   .bashrc  .config  .lesshst  .pip  .pydistutils.cfg 
..  .bash_history  .bash_profile  .cache   .cshrc   luffy     .pki  .ssh  .viminfo

起始很简单只需要在文件名前边加一个点 (.) 文件就具有隐藏属性了, 例如: .demo, .a.txt

  • 显示文件详细信息

[^]: 给 ls 添加 -l 参数(就是 list 的意思)我们就可以看到文件的详细信息

# 显示文件的详细信息
robin@OS:~$ ls -l
total 204
-rw-rw-r--  1 robin robin    268 Mar 22 17:32 a.c
drwxrwxr-x  2 robin robin   4096 Aug  4  2019 config
-rw-r--r--  1 robin robin 129487 Dec 25 11:28 english.txt
drwxrwxr-x  4 robin robin   4096 Jan 15 17:48 libevent
drwxrwxr-x 17 robin robin   4096 Apr 13 22:42 Linux
drwxrwxr-x  8 robin robin   4096 Feb  5 16:57 luffy
-rw-r--r--  1 robin robin   2223 Mar  2 14:39 main.cpp
-rw-rw-r--  1 robin robin   2167 Dec  1 22:41 mysql_test.c
drwxrwxr-x  9 robin robin   4096 Mar 26 19:19 network
-rw-r--r--  1 robin robin   1406 Mar  2 20:18 occi.cpp

# 文件详细信息介绍
 d      rwx       rwx     r-x     5    robin    robin    4096    Jan 13 17:35    udp
 |       |         |       |      |      |        |       |          |	          |
文件    文件所    文件所   其他人 硬链接  文件     文件   文件大小  文件修改时间     文件名
类型   有者权限  属组权限  权限   计数   所有者   所属组    



1.3 用户类型 、文件权限

Linux有三类用户 : 文件所有者 、 文件所属组用户 、 其他人 对同一文件分别对不同用户限制不同操作权限。

( 假如你写了一个项目书 ,你是文件所有者 ,你的同事是文件所属组 , 其他公司的人是其他人

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

文件权限一共有四种: 读权限 r 、 写权限 w 、 执行权限 x、 无权限 -

   -           rwx          rw-          r--  1 robin robin   2218 Dec  2 17:02 app
   |            |            |            |
文件类型 /文件所有 /文件所属  /其他人权限
                 者权限        组权限

小节:

  1. 文件所有者对文件 :可读、可写、可执行
  2. 文件所属组用户对文件 :可读、可写
  3. 其他人对文件:可读

1.4 创建/删除目录

创建命令

//创建单层文件夹
mkdir 文件目录名

//创建多层目录   添加 -p
mkdir  a/b/c/d -p        

删除命令

rmdir 目录名     //此命令少用

// 如果删除的目录为多层结构 需要添加 -r 表示迭代
rm  目录名  -r
rm  目录名  -i 删除时给提示
rm  目录名  -f 强制删除

小节: 删除操作尽量使用 rm 命令 ,删除多层目录添加 -r , rmdir有点垃圾

1.5 拷贝 / 移动 命令

拷贝命令 cp

拷贝文件 : 如文件不存在及创建新文件 / 文件存在及覆盖

cp  拷贝的文件   获得的文件

拷贝目录: 如目录不存在及创建新目录 / 目录被拷贝新目录

cp  目录A  目录B -r

cp   目录A/hello.cpp    目录B     #拷贝A中hello.cpp 到B中
cp   目录A/*    目录B                  #拷贝A中所有文件   到B中

移动命令 mv

mv命令不仅可以移动文件 ,也能给文件改名

文件/目录移动

mv  A文件或目录   B目录     #B目录必须存在

文件/目录改名

#A文件或目录  ,B原本不存在
mv  A   B     #运行后A被删除 只存在B

1.6 软/硬链接

链接分为:软链接 、 硬链接

简单理解 :(常用)软链接 类似快捷方式 、 硬链接 为文件的别名,磁盘中同一地址

软链接

ln -s  源文件路径  软链接文件的名字(可带路径)
# 给 onepiece.txt 创建软连接, 放到子目录 get 中
[root@VM-8-14-centos ~/luffy]# ln -s /root/luffy/onepiece.txt    get/link.lnk  

注意: 命令中的源文件建议使用绝对路劲 ,保障创建出的软链接在任意目录中移动都可访问到链接的源文件

硬链接

ln  源文件路径  硬链接文件的名字(可带路径)

# 创建硬链接文件, 放到子目录中
[root@VM-8-14-centos ~/luffy]# ln onepiece.txt get/link.txt
``

[root@VM-8-14-centos ~/luffy]# ln -s /root/luffy/onepiece.txt    get/link.lnk  

注意 命令中的源文件建议使用绝对路劲 ,保障创建出的软链接在任意目录中移动都可访问到链接的源文件

推荐大丙老师

你可能感兴趣的:(Linux,操作系统,linux,运维,服务器)