Linux(二)——文件管理

- ls命令

ls是最常被使用到的Linux命令之一,来自于英文单词list的缩写,也正如list单词的英文意思,其功能是列举出指定目录下的文件名称及其属性

  • 输出当前目录中的文件(默认不含隐藏文件)

ls

root@zhuolisu-virtual-machine:~# ls
700     视频  下载  Firefox_wallpaper.png  heihei          mine   test.sh
公共的  图片  音乐  he                     install.sh      my.sh  www.linuxprobe.com
模板    文档  桌面  hei                    LinuxProbe.pdf  snap   yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
  • 输出当前目录中的文件(含隐藏文件)

ls -a

root@zhuolisu-virtual-machine:~# ls -a
.       视频  桌面           .dbus                  install.sh      .my.html.swp  snap          .wget-hsts
..      图片  .bash_history  Firefox_wallpaper.png  LinuxProbe.pdf  my.sh         .ssh          www.linuxprobe.com
700     文档  .bashrc        he                     .local          .pip          test.sh       .Xauthority
公共的  下载  .cache         hei                    mine            .profile      .thunderbird  yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
模板    音乐  .config        heihei                 .mozilla        .rpmdb        .viminfo
  • 输出文件的长格式,包含属性详情信息

ls -l

root@zhuolisu-virtual-machine:~# ls -l
总用量 19456
drwxr-xr-x  2 root root     4096  614 11:45 700
drwxr-xr-x  2 root root     4096  615 21:08 公共的
drwxr-xr-x  2 root root     4096  615 21:08 模板
drwxr-xr-x  2 root root     4096  615 21:08 视频
drwxr-xr-x  2 root root     4096  615 21:08 图片
# 部分信息省略
  • 输出指定目录中的文件列表

ls 指定目录

root@zhuolisu-virtual-machine:~# ls /home
www  zhuolisu
  • 输出文件名称及inode属性块号码

每个inode都有一个号码,操作系统用inode号码来识别不同的文件
ls -i

root@zhuolisu-virtual-machine:/home# ls -i  
816520 www  812043 zhuolisu
  • 搭配通配符输出指定目录中所有以S结尾文件名称

ls 通配符下的目标目录 -l

root@zhuolisu-virtual-machine:/home# ls /root/*sh -l
-rw-r--r-- 1 root root 29450  531 14:22 /root/install.sh
-rw-r--r-- 1 root root 29450  531 14:22 /root/my.sh
-rwxr-xr-x 1 root root   309  616 09:32 /root/test.sh
  • 依据文件大小进行排序,输出指定目录中文件属性详情信息

ls -Sl 目标目录

root@zhuolisu-virtual-machine:/home# ls -Sl /root
总用量 19456
-rw-r--r--  1 root root 17676281  615 15:24 LinuxProbe.pdf
-rw-r--r--  1 root root  2076519  616 08:37 Firefox_wallpaper.png
-rw-r--r--  1 root root    29450  531 14:22 install.sh
# 部分已经省略

- ll命令

ll命令的功能是显示指定文件或目录的详细属性信息,实际它不是一个真实存在的命令文件,而是ls -l --color=auto的别名而已。ll命令可以默认列出当前目录内文件的详细属性信息,包含权限、所属、修改时间以及容量占用大小等等信息

  • 显示当前目录内文件详细属性信息

ll

root@zhuolisu-virtual-machine:/home# ll
总用量 16
drwxr-xr-x  4 root     root     4096  610 15:45 ./
drwxr-xr-x 22 root     root     4096  614 11:40 ../
drwxr-xr-x  2 www      www      4096  610 15:45 www/
drwxr-x--- 19 zhuolisu zhuolisu 4096  615 09:58 zhuolisu/
  • 以文件上次被修改的时间排序,显示当前目录内文件详细属性信息

ll -t

