【文件处理命令】
◆ Linux中的命令格式:命令[-选项][参数]
例:ls -la /etc
说明: 1)个别命令使用不遵循此格式
2)当有多个选项时,可以写在一起
3)简化选项与完整选项,-a等于--all
【目录处理命令】
◆ 显示目录文件:ls
命令名称:ls
命令英文原意:list
命令所在路径:/bin/ls
执行权限:所有用户
功能描述:显示目录文件
语法:ls 选项[-ald] [文件或目录]
-a 显示所有文件,包括隐藏文件
-l 详细信息显示 (long 长的,即 显示详细)
-d 查看目录属性 (directory)
-h 将字节显示为KB或者MB (humanized 人性化)
* 以上编号分表表示:2 文件基数;3 所有者(创建者);4 所有组;5 文件大小;6 文件最后修改时间;7 文件名
备注:Linux 中 没有 “文件创建时间” 的说法
* 下面重点说明 最前面的: -rw-r--r--
说明: 最常见的文件类型分为3种,- 代表文件类型,d代表目录,l代表软链接。
rw- r-- r--
[ugo] u所有者g所属组o其他人
r读(read) w写(write) x执行(execute)
* 关于 -d 查看目录的属性,举例:
ll /etc/ 会列出etc目录下的所有文件详细信息,而不是该目录的信息,此时 ll /etc/ -d 则会显示该目录的属性:
* 扩展 ls -i 查看该目录下的文件i信息(相当于每个文件都有一个id)
◆ 创建新目录:mkdir
命令名称:mkdir
命令英文原意:make directories
命令所在路径:/bin/mkdir
执行权限:所有用户
语法:mkdir -p [目录名]
功能描述:创建新目录
-p 递归创建
范例:mkdir /tmp/dianying [只创建一个目录]
mkdir -p /tmp/music/123 [同时创建一个目录和它的子目录]
mkdir /tmp/book /tmp/picture [同时创建多个目录]
mkdir -p /tmp/txt/aa /tmp/txt/bb /tmp/txt/cc
◆ 切换目录:cd
命令名称:cd
命令英文原意:change directory
命令所在路径:shell内置命令
执行权限:所有用户
语法:cd [目录]
功能描述:切换目录
范例:$ cd /tmp/music/123 切换到指定目录
$ cd .. 回到上一级目录
(此时只能看到当前目录,看不到目录结构,接下来看下面)
◆ 显示当前目录:pwd
命令名称:pwd
命令英文原意:print working directory
命令所在路径:/bin/pwd
执行权限:所有用户
语法:pwd
功能描述:显示当前目录
◆ 删除空目录:rmdir
命令名称:rmdir [实际中不常用]
命令英文原意:remove empty directories
命令所在路径:/bin/rmdir
执行权限:所有用户
语法:rmdir [目录名]
功能描述:删除空目录
范例:$ rmdir /tmp/music/123
◆ 复制文件或目录:cp
命令名称:cp
命令英文原意:copy
命令所在路径:/bin/cp
执行权限:所有用户
语法:cp -rp [原文件或目录] [目标目录]
-r 复制目录
-p 保留文件属性
功能描述:复制文件或目录
示例:将/etc/grub.conf文件 复制到 /tmp 下面
示例:将/tmp/book目录 复制到 /root 下面,复制目录必须带 -r
示例:可以同时复制多个文件,例如 将上面看到的root目录下的两个文件复制到/tmp 下面
此时,经过对比,这两个目录下的install.log 文件的属性是不一样的
示例:加上 -p 就可以复制文件属性
扩展:复制文件的同时可以更改文件或者目录名
◆ 剪切文件、改名:mv
命令名称:mv
命令英文原意:move
命令所在路径:/bin/mv
执行权限:所有用户
语法:mv [原文件或目录] [目标目录]
功能描述:剪切文件、改名
说明:剪切目录不需要加 -r
扩展:剪切的时候同样可以改名
扩展:mv命令 在同一目录下也可以用于重命名(分析:将文件移动到当前目录并改名——即重命名)
◆ 删除文件:rm
命令名称:rm
命令英文原意:remove
命令所在路径:/bin/rm
执行权限:所有用户
语法:rm -rf [文件或目录]
-r 删除目录
-f 强制执行
功能描述:删除文件
说明:如果不想被提示是否删除,加上 -f
删除目录,需要加上 -r
如果某个目录下面有很多子目录或者文件,会逐个询问:
此时,可以直接 -rf ,删除该目录下的所有子目录及文件(谨慎操作!)
注意:千万不要 rm -rf / 这样会删除整个系统文件,下次启动就悲剧了!!
【文件处理命令】
◆ 创建空文件:touch
命令名称:touch
命令所在路径:/bin/touch
执行权限:所有用户
语法:touch [文件名]
功能描述:创建空文件
范例: $ touch file.list
说明:文件命名除了表示根分区的 / 以外,其他的所有字符都可以。但是一些特殊的不建议使用。
说明:有空格创建的是两个文件,即:一次性创建多个文件就是:多个文件名用空格分隔
说明:如果要创建带有空格的文件,用引号扩起来
★ 不建议使用带空格的文件名,因为如果这样,以后cd 、复制、剪切、重命名等等操作 都要带引号
◆ 显示文件内容:cat
命令名称:cat
命令所在路径:/bin/cat
执行权限:所有用户
语法:cat [文件名]
功能描述:显示文件内容
-n 显示行号
范例: $ cat /etc/issue
要显示行号,加上 -n (number)
扩展:与之类似的一个命令 tac ,反向显示文件内容(这个没有 -n )
◆ 分页显示文件内容:more
命令名称:more
命令所在路径:/bin/more
执行权限:所有用户
语法:more [文件名]
操作: (空格) 或f 翻页(一页一页的显示)
(Enter) 换行(一行一行地显示)
q或Q 退出(退出查看)
功能描述:分页显示文件内容
范例: $ more /etc/services
◆ 分页显示文件内容(可向上翻页):less
命令名称:less
命令所在路径:/usr/bin/less
执行权限:所有用户
语法:less [文件名]
操作: 除了有more 相同的操作外,还可以:
上下左右箭头
Pg Dn 、 Pg Up
功能描述:分页显示文件内容(可向上翻页)
范例: $ less /etc/services
扩展:在查看状态下,可以输入“/ [关键词]”查找想要的关键词,按下n(next) 继续向下查看。
例如,这里输入: /service
◆ 显示文件前面几行:head
命令名称:head
命令所在路径:/usr/bin/head
执行权限:所有用户
语法:head [文件名]
功能描述:显示文件前面几行
-n 指定行数
范例: $ head -n 3 /etc/services 显示前3行内容
说明:如果不加 -n ,则默认显示前10行(演示略)
◆ [动态]显示文件后面几行:tail
命令名称:tail
命令所在路径:/usr/bin/tail
执行权限:所有用户
语法:tail [文件名]
功能描述:显示文件后面几行
-n 指定行数
-f 动态显示文件末尾内容
范例: $ tail -n 3 /etc/services 显示最后3行内容
扩展:-f 动态显示文件末尾内容(一般用来监控日志),要退出按下Ctrl+C
【链接命令】
◆ 生成链接文件:ln
命令名称:ln
命令英文原意:link
命令所在路径:/bin/ln
执行权限:所有用户
语法:ln -s [原文件] [目标文件]
-s 创建软链接
功能描述:生成链接文件
① 示例:分别生成 软链接 和 硬连接
② 对比原文件和生成的软链接文件:
- 文件、d 目录、l 链接文件(link);rwxrwxrwx 所有人(所有者、所属组、其他人)都有全部的操作权限!!!
软链接特征:类似Windows快捷方式
1、lrwxrwxrwx l 软链接;软链接文件权限都为rwxrwxrwx
2、文件大小-只是符号链接
3、/tmp/issue.soft -> /etc/issue 箭头指向原文件
③ 对比原文件和生成的硬链接文件:
硬链接特征:
1、拷贝cp -p + 同步更新(修改其中一个,两个都会改变)
echo "this is a test" >> /etc/issue 给某个文件末尾写入内容(以后详述)
2、可通过i节点识别
3、不能跨分区(软链接可以跨分区)
4、不能针对目录使用
◇ 硬链接操作:
查看三个文件的内容,都一样!
这时,给原文件中写入内容,同时查看
当然,此时三个文件的内容还是一样的。
接下来,删除原文件 /etc/issue (注意,需要备份一下,一会儿要恢复)
但是呢,硬连接文件还是存在的!
◇ 那么,怎么区别硬连接呢?通过i节点识别!
看下面,这时重新针对issue.bak 重新生成的一个软链接和一个硬连接,硬连接和原文件的i节点是一样的!
【最后更新时间:2014年10月23日 15:06:56】
【此笔记为作者原创发表于CSDN博客,转载请注明出处】
《Linux基础笔记》专栏列表:https://blog.csdn.net/rxbook/category_9986400.html