Linux学习笔记__文件处理命令
文件处理命令
命令格式
命令格式:命令 [-选项] [参数]
例: ls -la /etc
/ect为参数,被操作对象
说明:
- 个别命令使用不遵从此格式
- 当有多个选项时,可以写在一起
- 简化选项与完整选项
-a == --all
目录处理命令
ls
命令名称:ls(list)|所在路径:/bin/ls|执行权限:所有用户|功能描述:显示目录文件
语法:ls 选项[-ald] [文件或目录]
-a 显示所有文件,包括隐藏文件
-l 详细信息显示
-d 查看目录属性
以.开头的文件是隐藏文件(一般为系统文件,不要乱动)
ls -l :长文件显示,会显示一行数据,包含文件的详细信息
在Linux中用户被分为3类
- 所有者:文件创建者,一般只能是一个用户,可以转换
- 所属组:一个用户组,可以使用文件
- 其他人:既不是所有者,也不在所有组中
例如:
第一个bakuman就是所有者
第二个bakuman就是所属组
4096:文件的大小,默认单位是字节,但是只要在ls -l 的后面加上h就可人性化显示,绝大多数统计命令都支持h
07:20的就是文件的修改时间
公共 指的是文件名
- d 文件类型(-二进制文件 d 目录 l 软链接文件)
- rwx r-x r-x
u g o
u所有者 g所属组 o其他人
r读 w写 x执行
- rwx r-x r-x
x权限是最高权限,对文件来说一般只在可以运行的时候才会分配
mkdir
命令名称:mkdir(make directories)|所在路径:/bin/mkdir|执行权限:所有用户|
语法: mkdir -p [目录名]
功能描述:
- 创建新目录
- -p 递归创建
例:
$mkdir /tmp/bakuman
$mkdir -p /tmp/bakuman/esther
/*在这里面bakuman这个目录还没有创建好,不能直接创建,因此就要使用 -p 命令来递归创建*/
$mkdir /tmp/bakuman /tmp/esther 使用mkdir可以创建多个目录
cd
命令名称:cd(change directory)|所在路径:shell内置命令|执行权限:所有用户|
语法:cd [目录]
功能描述:切换目录
例:
$cd /tmp/bakuman //切换到指定目录
$cd .. //返回上一级目录
pwd
命令名称:pwd(print working directory)|所在路径:/bin/pwd|执行权限:所有用户|
语法:pwd
功能描述:显示当前目录
例:$pwd
.表示当前目录 …表示上一级目录
*rmdir
命令名称:rmdir(remove empty directories)|所在路径:/bin/rmdir|执行权限:所有用户|
语法:rmdir [目录名]
功能描述:删除空目录
例:
$ rmdir /tmp/bakuman
cp
命令名称:cp(copy)|所在路径:/bin/cp|执行权限:所有用户|
语法:
cp -rp [源文件或目录] [目标目录] 可同时复制多个文件目录,且时间是以目前的时间为准(两个里面选一个用)
-r 复制目录 复制的过程中,复制过的目录或者文件名称是可以同时修改的
-p 保留文件属性
功能描述:复制文件或目录
mv
命令名称:mv(move)|所在路径:/bin/mv|执行权限:所有用户|
语法:mv [原文件或目录] [目标目录]
功能描述:剪切文件、改名
不需要加-r,-p这种选项
rm
命令名称:rm(remove)|所在路径:/bin/rm|执行权限:所有用户|
语法:
rm -rf [文件或目录]
-r [删除目录]
-f [强制执行]
-rf [强制删除目录]
功能描述:删除文件
文件处理命令(小范围)
touch
命令名称:touch|所在路径:/bin/touch|执行权限:所有用户|
语法:touch[用户名]
功能描述:创建空文件
例:
$ touch bakuman //如果没有指定绝对路径,就表示在当前目录下执行操作
$ touch /root/bakuman //指明详细路径
$ touch bakuman esther //创建了两个文件,一个是bakuman,一个是esther|可同时对多个文件进行操作
如果要创建有' '的文件,就必须用双引号引起来
cat
命令名称:cat|所在路径:/bincat/|执行权限:所有用户|
语法:cat [文件名]
功能描述:显示文件内容
cat -n 可显示行号
例:
$ cat /etc/issur
$ cat -n /etc/services
tac
命令名称:tac|所在路径:/bin/tac|执行权限:所有用户|
语法:tac [文件名]
功能描述:显示文件名称[反向显示]
例:
$tac /etc/issue
more
命令名称:more|所在路径:/bin/more|执行权限:所有用户|
语法:
more [文件名]
(空格)或f 翻页
(Enter) 换行
q或Q 退出
功能描述:分页显示文件内容
例
$ more /etc/services
less(more的加强版)
命令名称:less|所在路径:/bin/less|执行权限:所有用户|
语法:less[文件名]
功能描述:
分页显示文件内容,可使用pg up向上翻页(一页)与↑向上换行(一行)
使用/+‘关键字’,可进行搜索也可以按’n’匹配下一个关键词所在位置
例:
$ less /etc/services
head
命令名称:head|所在路径:/usr/bin/head|执行权限:所有用户|
语法:head [文件名]
功能描述:
显示文件的前几行
-n 指定行数
例:
$ head -n 20 /etc/services //当没有具体行数是会显示钱10行的内容
tail
命令名称:tail|所在路径:/usr/bin/tail|执行权限:所有用户|
语法:tail [文件名]
功能描述:
显示文件的后几行
-n 指定行数
例:
$ tail -n 20 /etc/services //当没有具体行数时会显示后十行的内容
链接命令
ln
命令名称:ln(link)|所在路径:/bin/ln|执行权限:所有用户|
语法:
ln -s [源文件] [目标文件]
ln -s 创建软链接
功能描述:
生成链接文件
例:
$ ln -s /etc/issue /tmp/issue.soft //创建文件/etc/issue的软链接/tmp/issue.soft
$ ln /etc/issue /tmp/issue.hard //创建文件/etc/issue的硬链接/tmp/issue.hard
/*
软链接:类似于的Win的快捷方式,只是一个符号链接链接指向源文件
/tmp/issue.soft -> /etc/issue
硬链接:相当于拷贝文件,相比与cp -p 他可以同步更新,另,一个i节点可以映射到多个文件
*/
- 硬链接不能跨分区(所以在Manjaro系统下上面指令会失效)
- 硬链接不能指向目录,但软链接可以
- 通过i节点识别
crtl+c可终止程序