Skip to content

基础命令

1. 文件系统

1.1. pwd

显示当前工作目录的绝对路径

image-20211021135945507

ls

显示当前工作目录的文件和目录

语法

ls (选项)

选项

选项说明
-a显示当前目录所有的文件和目录,包括隐藏的
-l以列表的方式显示信息

栗子

  1. ls -a
shell
ls -a

image-20211021140629311

  1. ls -l

以长格式显示目录下的内容列表, 不会显示隐藏的文件或者目录,可以多选项显示ls -al

shell
ls -l

image-20211021140909119

mkdir

创建文件夹(多层文件夹需要加 -p)

语法

mkdir (选项) (参数)

选项

选项说明
-p , --parents若所要建立目录的上层目录目前尚未建立,则会一并建立上层目录
-m--mode <目标属性> 建立目录的同时设置目录的权限;

栗子

  1. 最简单的创建文件夹
shell
mkdir software
mkdir /software
  1. 创建多层文件夹
shell
# 会创建一个三层文件夹
mkdir -p software/server/shop
  1. 创建多个文件夹
shell
# 会创建 software/server 然后再创建admin和api文件夹
mkdir -p software/server/{admin,api}
# 会创建 software1,software-java,software-py三个文件夹
mkdir software{1,-java,-py}
  1. 创建文件夹并赋予权限
shell
mkdir -p -m 700

mv

作用

  1. 移动文件或者文件夹
  2. 修改文件名称

rm

删除文件或者文件夹

选项

选项说明
-d直接把欲删除的目录的硬连接数据删除成 0,删除该目录
-f强制删除文件或目录
-i删除已有文件或目录之前先询问用户
-r 或-R递归处理,将指定目录下的所有文件与子目录一并处理
--preserve-root不对根目录进行递归操作
-v显示指令的详细执行过程

作用

  1. 删除文件或者文件夹

如果直接删除一个目录会报错,对于目录类型我们需要加 -r, 而 -f 的作用是不需要询问我是否删除下面的每一个文件或者目录,直接强制删除

image-20211021165308916

shell
# 最常用的
rm -rf ./level3

rmdir

删除空目录。rmdir 不能删除非空的目录。如果需要删除非空的目录,需要使用 rm -rf

cp

将一个或多个源文件或者目录复制到指定的目的文件或目录

语法

cp (选项) 源文件 目标文件

选项

选项说明
-a将文件的特性一起复制
-p连同文件的属性一起复制,而非使用默认方式,与-a 相似,常用于备份
-i若目标文件已经存在时,在覆盖时会先询问操作的进行
-r递归持续复制,用于目录的复制行为
-u目标文件与源文件有差异时才会复制

栗子

  1. 复制文件夹
shell
# -r 的作用是会递归复制文件夹下的内容
cp -r level1 level2
  • 如果 level2 不存在, 那么 level2 的结构是 /usr/local/study/linux/level2/level11/mks

  • 如果 level2 存在,那么 level2 的结构是?

image-20211021164732059

会变成 /usr/local/study/linux/level2/level1/level11/mks

  1. 将文件夹 level1 中的内容复制到 level2 文件夹中
shell
cp -r ./level1/* ./level2
  1. 复制的时候存在相同的文件询问自己
shell
cp -r -a ./level1/* ./level2

image-20211021165026485

touch

有两个功能:

  • 用于把已存在文件的时间标签更新为系统当前的时间(默认方式),它们的数据将原封不动地保留下来;
  • 用来创建新的空文件(基本都用这个功能)

语法

touch (选项) 文件名

选项

-a:或--time=atime或--time=access或--time=use  只更改存取时间;
-c:或--no-create  不建立任何文件;
-d:<时间日期> 使用指定的日期时间,而非现在的时间;
-f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
-m:或--time=mtime或--time=modify  只更该变动时间;
-r:<参考文件或目录>  把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
-t:<日期时间>  使用指定的日期时间,而非现在的时间;
--help:在线帮助;
--version:显示版本信息。

栗子

  1. 创建文件
shell
# 创建一个名叫mks的文件(不能创建目录)
touch mks

ln

2. 文件查看

cat

连接文件或标准输入并打印。这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用。

more

less

tail

>指令

>>指令

echo

history

3. 搜索查找类

find

locate

grep

4. 压缩解压

tar

zip/unzip

gzip/gunzip