1、cd

(change directory)切换到指定目录

  1. - 返回上次目录
  2. .. 返回上层目录
  3. 回车 返回主目录
  4. / 根目录

2、cp

(copy)复制文件或目录

  1. -r -R 递归复制该目录及其子目录内容
  2. -p 连同档案属性一起复制过去
  3. -f 不询问而强制复制
  4. -s 生成快捷方式
  5. -a 将档案的所有特性都一起复制
  6. cp -r /home/hj/a /tmp

3、find

查找目录及目录下的文件

  1. 选项与参数:
  2. 1. 与时间有关的选项:共有 -atime, -ctime -mtime 和-amin,-cmin与-mmin,以 -mtime 说明
  3. -mtime n n 为数字,意义为在 n 天之前的『一天之内』被更动过内容的档案;
  4. -mtime +n :列出在 n 天之前(不含 n 天本身)被更动过内容的档案档名;
  5. -mtime -n :列出在 n 天之内(含 n 天本身)被更动过内容的档案档名。
  6. -newer file file 为一个存在的档案,列出比 file 还要新的档案档名
  7. 2. 与使用者或组名有关的参数:
  8. -uid n n 为数字,这个数字是用户的账号 ID,亦即 UID
  9. -gid n n 为数字,这个数字是组名的 ID,亦即 GID
  10. -user name name 为使用者账号名称!例如 dmtsai
  11. -group namename 为组名,例如 users
  12. -nouser :寻找档案的拥有者不存在 /etc/passwd 的人!
  13. -nogroup :寻找档案的拥有群组不存在于 /etc/group 的档案!
  14. 3. 与档案权限及名称有关的参数:
  15. -name filename:搜寻文件名为 filename 的档案(可使用通配符)
  16. -size [+-]SIZE:搜寻比 SIZE 还要大(+)或小(-)的档案。这个 SIZE 的规格有:
  17. c: 代表 byte
  18. k: 代表 1024bytes。所以,要找比 50KB还要大的档案,就是『 -size +50k
  19. -type TYPE :搜寻档案的类型为 TYPE 的,类型主要有:
  20. 一般正规档案 (f)
  21. 装置档案 (b, c)
  22. 目录 (d)
  23. 连结档 (l)
  24. socket (s)
  25. FIFO (p)
  26. -perm mode :搜寻档案权限『刚好等于』 mode的档案,这个mode为类似chmod的属性值,举例来说,-rwsr-xr-x 的属性为4755
  27. -perm -mode :搜寻档案权限『必须要全部囊括 mode 的权限』的档案,举例来说,
  28. 我们要搜寻-rwxr--r-- 亦即 0744 的档案,使用-perm -0744,当一个档案的权限为 -rwsr-xr-x ,亦即 4755 时,也会被列出来,因为 -rwsr-xr-x 的属性已经囊括了 -rwxr--r-- 的属性了。
  29. -perm +mode :搜寻档案权限『包含任一 mode 的权限』的档案,举例来
  30. 说,我们搜寻-rwxr-xr-x ,亦即 -perm +755 时,但一个文件属性为 -rw-------也会被列出来,因为他有 -rw.... 的属性存在!
  31. 4. 额外可进行的动作:
  32. -exec command command 为其他指令,-exec 后面可再接额外的指令来处理搜寻到的结果。
  33. -print :将结果打印到屏幕上,这个动作是预设动作!
  34. eg:
  35. find / -perm +7000 -exec ls -l {} ; ,额外指令以-exec开头,以;结尾{}代替前面找到的内容
  36. | xargs
  37. -i 默认的前面输出用{}代替
  38. eg:
  39. find . -name "*.log" | xargs -i mv {} test4

