【Linux学习】命令(一):文件处理命令
声明: 这个模块的所有文章是我两年前的学习记录,使用的 Linux 系统是 Cent OS,如果要自己使用请尽量查询后再考虑是否使用
# 目录处理命令
# ls
显示目录下文件
原意:
- list
命令所在路径:
- /bin/ls
执行权限:
- 所有用户
选项:
ls 选项[-ald] [文件或目录] | |
-a:显示所有文件,包括隐藏文件 | |
-l:详细信息显示 | |
-d:查看目录属性 | |
-h:人性化显示 | |
- 文件属性 — 被调用次数 — 所有者 — 所属组 — 大小 — 最后修改时间 | |
- x — xxx — xxx — xxx | |
- 文件类型 — 所有者 — 所属组 — 其他人 | |
- -:二进制文件 | |
- d:目录 | |
- l:链接文件 | |
- r:读 | |
- w:写 | |
- x:执行 | |
-i:文件ID号 |
# mkdir
创建新目录
原意:
- make directories
命令所在路径:
- /bin/mkdir
执行权限:
- 所有用户
语法:
mkdir -p [目录名] [目录名] ... | |
-p:递归创建(一次性连续创建) |
# cd
切换目录
原意:
- change directories
命令所在路径:
- shell 内置命令
执行权限:
- 所有用户
语法:
cd [目录] | |
.:当前目录 | |
..:上一级目录 |
# pwd
显示当前所在目录
原意:
- print working directories
命令所在路径:
- /bin/pwd
执行权限:
- 所有用户
语法:
pwd |
# rmdir
删除空目录
原意:
- remove empty directoies
执行权限:
- 所有用户
语法:
rm [目录名] |
# cp
复制文件或目录、改名
原意:
- copy
执行权限:
- 所有用户
语法:
cp -rp [原文件或目录1] [原文件或目录2] [......] [目标目录] | |
-r:复制目录 | |
-p:保留文件属性 | |
复制同时改名:在目标目录后添加 /新名称 |
# mv
剪切文件、改名
原意:
- move
执行权限:
- 所有用户
语法:
mv [原文件或目录1] [原文件或目录2] [......] [目标目录] | |
不需要加-r,文件或目录无区别 |
# rm
删除文件或目录
原意:
- remove
执行权限:
- 所有用户
语法:
rm -rf [文件或目录] | |
-r:删除目录 | |
-f:强制删除 |
# 文件处理操作
# touch
创建空文件
原意:
执行权限:
- 所有用户
语法:
touch [文件名1] [文件名2] [......] | |
文件名避免使用空格,必须要用加"" |
# cat
显示文件内容
原意:
执行权限:
- 所有用户
语法:
cat [文件名] | |
-n:显示行号 |
# tac
显示文件内容(反向列示)
原意:
执行权限:
- 所有用户
语法:
tac [filename] |
# more
分页显示文件内容
原意:
执行权限:
- 所有用户
语法:
more [filename] | |
翻页:空格 或 f | |
换行:Enter | |
退出:q或Q |
# less
分页显示文件内容(可向上翻页)
原意:
执行权限:
- 所有用户
语法:
less [文件名] | |
翻页: | |
- 向下:空格 或 f 或 PageDown | |
- 向上:PageUp | |
换行: | |
- 向上:(上箭头) | |
- 向下:(下箭头) 或 Enter | |
查询:/关键词(n可继续向下查找) | |
退出:q或Q |
# head
显示文件前面几行
原意:
执行权限:
- 所有用户
语法:
head [文件名] | |
-n:指定行数(无指定默认10行) |
# tail
显示文件后面几行
原意:
执行权限:
- 所有用户
语法:
tail [文件名] | |
-n:指定行数(无指定默认10行) | |
-f:动态显示文件末尾内容 |
# 链接命令
# ln
生成链接文件
原意:
- link
执行权限:
- 所有用户
语法:
ln -s [ 原文件 ] [ 目标文件 ] | |
不加选项:创建硬链接 | |
-s:创建软链接 |
# 软链接
类似 Windows 的快捷方式,权限都是:lrwxrwxrwx
原意:
执行权限:
- lrwx-rwx-rwx
特性:
-
创建时原文件的路径
-
创建时写的是临时路径
ln -s hello.c hello.slink
大小:7字节( =sizeof(hello.c) )
软链接会在其所在目录寻找hello.c,所以移动后就不能指向原文件,而是在新路径下寻找hello.c
如果有另一个hello.c,将会与此文件建立链接,如果没有则此链接不能使用
-
创建时写的是绝对路径
ln -s /root/test/hello.c hello.slink
大小:18字节( =sizeof(/root/test/hello.c) )
在使用时会按照绝对路径查找,移动链接不影响链接的使用
-
-
存储内容就是创建时的路径
-
可针对目录使用
-
创建时会新申请一个节点
# 硬链接
-
可同步更新
-
通过 i 节点识别
创建的硬链接与源文件的 i 节点号相同、属性相同 -
删除原文件不影响使用
-
不能跨分区
-
不能针对目录使用
# 节点
-
新建文件或目录会新建节点
-
同一个节点下可以有多个文件,互为硬链接
-
删除其中一个文件不影响其他文件
-
当节点下链接数为 0 时,节点才会被回收
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 ROOTX!