Linux入门(2)——Linux下的文件管理
文件管理命令
1.创建文件
touch file #创建一个名为file的空文件
touch file1 file2 #同时创建file1 file2个空文件
touch -t YYYYMMDDHHmm #把文件时间改为指定时间
2.创建目录
mkdir dir1 dir2 #创建dir1 dir2两个空目录
mkdir -p a/b/c/d #创建多级目录
#使用ls -R可以递归看到目录下的所有文件
3.文件删除
rm file1 file2 #删除文件时有提示
rm -f file1 #删除文件时不提示
rm -r dir1 #删除目录时不提示
rm -rf #删除目录文件时不提示
rm -rf * #删除当前所在目录的所有目录与文件
rm -rf /* ##删库跑路
4.文本编辑器
在Linux操作系统中常用的有两种文本编辑器gedit与vim
gedit file #使用图形文本编辑器file文件
gedit文本编辑器在使用时必须要有图形
vim file #进入vim的浏览模式
浏览时不能编辑文件
处于浏览模式时按 i 进入编辑模式
vim中不能使用鼠标光标控制上下,用上下左右键控制光标
按ESC退出编辑模式
:wq保存更改并退出vim浏览模式
:q 打开文件后没有进行操作可以直接退出
:q!修改文件后不想保存可以强制退出
vim异常退出时会出现下图界面
[O]pen Read-Only 只读打开文件
(E)dit anyway 继续编辑
®ecover 恢复未保存内容编辑
(D)elete it 删除.swp文件进入编辑
(Q)uit 退出当前文件编辑
(A)bort 退出vim程序
vim打开多个文件
vim -o westos1 westos2 #上下模式打开两个文件,使用CTRL+W或上|下切换
vim -p westos1 westos2 #左右模式打开两个文件,:tabn 进入下一个窗口,:tabp进入上一个窗口
5.cat显示文件的全部内容
cat file
cat -n file #显示文件内容与行号
cat -b file #显示文件内容与行号,不显示空行的行号
6.head
显示文件前多少行,默认10行
head file #显示前10行
head -5 file #显示前5行
7.tail
显示文件后多少行,默认10行
tail file #显示后10行
tail -5 file #显示后5行
8.less
进入分页浏览
less westos #进入less模式查看westos
上|下键逐行查看
PGUP|PGDN 逐页查看
/关键字 搜索关键字,n向下匹配 N向上匹配
按v进入vim模式 对文件编辑完后:wq退出返回less
在less中按q退出
9.cp
复制文件
cp oldfile newfile #复制oldfile文件到newfile
cp oldfile1 oldfile2 objectdir #复制多个文件到目标目录
cp -r olddir newdir #递归复制原目录下所有内容
10.mv
移动文件
mv oldfile newfile #重命名文件
mv file1 file2 objectdir #移动多个文件到目标目录
mv dir1 dir2 objectdir #移动多个目录到目标目录
11.file
file westos #查看文件westos的真实类型
12.wc
文件容量统计
wc -l filename #行数
wc -m filename #字符数
wc -w filename #单词数
wc -c filename #字节数
13.Linux中的文件寻址
FHS(Filesystem Hierarchy Standard):定义了Linux系统中的主要目录及存放的内容,多数Linux发行版都遵循FHS规则。
/ :为顶级目录,整个文件系统的起点,在 / 目录下存在多个二级目录。
#系统二级目录
/boot #Boot loader文件,如kernels;
/etc #全系统的配置文件;
/lib #/bin/和/sbin中必须的依赖库;
/lib64 #64位函数库;
/mnt #临时挂载的文件系统;
/proc #进程和内核信息以文件的形式呈现的虚拟文件系统;
/run #运行时的变量数据,从本次启动到现在的系统信息;
/srv #提供的特定站点的数据。web服务器提供的数据和脚本等;
/tmp #临时文件,通常在重启后清空,并严格控制大小;
/var #各种系统运行时,内容会不断变化的文件,如日志文件等;
/bin #系统常规命令;
/sbin #系统管理命令;
/dev #设备文件;
/home #普通用户家目录集合,此目录中的子目录为普通用户家目录;
/root #超级用户家目录;
/opt #第三方软件安装位置;
/sys #关于内核设定目录;
/usr #unix system resource 多数系统资源都在此目录中;
相对路径:省略了用户当前所在的系统位置名称,只有在管理当前所在系统目录中子文件时才能使用系统中。不以/开有的文件名称都为相对路径,在程序操作时会自动识别当前路径的信息并关联操作目标。
绝对路径:通常以/开头,完整描述文件在系统中的位置,在任何场景下都可以使用,不会考虑当前系统位置。
14.pwd
pwd #显示当前工作的目录
15.cd
切换当前的目录
cd #.. 返回上级目录
#../.. 返回两级目录
#/ 返回根目录
16.ls
ls #显示当前目录中的文件名称
ls file #显示指定文件名称
ls dir #显示指定目录中内容的名称
ls -d dir #显示目录本身的名称
ls -l file #显示文件属性
ls -ld dir #显示文件本身属性
ls -a dir #显示目录中所有文件名称包括隐藏文件
ls -s #显示文件大小
ls -R dir #递归显示目录当中的内容
17.文件批量处理
字符 | 含义 |
---|---|
* | 匹配0~任意字符 |
? | 匹配单个字符 |
[[:alpha:]] | 匹配单个字母 |
[[:lower:]] | 匹配单个小写字母 |
[[:upper:]] | 匹配单个大写字母 |
[[:digit:]] | 匹配单个数字 |
[[:alnum:]] | 匹配单个数字或字母 |
[[:punct:]] | 匹配单个符号 |
[[:space:]] | 匹配单个空格 |
[x-y] | 匹配x-y中任意单个字符,如a[1-3]b,可为a1b,a3b… |
[!x-y] | 匹配非x-y中任意单个字符,如a[!a-z]b,可为a1b,a2b… |
{string1,string2,…} | 匹配集合中的每一个元素,如string1,string2 |
字符集合表示方法
[] #条件是或者关系是模糊匹配,对象和几个对比匹配就操作
[1-10] 1到10 [!d-f]| [ ^d-f]除了d-f以外
{} #点名机制,精确指定集合中的每一个元素
{1…10} 1-10 {a…c} a-c
符号 | 含义 |
---|---|
~ | 默认代表当前用户家目录 |
~username | 指定的用户家目录 |
~+或 . | 当前目录 |
~- | 当前目录之前所在目录 |
. . | 当前目录的上级目录 |
TEXT