(一)查看目录内容ls命令

1,终端实用技巧

(1)自动补全

在敲出 文件/目录/命令 的前几个字母之后,按下Tab键

        *如果输入的没有歧义(例如重名),系统会自动补全

        *若存在其他 文件/目录/命令 ,再按Tab键,系统会提示可能存在的命令

(2)曾经使用过的命令

按 上/下 光标键可在曾经使用过的命令之间切换

如果想要退出选择,且不执行当前选中的命令,可按 Ctrl+c 退出

2,ls命令说明

(1)基础介绍 

ls是英文单词list的缩写,其功能是列出当前目录的内容,是常用命令,类似DOS下的 dir 命令

Linux下文件和目录的特点:

① Linux文件或目录名最长可以有256个字符

② 文件名以 "." 开头的文件是隐藏文件,需要用 "-a" 参数才能显示

③ "." 表示当前目录

④ ".." 表示上一级目录

⑤"~" 表示当前用户的主目录

⑥"~account" 表示该账户的主目录

(2)ls命令常用选项

参数含义
-a显示指定目录下所有子目录与文件,包括隐藏文件
-l以列表形式显示文件的详细信息
-h必须配合 -l 以人性化的方式显示文件大小,单独使用没有效果

"-l" 参数:列表形式显示,一行第一个字母若是"d",则为文件夹,若没有则是文件

 (3)ls通配符的使用

通配符主要用于在大量目录中检索特定文件 

通配符含义
*代表任意个字符
?代表任意一个字符(只能是一个)
[]表示可以匹配字符组中的任意一个
[abc]匹配a,b,c中的任意一个
[a-f]匹配 a到f 范围中的任意一个字符

 (二)切换目录cd命令

1,基础介绍

cd 是英文单词 change directory 简写,其功能为更改当前的工作目录,常用命令之一

Linux所有的 目录 和 文件名都是大小写敏感的

"/" 表示根目录,"~" 表示家目录,"." 表示当前目录,“..” 表示上一级目录

命令含义
cd切换到当前用户的主目录(/home/用户目录)
  cd ~切换到当前用户的主目录(/home/用户目录)
 cd .

  保持当前目录不变

cd ..切换到上级目录
cd -可以在最近两次目录之间切换

2,相对路径和绝对路径

相对路径:在输入路径时,最前面不是 "/" 或 "~",表示相对当前目录所在的具体位置

绝对路径:在输入路径时,最前面是 "/" 或 "~" 表示从根目录或家目录开始的具体目录位置

(三)创建和删除命令touch,mkdir,rm

1,touch命令

创建文件或修改文件时间

        若文件 不存在,则创建一个空白文件

        若文件 存在,可修改文件的末次修改日期

touch /a/b123.txt (相对路径创建文件)

2,mkdir命令

创建一个新的目录

        新建目录的名称不能和当前目录中 已有的目录或文件 重命(文件都不行)

选项含义
-p可以递归创建目录

 

 递归即套娃创建目录

3,rm命令

删除文件或目录

        使用rm命令要注意,文件删除后不能恢复,直接从磁盘删除,不是放到回收站

选项含义
-r递归的删除目录下的内容,删除文件夹时 必须加此参数
-f强制删除,忽略不存在的文件,无需提示

rm命令也可以使用通配符,即:rm *1.txt(删除末尾是1.txt的文件)

  rm -r *(删除当前目录下的所有文件夹和文件)

(四)拷贝和移动文件tree,cp,mv

命令对应英文作用
tree [目录名]tree以树状图列出文件目录结构
cp 源文件 目标文件copy复制文件或目录
mv 源文件 目标文件move

       ①移动文件或者目录

       ②文件或者目录重命名

1,tree命令

tree命令可以以树状图列出文件目录结构

tree ~ (显示家目录下的树形结构)

选项含义
-d只显示目录

2,cp命令

cp命令是将给出的 文件或目录 复制到另一个 文件或目录 中 ,类似DOS下的copy命令 

cp ~/Documents/readme.txt ./readme .txt (将家目录中的txt文件,复制到当前目录下)

选项含义
-i覆盖文件前提示
-r

若给出的源文件是目标文件,则cp

若是目录,将递归复制该目录下的所有子目录和文件,目标文件必须是一个目录名

