3.2 文件操作命令

本文详细介绍了Linux系统中常见的文件操作命令,包括ls用于列出目录内容,cd用于切换目录,cp用于文件复制,rm用于删除文件,mkdir和rmdir分别用于创建和删除目录,mv用于移动文件或重命名,rename进行文件重命名,以及find用于查找文件。这些命令是Linux用户日常操作的基础,涵盖了文件管理的各个方面。
摘要由CSDN通过智能技术生成

3.2.1 ls

命令概述:

 列出目标目录中所有的子目录和文件。

命令格式:

 ls [参数] [目录名]

常用参数:

参数名作用
-l使用长格式列出文件及目录信息
-r将文件以相反次序显示(默认依英文字母次序)
-t根据最后的修改时间排序
-A同 -a ,但不列出 “.” (当前目录) 及 “…” (父目录)
-S根据文件大小排序
-R递归列出所有子目录

参考示例:

列出当前文件夹的文件

chz@ubuntu:~$ ls
desk   examples.desktop  公共的  视频  文档  音乐
desk1  hw3               模板    图片  下载  桌面

列出所有文件(包括隐藏文件):

chz@ubuntu:~$ ls -a
.              desk              .mozilla                   公共的
..             desk1             .pam_environment           模板
.bash_history  .dmrc             .profile                   视频
.bash_logout   examples.desktop  .sudo_as_admin_successful  图片
.bashrc        .gconf            .viminfo                   文档
.bashrc.swp    .gnupg            .Xauthority                下载
.cache         hw3               .xinputrc                  音乐
.config        .ICEauthority     .xsession-errors           桌面
.dbus          .local            .xsession-errors.old

列出文件的详细信息:

chz@ubuntu:~$ ls -l
总用量 56
drwxrwxr-x 5 chz chz 4096 Dec 31 03:50 desk
drwxrwxr-x 4 chz chz 4096 Dec 30 09:22 desk1
-rw-r--r-- 1 chz chz 8980 Dec 29 22:26 examples.desktop
drwxrwxr-x 3 chz chz 4096 Dec 31 04:58 hw3
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 公共的
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 模板
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 视频
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 图片
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 文档
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 下载
drwxr-xr-x 2 chz chz 4096 Dec 30 01:59 音乐
drwxr-xr-x 2 chz chz 4096 Jan  1 21:06 桌面

列出根目录(/)下的所有目录:

chz@ubuntu:~$ ls /
bin    dev   initrd.img      lib64       mnt   root  snap  tmp  vmlinuz
boot   etc   initrd.img.old  lost+found  opt   run   srv   usr  vmlinuz.old
cdrom  home  lib             media       proc  sbin  sys   var

3.2.2 cd

命令概述:

 改表文件目录

命令格式:

 cd [参数] [目录或文件]

参考示例:

回到根目录

cd /

回到上层目录

cd ..

跳到 /usr/bin/

cd /usr/bin/ 

回到家目录

cd ~

3.2.3 cp

命令概述:

 文件拷贝

命令格式:

 cp [参数] [目录或文件] [目标地址]

常用参数:

参数名作用
-a此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
-f覆盖已经存在的目标文件而不给出提示。
-i与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
-p除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l不复制文件,只是生成链接文件。

参考示例:

使用指令 cp 将当前目录 test/ 下的所有文件复制到新目录 newtest 下,输入如下命令:

cp –r test/ newtest

3.2.4 rm

命令概述:

 删除文件

命令格式:

 rm [参数] [目录或文件]

常用参数:

参数名作用
-i删除前逐一询问确认。
-f即使原档案属性设为唯读,亦直接删除,无需逐一确认。
-r将目录及以下之档案亦逐一删除

参考示例:

删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r",例如:

# rm  test.txt 
rm:是否删除 一般文件 "test.txt"? y  
# rm  homework  
rm: 无法删除目录"homework": 是一个目录  
# rm  -r  homework  
rm:是否删除 目录 "homework"? y

删除当前目录下的所有文件及目录,命令行为:

rm  -r  *

3.2.5 mkdir/rmdir

命令概述:

 创建或删除目录

命令格式:

 mkdir/rmdir [参数] [目录或文件]

常用参数:

mkdir

-p 确保目录名称存在,不存在的就建一个。

rmdir

-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除。

参考示例:

在工作目录下,建立一个名为 runoob 的子目录 :

mkdir runoob

在工作目录下的 runoob2 目录中,建立一个名为 test 的子目录。

若 runoob2 目录原本不存在,则建立一个。(注:本例若不加 -p 参数,且原本 runoob2 目录不存在,则产生错误。)

mkdir -p runoob2/test

将工作目录下,名为AAA的子目录删除

rmdir AAA

在工作目录下的 BBB 目录中,删除名为 Test 的子目录。若 Test 删除后,BBB 目录成为空目录,则 BBB 亦予删除。

rmdir -p BBB/Test

3.2.6 mv

命令概述:

 移动文件

命令格式:

 cd [参数] [目录或文件] [目标地址]

常用参数:

参数名作用
-b当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
-i如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
-f如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
-n不要覆盖任何已存在的文件或目录。
-u当源文件比目标文件新或者目标文件不存在时,才执行移动操作。

参考示例:

将文件 aaa 改名为 bbb :

mv aaa bbb

将 info 目录放入 logs 目录中。注意,如果 logs 目录不存在,则该命令将 info 改名为 logs。

mv info/ logs

将 /usr/runoob 下的所有文件和目录移到当前目录下,命令行为:

$ mv /usr/runoob/*  .

3.2.7 rename

命令概述:

 文件重命名

命令格式:

 rename 参数

常用参数:

原字符串:将文件名需要替换的字符串;
目标字符串:将文件名中含有的原字符替换成目标字符串;
文件:指定要改变文件名的文件列表。

参考示例:

重命名
rename 源字符串 目标字符串 文件
将main1.c重命名为main.c

rename main1.c main.c main1.c

3.2.8 find

命令概述:

 文件查找

命令格式:

 find 搜索路径 [选项] 搜索内容

常用参数:

参数名作用
-mount, -xdev只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n在过去 n 分钟内被读取过
-anewer file比文件 file 更晚被读取过的文件
-atime n在过去 n 天内被读取过的文件
-cmin n在过去 n 分钟内被修改过
-cnewer file比文件 file 更新的文件
-ctime n在过去 n 天内创建的文件
-mtime n在过去 n 天内修改过的文件
-empty空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name文件名称符合 name 的文件。iname 会忽略大小写
-size n文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-type c文件类型是 c 的文件。
d目录
c字型装置文件
b区块装置文件
p具名贮列
f一般文件
l符号连结
ssocket
-pid nprocess id 是 n 的文件

参考示例:

将当前目录及其子目录下所有文件后缀为 .c 的文件列出来:

root@ubuntu:/home/chz# find . -name "*.c"
./hw3/hw1/main.c

将当前目录及其子目录中的所有文件列出:

root@ubuntu:/home/chz# find . -type f
./.cache/thumbnails/fail/gnome-thumbnail-factory/ff169c4ac6079d5e0e12dc32ed07906a.png
./.cache/ibus/bus/registry
./.cache/upstart/unity-settings-daemon.log.1.gz

将当前目录及其子目录下所有最近 20 天内更新过的文件列出:

find . -ctime 20

查找系统中所有文件长度为 0 的普通文件,并列出它们的完整路径:

# find / -type f -size 0 -exec ls -l {} \;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值