Linux系统中没有盘符的概念,所有的文件和目录都被组织成以一个根节点开始的倒置的树状结构,
文件系统的最顶层是由根目录开始的,系统使用 / 来表示根目录,呈现为一个树状结构。

FHS(文件系统层次结构标准)标准目录讲解
绝对路径:由根目录(/)开始写起的文件名或目录名称, 例如 /home/tom/
相对路径:相对于目前路径的文件名写法。 例如 ./home/tom或 …/…/home/tom/ 等等。反正开头不
是 / 就属于相对路径的写法
相对路径就是以 “你当前所在路径的相对位置” 来表示的。举例来说,如果目前在 /home 这个目录
下, 如果想要进入 /var/log 这个目录时,可以采用下列两种写法:
cd /var/log (绝对路径)
cd …/var/log (相对路径)
因为你在 /home 下面,所以要回到上一层 (…/) 之后,才能继续往 /var 来移动,特别注意下列两
个特殊的目录:
. 代表当前的目录,也可以使用 ./ 来表示;
… 代表上一层目录,也可以 …/ 来代表
ls命令:显示指定工作目录下的内容,如果不提供参数,ls将在当前目录上运行。

-a:列出指定目录下的所有文件和子目录(包括以“.”开头的隐含文件)。

-d:如果是目录,则显示目录的属性而不是目录下的内容。

-l:使用长格式显示文件或目录的详细属性信息。或直接ll


-R:列出所有子目录下的文件

-h:与-l参数结合使用,可以将文件大小带单位显示

pwd命令:当前目录绝对路径
man 所要查询的命令 例如:man ls 按q退出,查询所需命令的帮助文档。
cd命令:改变当前工作目录,当不指定目标目录时,将被带到主目录。
cd //进入主目录

cd ~ //进入主目录

cd / //回到根目录

cd .. //回到上一级目录

cd - //返回到前一个工作目录

cat命令:查看文件的内容,将文件的内容输出到标准输出
格式:cat [选项] 文件名

-b 列出行号,仅针对非空白行号显示,空白行不标行号;

-n打印出行号,连同空白行也会有行号,与-b的选项不同

cat -n >> 文件名 可以在文件中写入,若文件不存在则创建,按ctrl + c 退出,> 为覆盖。

tac [选项] 文件名
nl命令:计算文件中行号,将输出的文件内容自动的加上行号
格式:nl [选项] 文件名

-b 指定行号指定的方式,主要有两种:
-b a 表示不论是否为空行,也同样列出行号(类似 cat -n)

-b t 如果有空行,空的那一行不要列出行号(默认值)

more命令:分页查看文件的内容
格式:more [选项] 文件名
空格键(space):代表向下翻一页
回车键(Enter):代表向下翻一行
b 键:往前查看一页,不过这动作只对文件有用,对管道无用
q 键:退出。

less命令:less命令 与 more命令 非常类似,但less命令 可以更加随意地浏览文件,而且 less 在查看之前不会加载整个文件
格式:less [选项] 文件名
空格键向下翻动一页
Pagedown向下翻动一页
Pageup向上翻动一页
/字符串向下搜寻[字符串]功能
?字符串向上搜寻[字符串]功能
n重复前一个搜寻(与/或?有关)
N反向重复前一个搜寻(与/或?有关)
q离开less这个程序

head命令:用于查看文件的开头部分的内容,默认显示 10 行的内容
格式:head [选项] 文件名

-n指定显示的行数,如果为负数则表示不显示后面的多少行


tail命令:用于查看文件的结尾部分的内容,默认显示 10 行的内容
格式:tail [选项] 文件名

-n指定显示的行数

-f实时查看被添加到一个文件中的内容


按ctrl + c 退出

grep命令:在指定文本文件中匹配字符串,输出匹配字符串所在行的全部内容。(用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。)
格式:grep [选项] 要查找的内容 目标文件名

-n在文件中查找指定内容并显示匹配行的行号

-E用来扩展选项为正则表达式(grep -E 选项可以用来扩展选项为正则表达式。 如果使用了grep 命令的选项-E,则应该使用 | 来分割多个pattern,以此实现OR操作。)
-v对匹配的结果进行反选即显示不包含匹配文本的所有行。