root@zhuolisu-virtual-machine:/home# ll -t
总用量 16
drwxr-x--- 19 zhuolisu zhuolisu 4096  615 09:58 zhuolisu/
drwxr-xr-x 22 root     root     4096  614 11:40 ../
drwxr-xr-x  4 root     root     4096  610 15:45 ./
drwxr-xr-x  2 www      www      4096  610 15:45 www/
  • 以更易读的容量单位显示文件大小

ll -h

root@zhuolisu-virtual-machine:/home# ll -h
总用量 16K
drwxr-xr-x  4 root     root     4.0K  610 15:45 ./
drwxr-xr-x 22 root     root     4.0K  614 11:40 ../
drwxr-xr-x  2 www      www      4.0K  610 15:45 www/
drwxr-x--- 19 zhuolisu zhuolisu 4.0K  615 09:58 zhuolisu/
  • 查看某个指定文件的详细属性信息

ll 指定文件

root@zhuolisu-virtual-machine:~# ll install.sh
-rw-r--r-- 1 root root 29450  531 14:22 install.sh

- tree命令

tree命令的功能是用于以树状图形式列出目录内容,帮助了解到目录的层级关系

  • 显示当前工作目录下的文件层级情况

tree

root@zhuolisu-virtual-machine:/home# tree
.
├── www
└── zhuolisu
    ├── 公共的
    ├── 模板
    ├── 视频
    ├── 图片
    ├── 文档
    │   └── login
    │       ├── background.png
    │       ├── css
    │       │   └── login.css
    │       ├── img.png
    │       ├── index.html
    │       └── my.tar.gz
    ├── 下载
    ├── 音乐
    ├── 桌面
    ├── snap
    │   └── snap-store
    │       ├── 518
    │       ├── 558
    │       ├── common
    │       └── current -> 558
    └── test
        └── anaconda-ks.cfg
19 directories, 16 files
  • 以文件和目录的更改时间进行排序

tree -t

root@zhuolisu-virtual-machine:/home# tree -t
.
├── www
└── zhuolisu
    ├── 公共的
    ├── 模板
    ├── 视频
    ├── 下载
    ├── 音乐
    ├── 桌面
    ├── snap
    │   └── snap-store
    │       ├── common
    │       ├── 518
    │       ├── current -> 558
    │       └── 558
    ├── 文档
    │   └── login
    │       ├── background.png
    │       ├── css
    │       │   └── login.css
    │       ├── img.png
    │       ├── index.html
    │       └── my.tar.gz
    ├── 图片
    └── test
        └── anaconda-ks.cfg
19 directories, 16 files
  • 以带有相对路径的形式,显示当前工作目录下的文件层级情况

tree -f

root@zhuolisu-virtual-machine:/home# tree -f
.
├── ./www
└── ./zhuolisu
    ├── ./zhuolisu/公共的
    ├── ./zhuolisu/模板
    ├── ./zhuolisu/视频
    ├── ./zhuolisu/图片
    ├── ./zhuolisu/文档
    │   └── ./zhuolisu/文档/login
    │       ├── ./zhuolisu/文档/login/background.png
    │       ├── ./zhuolisu/文档/login/css
    │       │   └── ./zhuolisu/文档/login/css/login.css
    │       ├── ./zhuolisu/文档/login/img.png
    │       ├── ./zhuolisu/文档/login/index.html
    │       └── ./zhuolisu/文档/login/my.tar.gz
    ├── ./zhuolisu/下载
    ├── ./zhuolisu/音乐
    ├── ./zhuolisu/桌面
    ├── ./zhuolisu/snap
    │   └── ./zhuolisu/snap/snap-store
    │       ├── ./zhuolisu/snap/snap-store/518
    │       ├── ./zhuolisu/snap/snap-store/558
    │       ├── ./zhuolisu/snap/snap-store/common
    │       └── ./zhuolisu/snap/snap-store/current -> 558
    └── ./zhuolisu/test
        └── ./zhuolisu/test/anaconda-ks.cfg