示例:

  1. # 按文件名查找
  2. # 查找 /etc 目录下所有 passwd
  3. find /etc/ -name passwd
  4. # 按查找深度
  5. root@dly-virtual-machine:/home/dly# find /etc -maxdepth 1 -name passwd
  6. /etc/passwd
  7. root@dly-virtual-machine:/home/dly# find /etc -maxdepth 2 -name passwd
  8. /etc/cron.daily/passwd
  9. /etc/pam.d/passwd
  10. /etc/passwd
  11. # 按文件大小
  12. root@dly-virtual-machine:/home/dly# find /mnt -size 20k
  13. root@dly-virtual-machine:/home/dly# find /mnt -size -20k # 小于 20k
  14. /mnt
  15. root@dly-virtual-machine:/home/dly# find /mnt -size +20k # 大于 20k
  16. # 按文件类型
  17. find /dev -type f # 普通文件
  18. find /dev -type b # 块设备
  19. find /dev -type s # 套接字
  20. find /dev -type p # 管道
  21. find /dev -type d # 目录
  22. # 按权限查找
  23. ##查找文件权限为404的文件
  24. [root@localhost mnt]# find /mnt -perm 404
  25. /mnt/file2
  26. ##查看文件权限中u位有r权限,并且o位有r权限的文件
  27. [root@localhost mnt]# find /mnt -perm -404
  28. /mnt
  29. /mnt/file1
  30. /mnt/file2
  31. ##查看文件权限中u位有r权限,或者o位有r权限的文件
  32. [root@localhost mnt]# find /mnt -perm /404

4、mkdir

(make directory)创建文件夹

  1. -p 递归创建目录,若父目录不存在则依次创建
  2. -m 自定义创建目录的权限 eg:mkdir -m 777 hehe
  3. -v 显示创建目录的详细信息

5、mv

(move)移动或重命名文件(重命名时会删除源文件,cp 不会)

  1. -b 覆盖前做备份
  2. -f 如存在不询问而强制覆盖
  3. -i 如存在则询问是否覆盖
  4. -u 较新才覆盖
  5. -t 将多个源文件移动到统一目录下,目录参数在前,文件参数在后
  6. eg:
  7. mv a /tmp/ 将文件a移动到 /tmp目录下
  8. mv a b a命名为b
  9. mv /home/zenghao test1.txt test2.txt test3.txt

6、pwd

(print working directory)显示当前工作目录的绝对路径。

7、rename

重命名文件

  1. Usagerename [-v] [-n] [-f] perlexpr [filenames]
  2. -v(verbose) 打印被成功重命名的文件
  3. -n(no-act) 只显示将被重命名的文件,而非实际进行重命名操作
  4. -f(force) 覆盖已经存在的文件
  5. perlexprPerl语言格式的正则表达式
  6. files需要被替换的文件(比如*.c、*.h),如果没给出文件名,将从标准输入读
  7. 【常用通配符说明】
  8. ? 表示一个任意字符
  9. * 表示一个或一串任意字符
  10. -------------------------------------------------
  11. 【常用正则表达式符号说明】
  12. ^ 匹配输入的开始位置
  13. $ 匹配输入的结尾
  14. . 匹配除换行符外的任意字符
  15. + 匹配前一个字符一次或多次 例如,"zo+"可以匹配"zoo",但不匹配"z"
  16. [a-z] 表示某个范围内的字符,例如,"[a-z]"匹配"a""z"之间的任何一个小写字母字符。
  17. [^m-z] 否定的字符区间。与不在指定区间内的字符匹配。

示例:


  1. [root@localhost www]# rename 's/\.sh/\.php/' * #将当前目录下.sh后缀的文件,变成.php
  2. [root@localhost www]# rename 's/$/\.bak/' /home/www/*.php #给www目录下的.php加上bak后缀
  3. [root@localhost www]# rename 's/^/bak_/' *.bin #给当前目录下的.bin后缀文件加上bak_前缀
  4. [root@localhost www]# rename 's/\.bin$//' * #批量删除当前目录下所有文件的.bin 后缀
  5. [root@localhost www]# rename 's/A-Z/a-z/' * #修改当前目录所有文件名为小写

8、rm

(remove)删除一个或多个文件或目录

  1. -r 删除文件夹
  2. -f 删除不提示
  3. -i 删除提示
  4. -v 详细显示进行步骤

