Linux指令(一) 简单了解部分指令

目录

[一. 快速认识一些简单的linux指令](#一. 快速认识一些简单的linux指令)

[1.1 clear](#1.1 clear)

[1.2 pwd](#1.2 pwd)

[1.3 mkdir 和 ls](#1.3 mkdir 和 ls)

[1.4 touch](#1.4 touch)

[二. linux 基本指令详解](#二. linux 基本指令详解)

[2.1 ls](#2.1 ls)

[2.1.1 相关小知识: 文件和目录](#2.1.1 相关小知识: 文件和目录)

[2.1.2 ls -l](#2.1.2 ls -l)

[2.1.3 ls -a](#2.1.3 ls -a)

[2.1.4 ls 指定目录](#2.1.4 ls 指定目录)

[2.1.5 ls -d](#2.1.5 ls -d)

[2.2 pwd](#2.2 pwd)

[2.2.1 相关小知识:路径分隔符](#2.2.1 相关小知识:路径分隔符)

[2.3 cd](#2.3 cd)

[2.3.1 相关小知识: linux 根目录](#2.3.1 相关小知识: linux 根目录)

[2.3.2 相关小知识: . 和 ..](#2.3.2 相关小知识: . 和 ..)

[2.3.3 cd 目录名](#2.3.3 cd 目录名)

[2.3.4 cd ~](#2.3.4 cd ~)

[2.3.5 cd -](#2.3.5 cd -)

[2.4 Linux 目录结构](#2.4 Linux 目录结构)

[2.4.1 路径](#2.4.1 路径)

[2.5 touch](#2.5 touch)

[2.6 mkdir](#2.6 mkdir)

[2.7 tree](#2.7 tree)

[2.7.1 tree 的下载](#2.7.1 tree 的下载)

[2.7.2 tree 的使用](#2.7.2 tree 的使用)

[2.7.3 相关小知识: ctrl+c](#2.7.3 相关小知识: ctrl+c)

[2.8 alias](#2.8 alias)

[2.8.1 实操](#2.8.1 实操)

[2.9 rmdir](#2.9 rmdir)

[2.10 rm](#2.10 rm)

[2.10.1 rm -f](#2.10.1 rm -f)

[2.10.2 rm -r](#2.10.2 rm -r)

[2.10.3 rm -i](#2.10.3 rm -i)

[2.11 man](#2.11 man)

[2.11.1 示例](#2.11.1 示例)

[2.11.2 man man](#2.11.2 man man)

[2.11.3 退出](#2.11.3 退出)

[2.12 cp](#2.12 cp)

[2.12.1 复制文件](#2.12.1 复制文件)

[2.12.2 复制目录(cp -r)](#2.12.2 复制目录(cp -r))

[2.12.3 cp -f](#2.12.3 cp -f)

[2.12.4 cp -i](#2.12.4 cp -i)

[三. 指令到底是什么](#三. 指令到底是什么)

[3.1 which](#3.1 which)


一. 快速认识一些简单的linux指令

1.1 clear

clear 主要用于清除历史指令。

1.2 pwd

pwd 主要用于查看当前的工作路径。

1.3 mkdir 和 ls

mkdir 主要用于在当前路径创建一个目录(文件夹)。

ls 主要用于列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

1.4 touch

touch 主要用于在当前路径创建一个普通文件。

我们会发现如果是以 d 开头说明这是一个目录,以 - 开头说明这是一个普通文件。

二. linux 基本指令详解

2.1 ls

ls 主要用于列出该目录下的所有子目录与文件。对于文件,将列出文件名以及其他信息。

2.1.1 相关小知识: 文件和目录

在认识 ls 之前我们先来认识一下 文件目录 这两个概念

在linux中,目录就等价于我们熟知的文件夹;文件我们可以看作由文件内容文件属性组成,所以哪怕我们创建一个空文件也是占用磁盘空间的,因为要存储文件属性。

2.1.2 ls -l

ls -l 相较于 ls来说会显示 子目录、文件的更多属性,而 ls 默认只显示名字。

2.1.3 ls -a

列出目录下的所有文件,包括以.开头的隐含文件(目录同理)。

所以,如果我们想要创建一个隐藏文件的时候,我们只需在文件名前面加上一个 **.**即可:touch .youcannotseeme

还有就是选项之间可以组合使用:ls -a -l、ls -l -a、ls -al、ls -la所达成的效果是一致的。

2.1.4 ls 指定目录

在之前的学习中,ls 一般是作用于当前目录,但是实际上我们也可以指定目录访问**(这里要注意的是指定目录访问时,也分为绝对路径相对路径,在直接指定目录时要注意这也是基于当前目录)****:**

2.1.5 ls -d

ls -d 的主要作用是将目录像文件⼀样显示,而不是显示其下的文件。如:ls ‒d指定目录。

2.2 pwd

pwd主要用于显示当前所处目录下的路径。

2.2.1 相关小知识:路径分隔符

windows的路径分隔符是****' \ '****:

D:\安装\Xshell

linux 的路径分隔符是' / ':

/root

2.3 cd

2.3.1 相关小知识: linux 根目录

我们在使用 pwd 显示当前所处目录的工作路径时,往往会发现开头有一个' / ',但是这不是我们前面提到的路径分隔符,而是根目录,我们可以验证一下:

2.3.2 相关小知识: . 和 ..

在使用 ls -al 的时候,我们发现出现了**...**这两个隐藏目录,这里我们来详细了解一下。

对于任何一个目录(包括空目录)来说,**系统都会默认自带 . 和 .. 目录,其中 . 代表的当前目录,.. 代表的是上级目录,**这一点我们可以在后面做出验证。

2.3.3 cd 目录名

这个语法的主要作用是:**改变工作目录。将当前工作目录改变到指定的目录下。**比如我想从 root 跳转到 mydir:

当然你也可以把路径完整写出,效果是一样的,但是要注意直接写目录名的意思是在当前目录下查找

那么我们也可以通过这个来验证 . 和 .. 的含义(我们会发现 cd .所处目录不变,cd ..则返回到了上级目录):

2.3.4 cd ~

cd ~ 可以理解为跳转到当前用户的家目录(home directory)

家目录:操作系统的用户,在登录系统之后,默认所处的路径。

对于 root 用户来说,家目录是**/root 。**

对于 普通用户(lzx为例),家目录是**/home/lzx 。**

2.3.5 cd -

cd - 可以理解是在两个最近访问的目录之间跳转。

2.4 Linux 目录结构

在之前我们提及了 linux 根目录,那么现在我们来学习一下 linux 目录结构

linux 的目录结构可以看作是一个树形结构

a. 叶子节点:一定是普通文件或者空目录。

b. 非空叶子节点:一定是一个非空目录。

2.4.1 路径

Linux 文件系统以 / 为根形成树形结构。普通目录通常只有一个父目录,因此从根目录 / 出发,沿着一级一级的目录名,就可以定位到目标文件或目录。

绝对路径:以 ' / ' 为参照位置,定位一个文件或者目录。

绝相对路径:以非' / '为参照位置,定位一个文件或者目录。

比如说我想查看 /root/mydir/mydir.c 的文件属性:

2.5 touch

touch 除了在目录下创建普通文件外,还可以对已存在的普通文件更新访问时间和修改时间。

2.6 mkdir

mkdir 除了创建目录,还可以用来创建一串路径(加上选项 -p)。

2.7 tree

tree就是把目录内容按照"树形结构"显示出来,我们同样可以指定目录(不写默认当前目录)

2.7.1 tree 的下载

博主的云服务器用的是Ubuntu,这里仅展示Ubuntu的下载指令:

bash 复制代码
tmp install -y tree

2.7.2 tree 的使用

比如我之前创建了一串路径: a/b/c/d,现在我想把目录 a 的内容以树形结构的形式展现出来:

2.7.3 相关小知识: ctrl+c

如果在命令行中出现了异常,统一尝试 ctrl+c 解决。

假如我不小心 tree / 我想终止,也可以用 ctrl+c:

2.8 alias

alias 就是给一条命令起一个"别名"。

bash 复制代码
[whb@bite-alicloud test]$ alias hello='ls -a -l -n'
[whb@bite-alicloud test]$ which hello
alias hello='ls -a -l -n'
 /usr/bin/ls
[whb@bite-alicloud test]$ hello
total 36
drwxrwxr-x 2 1003 1003 4096 Jan 11 17:59 .
drwx------ 22 1003 1003 4096 Jan 11 17:57 ..
-rw-rw-r-- 1 1003 1003 28667 Jan 11 18:29 temp.txt

2.8.1 实操

2.9 rmdir

rmdir 的作用就是删除对应路径的空目录(文件和非空目录都不行)。

2.10 rm

rm 在默认情况下只能删除文件。

2.10.1 rm -f

即使文件属性为只读(即写保护),亦直接删除。

2.10.2 rm -r

删除目录及其下所有文件**(递归删除)****。**

2.10.3 rm -i

删除前逐⼀询问确认(y 表示确认,n 就是取消)。

2.11 man

man 可以理解为是一本手册,我们想要了解陌生的指令就可以用到它。

2.11.1 示例

2.11.2 man man

man man也是可以使用的,意思是用 man 查看 man 自己的使用手册。

这里通过我们的截图会发现有 1,2,3.....的数字,我们可以理解为这是 man 的不同章节

如果我们在使用的时候加上章节,就会在对应的章节搜索,例如:

bash 复制代码
man 3 printf

就会在第三章查找对应的 printf。如果不加上章节,man 会按照系统规定的章节搜索顺序进行查找,并显示第一个匹配到的手册页。

2.11.3 退出

要退出手册的话,只要按下 q 键就可以了。

2.12 cp

cp 就是 copy(复制),用于复制文件或目录。

2.12.1 复制文件

复制文件的常见的写法有三种:

bash 复制代码
//将目标文件的副本 dstfile 拷贝到当前目录下
cp srcfile dstfile
//将目标文件拷贝到目录 dstdir 下
cp srcfile dstdir
//将目标文件的副本 dstfile 拷贝到目录 dstdir 下
cp srcfile dstdir/dstfile

2.12.2 复制目录(cp -r)

复制目录的常用写法和复制文件没什么区别,只是要额外加上一个选项**-r 。**

2.12.3 cp -f

有时我们在拷贝目录、文件的时候,如果已存在同名的目录、文件,往往会询问我们是否要对已有的文件、目录实现覆盖(y 表示确认,n 表示取消),加上选项 -f 就表示不要询问,直接覆盖。

2.12.4 cp -i

这个就是实现覆盖之前先询问下我们的意见。

三. 指令到底是什么

3.1 which

在弄清楚指令到底是什么之前,我们先来再学一个指令 which:

which 的作用是查找某个命令实际对应的可执行文件路径。

也就是说命令的本质就是一个文件。

相关推荐
小则又沐风a1 小时前
深入理解TCP协议----滑动窗口,流量控制
linux·网络协议·tcp
bosins11 小时前
WSL2 启动即崩溃?调整超时参数解决 Docker 阻塞问题
linux·docker·wsl
web守墓人12 小时前
【goed/ui】自定义组件设计思想篇
linux·windows·ui·golang
kuroomi12 小时前
Ingress-Nginx与kubernetes 网络
linux·运维·网络·kubernetes
daemon.qiang12 小时前
国内虚拟机对接 Freedesktop:Fork xserver、自建 Runner 与提交 MR 实战
linux·ubuntu·centos·gitlab·开源软件
2401_8697695914 小时前
linux 权限 指令与权限(重启之后)
linux
码农客栈14 小时前
Linux CAN 驱动
linux·驱动开发
GeW15 小时前
红帽RHCE从挂科边缘到一次过,我做对了什么
linux
时空自由民.15 小时前
WSL解决USB 串口连接问题与linux串口权限问题
linux·单片机