19 directories, 16 files
  • 只显示目录的层级关系情况

tree -d

root@zhuolisu-virtual-machine:/home# tree -d
.
├── www
└── zhuolisu
    ├── 公共的
    ├── 模板
    ├── 视频
    ├── 图片
    ├── 文档
    │   └── login
    │       └── css
    ├── 下载
    ├── 音乐
    ├── 桌面
    ├── snap
    │   └── snap-store
    │       ├── 518
    │       ├── 558
    │       ├── common
    │       └── current -> 558
    └── test
19 directories

- cp命令

cp命令来自于英文单词copy的缩写,用于将一个或多个文件或目录复制到指定位置,亦常用于文件的备份工作

  • 在当前工作目录中,将某个文件复制一份,并定义新文件名称

cp 旧文件名 新文件名

root@zhuolisu-virtual-machine:~/mine# ls 
install.sh  my  snap-store
root@zhuolisu-virtual-machine:~/mine# cp install.sh my.sh
root@zhuolisu-virtual-machine:~/mine# ls
install.sh  my  my.sh  snap-store
  • 在当前工作目录中,将某个目录复制一份,并定义新目录名称

cp -r 旧目录名 新目录名
-r为递归复制文件和目录

root@zhuolisu-virtual-machine:~/mine# ls
install.sh  my  my.sh  snap-store
root@zhuolisu-virtual-machine:~/mine# cp -r my mine
root@zhuolisu-virtual-machine:~/mine# ls
install.sh  mine  my  my.sh  snap-store
  • 复制某个文件时,保留其原始权限及用户归属信息

cp -a 旧文件名 新文件名

-p保留源文件或目录的所有属性 , -r递归复制文件和目录,-d当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录,-a相当于pdr

root@zhuolisu-virtual-machine:~/mine# ls -l
总用量 132
-rw-r--r-- 1 root root 29450  616 11:29 mine
drwxr-xr-x 5 root root  4096  614 11:32 snap-store
root@zhuolisu-virtual-machine:~/mine# cp -a mine min
root@zhuolisu-virtual-machine:~/mine# ls -l
总用量 164
-rw-r--r-- 1 root root 29450  616 11:29 min
-rw-r--r-- 1 root root 29450  616 11:29 mine
drwxr-xr-x 5 root root  4096  614 11:32 snap-store
  • 将某个文件复制到/etc目录中,并覆盖已有文件,不进行询问

cp -f 文件名 文件目录 (可复制多个文件在同一个文件目录下)
-f若目标文件已存在,则会直接覆盖原文件

root@zhuolisu-virtual-machine:~/mine# cp -f my.sh /etc
root@zhuolisu-virtual-machine:~/mine# ls /etc
console-setup                  geoclue              ldap             mtab                 pulse           subgid             xattr.conf
cracklib                       ghostscript          ld.so.cache      my.sh                python2.7       subgid-            xdg

- chgrp命令

chgrp是英语单词change group的缩写,命令的作用和其中文释义一样,为用于变更文件或目录的所属群组

  • 将文件目录及其子目录下的所有文件的用户组改为某属组下

chgrp [-R] 属组名 文件名
-R递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。

- chown命令

chown命令来自于英文词组Change owner的缩写,其功能是用于改变文件或目录的用户和用户组信息

  • 进入目录将某个文件的拥有者更改

chown [–R] 属主名 文件名
-R对目前目录下的所有文件与目录进行相同的变更

root@zhuolisu-virtual-machine:/# cd ~
root@zhuolisu-virtual-machine:~# chown bin install.log
root@zhuolisu-virtual-machine:~# ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log
  • 改变指定文件的所属主与所属组

chown [-R] 属主名:属组名 文件名

root@zhuolisu-virtual-machine ~# chown root:root install.log
root@zhuolisu-virtual-machine ~# ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log

- chmod命令