9、rmdir

(remove empty directories)删除空目录

  1. -v 显示执行过程
  2. -p 若自父母删除后父目录为空则一并删除

10、touch

创建新的空文件,改变已有文件的时间戳属性

  1. -a 只修改存取时间
  2. -m 值修改变动时间
  3. -r eg:touch -r a b ,使b的时间和a相同
  4. -t 指定特定的时间 eg:touch -t 201211142234.50 log.log
  5. -t time [[CC]YY]MMDDhhmm[.SS],C:年前两位
  6. eg
  7. touch a.txt # 新建文件 a.txt

11、tree

以树形结构显示目录下的内容

  1. -a 显示所有文件和目录。
  2. -A 使用ASNI绘图字符显示树状图而非以ASCII字符组合。
  3. -C 在文件和目录清单加上色彩,便于区分各种类型。
  4. -d 显示目录名称而非内容。
  5. -D 列出文件或目录的更改时间。
  6. -f 在每个文件或目录之前,显示完整的相对路径名称。
  7. -F 在执行文件,目录,Socket,符号连接,管道名称名称,各自加上"*","/","=","@","|"号。
  8. -g 列出文件或目录的所属群组名称,没有对应的名称时,则显示群组识别码。
  9. -i 不以阶梯状列出文件或目录名称。
  10. -I<范本样式> 不显示符合范本样式的文件或目录名称。
  11. -l 如遇到性质为符号连接的目录,直接列出该连接所指向的原始目录。
  12. -n 不在文件和目录清单加上色彩。
  13. -N 直接列出文件和目录名称,包括控制字符。
  14. -p 列出权限标示。
  15. -P<范本样式> 只显示符合范本样式的文件或目录名称。
  16. -q "?"号取代控制字符,列出文件和目录名称。
  17. -s 列出文件或目录大小。
  18. -t 用文件和目录的更改时间排序。
  19. -u 列出文件或目录的拥有者名称,没有对应的名称时,则显示用户识别码。
  20. -x 将范围局限在现行的文件系统中,若指定目录下的某些子目录,其存放于另一个文件系统上,则将该子目录予以排除在寻找范围外。
  21. -L 等级/深度
  22. eg:
  23. tree /home/dly -L 1 # 深度为 1
  24. tree -a # 显示所有文件和目录

12、basename

获取路径中的文件名或路径名

  1. # 获取末尾的文件名或路径名
  2. $ basename /etc/passwd
  3. passwd
  4. $ basename /etc/man.config
  5. man.config
  6. $ basename /etc
  7. etc
  8. # 去掉末尾的指定字符,第二个参数指定后缀名即可
  9. $ basename /etc/man.config
  10. man.config
  11. $ basename /etc/man.config .config
  12. man
  13. # 取消指定字符
  14. $ basename namedb.data db.data

13、dirname

显示指定路径除了文件名之外的路径前缀

  1. dirname /usr/bin/ -> "/usr"
  2. dirname dir1/str dir2/str -> "dir1" followed by "dir2"
  3. dirname stdio.h -> "."

14、chattr、lsattr

改变(查看)文件的拓展属性

  1. root@dly-virtual-machine:/home/dly/test# lsattr a.txt
  2. -------------e-- a.txt
  3. # #设置该文件不能进行任何形势的修改
  4. root@dly-virtual-machine:/home/dly/test# chattr +i a.txt
  5. root@dly-virtual-machine:/home/dly/test# lsattr a.txt
  6. ----i--------e-- a.txt
  7. chattr -i nginx.conf #取消-i的权限设置
  8. chattr +a /var/log/messages #让某个文件只能往里面追加数据,但不能删除

15、file