locate命令:用于查找符合条件的文件
格式:locate [选项] 要查找的文件(选项后输入的内容都被当做文件名处理,与路径无关!!!!!!)

-i忽略大小写,例如locate -i ~/r忽略大小写搜索当前用户目录下所有以 r 开头的文件 :

-r使用基本正则表达式进行匹配,搜索基本正则表达式 REGEXP 来代替模式,即使用正则表达式来匹配文件名
locate -r st$ # 使用-r选项查找以"st"结尾的文件或目录

updatedb更新locate命令的数据库
find命令:在指定目录下查找文件
格式:find 路径 选项 要查找的文件
-name 通过文件名查找文件
示例:find / -name ??? 查找文件名长度为三个字符文件
示例:find . -name "[a-z]*[4-9].log" 在当前目录查找文件名以小写字母开头,最后是4到9加上.log结束的文件。
要按指定的时间戳搜索文件,我们需要知道 Linux 系统中的 3 个不同的时间戳:
访问时间戳 (atime) :最后一次读取文件的时间。
修改时间戳 (mtime) :文件内容最后一次被修改的时间。
更改时间戳 (ctime) :上次更改文件元数据的时间(如,所有权、位置、文件类型和权限设置)
-mtime n n 为数字,意义为在 n 天之前的『一天之内』被更动过内容的文件;
示例:find /root -mtime 0 查找从现在开始到 24 小时前被更动过内容的文件
-mtime +n 列出在 n 天之前(不含 n 天本身)被更动过内容的文件;
示例:find /root -mtime +1 查找大于等于2天前被更动过内容的文件
-mtime -n 列出在 n 天之内(含 n 天本身)被更动过内容的文件
示例:find /root -time -2 查找小于等于2天内被更动过内容的文件
-newer file file 为一个存在的文件,列出比 file 还要新的文件档名
-user 通过用户名查找文件
-exec 该参数后面跟命令,能够进行额外的动作
示例: find /etc/ -name shadow -exec ls -l {} \;
该示例中特殊的地方有 {} 以及 ; 还有 -exec 这个参数,这些东西的意义为:
tr [原始字符] [目标字符]cat test.txt | tr a-z A-Z
wc命令:统计指定文本的行数、字数、字节数
格式:wc [参数] 文件
如果不带参数,命令执行结果格式为行数 单词数 字节数 文件名

-l只显示行数

-w只显示单词数

-c只显示字节数

cut命令:用于按“列”提取文本字符
格式:cut [参数] 文件
-f:指定要查看的区域
-d:自定义分隔符
mkdir命令:创建一个新目录
格式:mkdir [选项] 要创建的目录
-p创建目录结构中指定的每一个目录,如果目录不存在则创建目录,如果目录已存在也不会被覆盖
touch命令:创建一个新的空文本文件,或者修改文件时间
格式:touch [选项] 要创建的文件名
-a:修改atime(最后一次读取文件的时间)
-m:修改mtime(最后一次修改文件内容的时间)
-t:指定时间 如:202101010601
echo "网络空间安全人才" > 123.txt //输出网络空间安全人才到123.txt文件echo "网络空间安全人才" >> 123.txt //追加输出网络空间安全人才到123.txt文件cat > 文件名建立一文件,然后把接下来的键盘输入写入文件,直到按Ctrl+D为止cp命令:用于复制文件或目录,目录不能直接复制,需要加上-r参数
格式:cp [选项] 源文件 目标文件
-b:若需覆盖文件,则覆盖前先行备份
-r:复制目录,实现将源目录下的文件和子目录一起复制到目标目录中
-f:如果目标文件或目录已经存在,则将其覆盖,并不作提示
(由于在CentOS中 cp 命令设置了别名,所以 -f 参数可能会被忽略,可以在命令前添加符号\忽略别名的设置。例如:\cp -rf test …/test)
-p:连同文件的属性(权限、用户、时间)一起复制过去
mv命令:用于移动或重命名目录与文件
-b若需覆盖文件,则覆盖前先行备份
-f如果目标文件已经存在,不会询问而直接覆盖;
rm命令:用于删除一个文件或者目录
-f 强制删除文件
-r 递归删除目录