今天继续·学习一些Linux的基本指令🙂
- 增删查改
- 选项顺序不影响指令的执行
- 指令出现疯狂打印(失控)情况,ctrl+c 终止异常命令
- Linux中同一个目录下,不允许存在同名文件!
🙂查看 ☁
ls指令
语法: ls[选项][目录/文件]
功能:对于 目录,该命令列出该目录下的所有子目录与文件。
对于 文件,将列出文件名以及其他信息
(注意:ls查看的时候一定是建立在 当前目录下存在此目录和文件 的基础上)
ls
- 列出当前目录下的所有目录和文件
ls 目录
- 该命令列出该目录下的所有子目录与文件
ls 文件
- 将列出文件名以及其他信息
ls -l
- 列出当前目录下 所目录及文件文件的详细信息。(不包括隐藏文件)
- ls -l == ll
ls -la
- 列出当前目录下 所目录及文件文件的详细信息。(包括隐藏文件)
- ls -la == ls -al == ls -l -a == ls -a -l
ls -ld 目录
- 该目录下的某个目录/文件的详细信息
ls最常用就是 ls ls -l ls -la关于ls和ls 系列选项在Linux指令(1)中也详细阐述了,忘记的小伙伴可以去复习一下。
pwd指令
- pwd显示用户当前所在的目录
stat指令
- stat 指令是查看文件/目录更加详细的信息
tree指令
- tree以树状形式显示目录结构(包括目录/文件)
- 使目录结构/路径 更加清晰
- 安装tree指令:yum -y install tree 输入这个指令即可安装tree成功!
但是我们在刚开始实践的时候发现系统显示:command not found 这表示系统没有找到这个tree指令,系统要先找到这个指令,才能执行这个指令。所以我们需要在系统上装这个指令,即就是拷贝到操作系统下的路径下。
🙂增加☁
touch指令
语法:touch[选项]文件名
功能:touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件。
(关于选项--后面博文讲解)
- 在当前目录下,创建一个新的普通文件
- d是目录
- -是普通文件
mkdir指令
语法: mkdir[选项]dirname
功能:在当前目录下创建一个名为 “dirname”的目录
mkdir 目录名
- 在当前目录下创建一个名为"dirname"的目录(空目录)
mkdir -p 目录名
- mkdir –p test/test1 : 递归建立多个目录
- -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立好那些尚不存在的目录,即一次可以建立多个目录。
🙂删除☁
rmdir指令
语法:rmdir [-p][dirName]
功能:删除空目录
适用对象:具有当前目录操作权限的所有使用者
常用选项:-p 当子目录被删除后如果父目录也变成空目录的话,就连带父目录一起删除。
(注意只能删除目录且位空目录)
rm指令
语法:rm [-f-i-r-v][dirName/dir]
适用对象:所有使用者
功能:删除文件或目录rm 普通文件 rm -rf 目录 r 递归 f 强制
注意:删除的时候一定一定要小心和仔细,别把根目录给删了!!
rm 文件
- 仅对当前目录下存在文件删除操作。
- 若为root用户会询问:rm: remove regular empty file ‘dir’? yes(y)/no(n)
- 输入错误ctrl+回车即可
- 加上选项-f ,就会强制删除,不会询问。
rm -r 目录/文件
- -r 删除目录及其下所有文件
- -r 是递归式删除目录/文件 底下所有目录和文件
rm -rf 目录/文件
- -rf 是递归式强制删除目录/文件 底下所有目录和文件
🙂修改☁
cp指令
语法:cp [选项] 源文件或目录 目标文件或目录
cp src dst(cp -rf src dst):src拷贝到dst目录下。
dst带路径的文件名:拷贝到指定目录下,顺便进行重命名。(携带绝对路径/相对路径)
功能: 复制文件或目录(拷贝复制粘贴)
常用选项:
- -f 或 --force 强行复制文件或目录, 不论目的文件或目录是否已经存在
- -i 或 --interactive 覆盖文件之前先询问用户
- -r 递归处理,将指定目录下的文件与子目录一并处理。若源文件或目录的形态,不属于目录或符号链接,则一律视为普通文件处理
- -R 或 --recursive递归处理,将指定目录下的文件及子目录一并处理
cp 文件
- 仅对当前目录下存在 文件 拷贝操作。(顺便可以修改文件名)
cp -rf 目录/文件
- -rf 是递归式强制拷贝目录/文件 底下所有目录和文件(顺便可以修改文件名)
mv指令
语法: mv [选项] 源文件或目录 目标文件或目录(路径)
mv src dst(cp -f src dst):src剪切到dst目录下。
dst带路径的文件名:剪切到指定目录下,顺便进行重命名。(携带绝对路径/相对路径)
功能:
- 在指定的目录下,对一个文件/目录进行重命名
- 将指定目录下的文件或者目录,剪切到指定的目录下(顺便可以重命名)
常用选项
- -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
- -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!
【作用1】
【作用2】
🙂其他☁
cd指令
语法:cd 目录名(change dirctionary)
功能:改变工作目录。将当前工作目录改变到指定的目录下。
(注意:建立在 当前目录下存在此目录和文件 的基础上)
cd 目录名
语法:cd 路径(绝对路径/相对路径)
功能:改变工作目录。将当前工作目录改变到指定的路径目录下。
(目录二叉树下的任意目录//只要存在,路径准确)
cd 绝对路径
- cd指令可以通过绝对路径进入下层 / 也可以回退到上层
cd 相对路径
- cd指令可以通过 相对路径 回退到上层
cd -
- 返回最近访问目录,跳转到我们最近依次所处的路径下。
cd ~
- 进入用户家目
which指令
- which 让系统打印出所指定的 指令名称 在系统中所在的路径
alias指令
- alias 别名='正规名'
- alias也是一个Linux的命令,给其他命令起一个别名。
man指令
Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是man
1 是普通的命令,可执行程序/指令。
2 是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调用这个函数,需要加什么头文件)。
3 是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备文件。
5 是指文件的格式,比如passwd, 就会说明这个文件中各个字段的含义。
6 是给游戏留的,由各个游戏自己定义。
7 是附件还有一些变量,比如向environ这种全局变量在这里就有说明。
8 是系统管理用的命令,这些命令只能由root使用,如ifconfig。
- man [选项] 命令
- -k 根据关键字搜索联机帮助
- -a 将所有章节的都显示出来,从第一章到最后一章,凡是含有这个查找元素(printf),他会继续往后面搜索,直到所有章节都搜索完毕。
- 按下q 退出 ,按 上下键 滑动页面
- num 只在第num章节找,系统默认man 命令 是从第一个手册开始向后查询直到找到就停止
- 安装man指令:yum -y install man-pages
- 比较常用就是第一个和第二个手册。第二个手册很重要!!
whoami指令
- whoami查看当前正在使用Linux系统的用户是谁
- 表述的时候,经常说我们在xxx路径下,"我们"--用户
【补充】知识
家目录
在window是中的用户默认的家目录是:C:\Users\XXX windows和Linux都是多用户操作系统。
windows:C盘---->用户---->用户名xxx---->有桌面。桌面的本质是文件夹,当你登录windows,确认你是谁(用户),根据用户名找到该用户目录下的"桌面文件夹",将桌面文件夹显示成为图形化界面。
类比windows,Linux下指定的用户也有自己的家目录。
对于root账号:默认的家目录 /root(超级管理员账号)
对于普通用户:默认家目录/home/xxx,xxx新建的用户名
任何一个用户,首次登录,所处的路径都是自己的家目录。
指令/可执行程序
指令的本质都是程序。指令 == 程序 == 可执行程序
windows的安装和卸载是在干什么?把可执行程序 拷贝/删除 到系统路径下。
指令 也是文件(内容+属性,内容是二进制的)
❓1
用什么去查找这些指令的路径呢?which!
指令的两种执行方式:1.指令 2.路径下的指令
❓2
这里的alias是什么? alias
alias也是一个Linux的命令,给其他命令起一个别名。
这里颜色不同why?
因为alias ls='ls --color=auto'
目录/文件的ACM时间
stat 指令是查看文件目录更加详细的信息
tree和ls *
tree:以树状的图示清晰形象的展示当前目录下所有的目录/文件。
ls * :展示当前目录下所有文件和目录,表示当前目录下的所有内容(目录/文件)。
*:表示一个通配符,匹配任意文件名。
a*b:表示以a开头,以b结尾的所有内容。
最后提醒!删除的时候一定要想清楚删除的目录和文件!不要把根目录给删了!
- 适用对象
- 选项作用
- 思维导图
✔✔✔✔✔最后感谢大家的阅读,若有错误和不足,欢迎指正!乖乖敲代码哦!
代码---------→【唐棣棣 (TSQXG) - Gitee.com】
联系---------→【邮箱:2784139418@qq.com】