显示文件类型

  1. -b
  2. 不输出文件名 (简要模式).
  3. -c
  4. 检查时打印输出幻数文件的解析结果.常与 -m 一起使用,用来在安装幻数文件之前调试它.
  5. -f 命名文件
  6. 从在参数表前的 命名文件 中读出将要检查的文件名(每行一个文件).要有 命名文件 ,或者至少有一个文件名参数; 如果要检查标准输入, 使用``-作为文件参数.
  7. -m list
  8. 指定包含幻数的文件列表.可以是单个文件,也可以是 用冒号分开的多个文件.
  9. -n
  10. 每检查完一个文件就强制刷新标准输出. 仅在检查一组文件时才有效. 一般在将文件类型输出到管道时才采用此选项.
  11. -v
  12. 打印程序版本并退出.
  13. -z
  14. 试图查看压缩文件内部信息.
  15. -L
  16. (在支持符号链接的系统上)选项显示符号链接文件的原文件, 就像 ls(1) 命令的like-named 选项.
  17. -s
  18. 通常, file 只是试图去检查在文件列表中那些 stat(2) 报告为正常文件的文件的类型.由于读特殊文件将可能导致 不可知后果,所以这样可以防止发生问题.使用 -s 选项时 file 命令也将去读文件列表中的块特殊文件和字符特殊文件. 一般用于从原始磁盘分区中获得文件系统类型,此文件为块 特殊文件. 这个选项也导致 file 命令忽略 stat(2) 报告的文件大小,因为在有些系统中原始磁盘分区的大小报告为0.

示例:

  1. $ file * # 查看当前文件的类型
  2. $ file a.txt # 查看单个文件的类型
  3. $ file -z test.bz2 # 查看压缩文件中的文件类型

16、md5sum

计算和校验文件的 MD5 值

  1. 用法:md5sum [选项]... [文件]...
  2. 显示或检查 MD5(128-bit) 校验和。
  3. 若没有文件选项,或者文件处为"-",则从标准输入读取。
  4. -b, --binary 以二进制模式读取
  5. -c, --check 从文件中读取MD5 的校验值并予以检查
  6. -t, --text 以纯文本模式读取(默认)
  7. 以下三个选项在进行校验时非常有用:
  8. --quiet 不为校验成功的文件输出OK
  9. --status 不输出任何内容,使用退出状态号显示成功
  10. -w, --warn 对格式不准确的校验和行进行警告
  11. --strict with --check, exit non-zero for any invalid input
  12. --help 显示此帮助信息并退出
  13. --version 显示版本信息并退出
  14. 校验和会按照RFC 1321 规范生成。当进行检查时,给出的输入格式应该和程序的输出
  15. 样板格式相同。默认的输出模式时输出一行校验和的校验结果,并有一个字符来
  16. 表示文件类型("*"代表二进制," "代表纯文本),并同时显示每个文件的名称

示例:

  1. # 以二进制形式显示 md5
  2. root@dly-virtual-machine:/home/dly/test# md5sum -b a.txt
  3. d41d8cd98f00b204e9800998ecf8427e *a.txt
  4. # 生成md5加密检验和
  5. root@dly-virtual-machine:/home/dly/test# md5sum a.txt > a.md5
  6. root@dly-virtual-machine:/home/dly/test# ls
  7. 1.jpg 2.jpg a a.md5 a.txt
  8. root@dly-virtual-machine:/home/dly/test# cat a.md5
  9. d41d8cd98f00b204e9800998ecf8427e a.txt
  10. # 检验与文件是否一致
  11. root@dly-virtual-machine:/home/dly/test# md5sum -c a.md5
  12. a.txt: 确定