选项-i: 使用时可保证操作足够安全建议加上

3,mv命令

mv 命令可以用来 移动文件或目录,也可以给 文件或目录重命名

mv命令用于移动文件或目录时,不用增加任何选项;但给文件重命名时要添加 -i 选项

选项含义
-i覆盖文件前提示

mv test ~/Documents/   (将当前目录中的test文件夹移动到家目录中Documents中)

mv a/b/c/123.txt .             (将当前目录中的a文件夹中b的c下的文件移动到当前目录下)

mv命令给文件或目录重命名:

①mv ./readme.txt ./123.txt    (将当前目录下的readme.txt重命名为123.txt)

  mv aaa c      (将当前目录下的aaa文件夹重命名为c文件夹)

②当给文件重命名时,为防止重命名后的文件名与已有文件名相同而导致覆盖已有文件内的容,避免造成损失,因此必须加 -i 选项以添加覆盖前的提示

(五)查看文件内容命令cat,more,grep

命令对应英文作用
cat 文件名concatenate查看文件内容、创建文件、文件合并、追加文件内容等
more 文件名more分屏显示文件内容
grep 搜索文本 文件名grep搜索文本文件内容

1,cat命令

①cat 命令可以用来 查看文件内容、创建文件、文件合并、追加文件内容等功能

②cat 会一次显示所有的内容,适合 查看内容较少 的文本文件

③格式:cat 文件名

选项含义
-b对非空输出行编号
-n对输出的所有行编号

Linux中还有一个 nl 的命令和 cat -b的效果等价

2,more命令

①more 命令可以用于分屏显示文件内容,每次只显示一页内容

②适合 查看内容较多 的文本文件

③格式:more 文件名

使用more的操作键:

操作键功能
空格键显示手册页的下一屏
Enter键一次滚动手册页的一行
b回滚一屏
f前滚一屏
q退出
/word搜索 word 字符串

3,grep命令

①Linux系统中 grep 命令是一种强大的文本搜索工具

grep 允许对文本文件进行 模式查找,所谓模式查找,又被称为正则表达式

③格式:grep 搜作文本 文件名

选项含义
-n显示匹配行和行号
-v显示不包含匹配文本的所有行(相当于求反)
-i忽略大小写

例子:grep -vn as 123.txt 

常用的两种模式查找如下:

参数含义
^a行首,搜寻以a开头的行
ke$行尾,搜寻以ke结尾的行

参数中的 a 和 ke 可以替换成其他搜索文本

grep -i ^ad 123.txt

grep -i we$ 456.txt 

(六)其他命令

1,echo 文字内容

echo 会在终端中显示参数指定的文字,通常会和 重定向 联合使用

语法:echo 输出内容

* 无需选项,只有一个参数目标是要输出的内容,复杂内容可以用双引号 "  " 包围

 我们可以通过将命令用反引号 ' 将其包围,被 ' 包围的内容,会被作为命令执行,而非普通字符

例如    echo pwd   ##直接输出pwd

           echo 'pwd'  ##直接输出当前工作目录

2,重定向 > 和 >>

① Linux允许 将终端中命令执行结果 重定向 到一个 文件

② 将本应显示在 终端上的内容 输出或者追加  到  指定文件中

其中:

①  > 表示输出,会 覆盖文件原有的内容

②  >> 表示追加,会 将内容追加到已有文件的末尾

echo 和 重定向的 联合使用

echo hello python > a   #将结果hello python写到 a文件

echo ls -lh > a      #将终端命令结果(当前目录的结构)写到 a文件中,且之前a文件中的内容被全部覆盖

3,管道 |

① 管道的符号:   | 

② Linux允许  将一个命令的输出  可以 通过管道  作为 另一个命令的输入

③ 可理解为现实生活中的管子,管子的一头塞东西进去另一边取出来,这里 |  的左右分为两端,左端塞东西(写),右端取东西(读)

常用的管道命令有:

① more:分屏显示内容

② grep:在命令执行结果的基础上查询指定的文本

命令例子:ls -lh ~        #输出家目录的文件列表

ls -lha | more        #将家目录下的文件列表(包括隐藏文件)都显示,并传递给more命令展示

ls -lha | grep vi        #该命令可以过滤一部分信息

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