1、FHS标准(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准)
两层规范:
(1) / 下面各个目录存放什么文件数据?
/etc:存设置文件
/bin、/sbin:存可执行文件
(2) 针对/usr、/var子目录定义
/var/log
/usr/share
2、FHS标准文档
3、目录路径
cd 切换目录
. 表示当前目录
.. 上一级目录
ls -a 查看隐藏文件
- 上一次所在目录
~ 当前用户home目录
pwd 获取当前路径
(1)绝对路径
以根" / "目录为起点的完整路径,以你所要到的目录为终点,表现形式如: /usr/local/bin
,表示根目录下的 usr
目录中的 local
目录中的 bin
目录。
(2)相对路径
以当前目录 .
为起点,以你所要到的目录为终点,表现形式如: usr/local/bin
(这里假设你当前目录为根目录)。
绝对路径
cd /usr/local/bin
相对路径
cd ../../usr/local/bin
4、Linux文件基本操作
包括:新建、复制、删除、移动文件与文件重命名、查看文件、查看文件类型、以及编辑文件。
(1)新建(touch)
touch 新建空白文件
cd ~
touch test
mkdir 新建目录
mkdir mydir
-p 创建父目录
(2)复制(cp)
cp (copy)命令复制一个文件到指定目录
复制文件
cp test father/son/grandson
复制目录
不可用cp直接复制目录,否则出现以下错误:
需要在文件复制前加上-r或者-R(表示递归复制):
cp -r father family
(3)删除(rm)
使用 rm
(remove files or directories)命令删除一个文件:
rm test
有时候你会遇到想要删除一些为只读权限的文件,直接使用 rm
删除会显示一个提示,如下:
rm -f test
删除目录:
rm -r family
(4)移动文件(mv:mv 源目录文件 目的目录)
mv
(move or rename files)命令移动文件(剪切)
例:
mkdir Documents
$ touch file1
$ ls file1
$ file1
$ mv file1 Documents
$ cd Documents
$ ls
file1
(5)重命名文件(mv 旧的文件名 新的文件名)
$ mv file1 myfile
批量重命名(rename)
使用通配符批量创建 5 个文件:
touch file{1..5}.txt
批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件:
rename 's/\.txt/\.c/' *.txt
批量将这 5 个文件,文件名和后缀改为大写:
rename 'y/a-z/A-Z/' *.c
(5)查看文件(cat
,tac
和 nl
)
cat
为正序显示,tac
为倒序显示
nl
命令,添加行号并打印,这是个比 cat -n
更专业的行号打印命令。
-b : 指定添加行号的方式,主要有两种:
-b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)
-b t:只列出非空行的编号并列出(默认为这种方式)
-n : 设置行号的样式,主要有三种:
-n ln:在行号字段最左端显示
-n rn:在行号字段最右边显示,且不加 0
-n rz:在行号字段最右边显示,且加 0
-w : 行号字段占用的位数(默认为 6 位)
(6)分页查看文件(more
和 less
命令分页查看)
打开后默认只显示一屏内容,终端底部显示当前阅读的进度。可以使用 Enter
键向下滚动一行,使用 Space
键向下滚动一屏,按下 h
显示帮助,q
退出
(7)查看文件头几行(head
和 tail
)
-f
,这个参数可以实现不停地读取某个文件的内容并显示
(8)查看文件类型()
$ file /bin/ls
(9)编辑文件
vimtutor