Linux 文件和目录操作命令(一)的更多相关文章

  1. [转]Linux文件和目录操作命令

    转自:http://www.linuxdiyf.com/bbs/thread-416176-1-1.html 一.文件操作命令1.1 查看文件 Linux下查看文件的命令有很多,下面列出的几个是几乎所 ...

  2. (2)Linux文件和目录操作命令

    简单就是高效 pwd cd -/~/.. tree–a/d/f/i/L mkdir–p/v/m touch ls –l/a//i/h/F cp –r/p/d/a mv rm –f/r/i rmdir ...

  3. Linux常用命令之文件和目录操作命令

    以下是linux操作系统常用的文件和目录操作命令: cd /home 进入 '/ home' 目录'  cd .. 返回上一级目录  cd ../.. 返回上两级目录  cd 进入个人的主目录  cd ...

  4. Linux 150命令之 文件和目录操作命令 ls

    文件和目录操作命令 ls 查看文件和目录查看显示详信息 ls 工具的参数 ls -l 查看文件详细信息 ls -h 查看文件的大小 ls -ld 只查看目录信息 ls –F 给不同文件加上不同标记 l ...

  5. Linux文件和目录权限详细讲解

    转载请标明出处: http://www.cnblogs.com/why168888/p/5965180.html 本文出自:[Edwin博客园] Linux文件和目录权限解读 如何设置Linxu文件和 ...

  6. Linux 文件与目录管理

    Linux 文件与目录管理 我们知道Linux的目录结构为树状结构,最顶级的目录为根目录 /. 其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们. 在开始本教程前我们需要先知道什么是绝对 ...

  7. CentOS(十)--与Linux文件和目录管理相关的一些重要命令②

    在结束了第二期的广交会实习之后,又迎来了几天休闲的日子,继续学习Linux.在上一篇随笔 Linux学习之CentOS(十七)--与Linux文件和目录管理相关的一些重要命令① 中,详细记录了与Lin ...

  8. CentOS(九)--与Linux文件和目录管理相关的一些重要命令①

       接上一篇文章,实际生产过程中的目录管理一定要注意用户是root 还是其他用户. 一.目录与路径 1.相对路径与绝对路径 因为我们在Linux系统中,常常要涉及到目录的切换,所以我们必须要了解 & ...

  9. Linux - 文件和目录常用命令

    文件和目录常用命令 目标 查看目录内容 ls 切换目录 cd 创建和删除操作 touch rm mkdir 拷贝和移动文件 cp mv 查看文件内容 cat more grep 其他 echo 重定向 ...

随机推荐

  1. keras冒bug

    使用keras做vgg16的迁移学习实验,在实现的过程中,冒各种奇怪的bug,甚至剪贴复制还是出问题. 解决方案: 当使用组合keras和tensorflow.keras时.由于版本不一致问题导致很多 ...

  2. 移动端ui框架

    https://blog.csdn.net/Robin_star_/article/details/81810197

  3. js---描述链表

    js描述链表 有些情况下js的数组结构在实际使用中速度很慢,此时可以考虑用链表来代替它: //链表类 function Node(element){ this.element=element; thi ...

  4. linux--->linux 各个文件夹及含义

    1./bin 是binary的缩写 存放linux常用命令 2./lib 该目录用来存放系统动态链接共享库,几乎所有的应用程序都会用到该目录下的共享库. 3./dev 该目录包含了Linux系统中使用 ...

  5. python笔记11

    今日内容 函数小高级 lambda 表达式 内置函数 内容回顾 函数基本结构 参数 形参 基本参数:def func(a1,a2):pass 默认值:def func(a1,a2=123):pass ...

  6. CUDA 计算pi (π)

    通过简单的程序设计熟练CUDA的使用步骤 下面是cuda代码及相关注释 #include <stdio.h> #include <iostream> #include < ...

  7. C编程规范

    目 录 1.版面... 2.命名... 3.注释... 4.源代码结构... 附录A:常见单词缩写表... 1.版面 [规则1-1] 程序块要采用缩进风格编写,缩进的空格数为4个. [规则1-2] 对 ...

  8. centos 配置自动启动(nginx为例)

    [Unit] Description=nginx After=network.target [Service] Type=forking ExecStart=/usr/local/nginx/sbin ...

  9. CSS的常用单位介绍

    ①px: 像素单位:它是英文单词pixel的缩写,意思为像素,即构成图片的每一个点,为图片显示的最小单位.它是一个绝 对尺寸单位,是固定的. ②em: 相对长度单位:它是英文单词emphasize的缩 ...

  10. AI: 字体设计中的贝塞尔曲线

    http://www.xueui.cn/tutorials/illustrator-tutorials/designers-must-know-the-secret-of-the-bezier-cur ...