chmod命令来自于英文词组change mode的缩写,其功能是用于改变文件或目录权限的命令

  • 设置某个文件的数字权限

chmod [-R] xyz 文件或目录
xyz数字类型的权限属性,为rwx属性数值的相加
-R递归的持续变更,此目录下的所有文件都会变更

root@zhuolisu-virtual-machine ~# ls -al .bashrc
-rw-r--r--  1 root root 395 Jul  4 11:45 .bashrc
root@zhuolisu-virtual-machine ~# chmod -R 777 .bashrc
root@zhuolisu-virtual-machine ~# ls  -al .bashrc
-rwxrwxrwx  1 root root 395 Jul  4 11:45 .bashrc

权限变成 -rwxr-xr-- ,权限的分数就成为 [4+2+1][4+0+1][4+0+0]=754

  • 符号类型改变文件权限

九个权限分别是user group others三种身份,由u g o来代表三种身份的权限
a则代表all亦即全部的身份 读写的权限为r w x

chmod u g o a + (/)-r w x 文件或目录

root@zhuolisu-virtual-machine ~# ls -al .bashrc
-rwxr-xr-x  1 root root 395 Jul  4 11:45 .bashrc
root@zhuolisu-virtual-machine ~# chmod  a+w  .bashrc
root@zhuolisu-virtual-machine ~# ls -al .bashrc
-rwxrwxrwx  1 root root 395 Jul  4 11:45 .bashrc

- mkdir命令

mkdir命令来自于英文词组make directories的缩写,其功能是用来创建目录文件

  • 在当前工作目录中,建立一个目录文件

mkdir 新目录名 (可建立多个目录)

root@zhuolisu-virtual-machine:/home/www# tree -d
.

0 directories
root@zhuolisu-virtual-machine:/home/www# mkdir temp
root@zhuolisu-virtual-machine:/home/www# tree -d
.
└── temp

1 directory
  • 在当前工作目录中,创建一个目录文件并设置权限

-m建立目录的同时设置目录的权限
mkdir -m 权限 新目录名

root@zhuolisu-virtual-machine:/home/www# mkdir -m 777 temp1
root@zhuolisu-virtual-machine:/home/www# ls -l
总用量 8
drwxr-xr-x 2 root root 4096  617 08:11 temp
drwxrwxrwx 2 root root 4096  617 08:15 temp1
  • 一次性创建多个有嵌套关系的目录文件

-p递归创建多级目录
mkdir -p 新的多级目录

root@zhuolisu-virtual-machine:/home/www# mkdir -p  my/my/you
root@zhuolisu-virtual-machine:/home/www# tree -d
.
├── my
│   └── my
│       └── you
├── temp
└── temp1
5 directories

- mv命令

mv命令来自于英文单词move的缩写,其功能与英文含义相同,用于对文件进行剪切和重命名

  • 在当前工作目录中,对某个文件进行剪切后粘贴(重命名)操作

mv 旧文件名 新文件名

root@zhuolisu-virtual-machine:/home/www# mv temp  hei
root@zhuolisu-virtual-machine:/home/www# tree -d
.
├── hei
├── my
│   └── my
│       └── you
└── temp1
5 directories
  • 将某个文件移动到新目录中,保留文件原始名称

mv 旧文件 目录名(目录移动同理)

root@zhuolisu-virtual-machine:/home/www# mv  hei   /home/www/temp1
root@zhuolisu-virtual-machine:/home/www# tree -d
.
├── my
│   └── my
│       └── you
└── temp1
    └── hei
5 directories

-i若存在同名文件,则向用户询问是否覆盖

-f覆盖已有文件时,不进行任何提示

- pwd命令

pwd命令来自于英文词组print working directory的缩写,其功能是用于显示当前工作目录的路径,即显示所在位置的绝对路径

  • 查看当前工作目录路径

pwd

root@zhuolisu-virtual-machine:/home/www# pwd
/home/www
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值