Ubuntu 20.04 LTS基础命令总结
Posted 十九万里
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu 20.04 LTS基础命令总结相关的知识,希望对你有一定的参考价值。
1、常用的Shell命令
磁盘管理
cd
cd命令用于切换当前工作目录至指定的目录。
cd [dirName]
dirName
:要切换的目标目录
df
df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计。
df [选项] ... [file] ...
-a
,--all
包含所有的具有0 Blocks的文件系统-h
,--human-readable
使用易于阅读的格式展示
du
du命令用于显示目录或文件的大小,会显示指定的目录或文件所占用的磁盘空间。
du [选项] [目录或文件]
-a
,-all
显示目录中所有的文件大小-h
,--human-readable
以K,M,G为单位,使用易于阅读的格式展示
mkdir
mkdir命令用于建立指定名称的子目录。
mkdir [-p] dirName
-p
:确保目录名称存在,不存在就建一个
pwd
pwd命令用于显示当前工作目录。
pwd
ls
ls命令用于显示指定目录下的内容。
ls [选项][name...]
-a
:显示所有文件及目录(Linux默认以点"."开头的隐藏文件或目录不会显示,使用-a
可以显示)-l
:除了显示文件名,还将显示文件类型、权限、拥有者、文件大小等信息-r
:以文件名称进行倒序排序后显示-t
:以文件创建时间排序后显示-R
:递归列出子目录下的文件
文件管理
cat
cat命令用于查看文件并打印到标准输出设备上。
cat [选项] fileName
-n
,--number
:从1开始对所有输出进行行数编号-b
,--number-nonblank
:从1开始对所有输出进行行数编号,但对于空白行不编号-s
,--squeeze-blank
:当遇到有连续两行以上空白行,就替换为一行空白行
chmod
chmod命令可以改变文件的访问权限。
Linux的文件调用权限分为三级:文件拥有者、群组、其他。
chmod [选项] [参数] file...
参数格式
[ugoa...][[+-=][rwxX]...][,...]
u
表示文件的拥有者,g
表示与拥有者属于同一个群组,o
表示其他人,a
表示三者皆是+
表示增加权限,-
表示取消权限,=
表示唯一设定权限r
表示可读取,w
表示可写入,x
表示可执行
chown
chown命令可以将指定文件的拥有者改为指定的用户或组。
一般来说,这个指令只有root用户使用。一般使用者没有权限可以改变别人的文件拥有者,也没有权限把自己的文件拥有者改为别人。只有root才有这样的权限。
chown [选项] user[:group] file...
user
:新的文件拥有者的IDgroup
:新的文件拥有者的组
cp
cp命令主要用于复制文件或目录。
cp [选项] source... target
-a
:此选项通常在复制目录的时候使用,它保留链接、文件属性,并复制目录下的所有内容-f
:覆盖已经存在的目标文件而不给出提示-i
:在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖-r
:如果源文件时一个目录文件,递归复制该目录下的所有子目录和文件
diff
diff命令用于比较文件的差异。
diff以逐行的方式,比较文本文件的异同处。如果指定要比较目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。
diff [选项] [文件或目录1] [文件或目录2]
file
file命令用于辨识文件类型。
file [选项] [文件或目录...]
-b
:列出辨识结果,不显示文件名称-i
:显示MIME类别
find
find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
find path -option [ -print ] [ -exec -ok command ] {} \\;
find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。
expression 中可使用的选项有二三十个之多,这里只介绍最常用的部分。
-
-path path
:路径名称符合 path 的文件。 -
-ipath path
:路径名称符合 path 的文件,忽略大小写。 -
-name name
:文件名称符合 name 的文件。 -
-iname name
:文件名称符合 name 的文件,忽略大小写。 -
-type c
:文件类型是 c 的文件。
more
more 命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h 。
more [选项] filenames...
-num
:一次显示的行数+num
:从第num行开始显示-p
:不以卷动的方式显示每一页,而是先清除屏幕后再显示内容-s
:当遇到有连续两行以上的空白行,就代换为一行的空白行
mv
mv 命令用来为文件或目录改名、或将文件或目录移到其它位置。
mv [选项] sources... target
-i
:若指定目录已有同名文件,则先询问是否覆盖旧文件-f
:在 mv 操作要覆盖某已有的目标文件时不给任何指示
rm
rm命令用于删除一个文件或者目录。
mv [选项] names...
-i
:删除前逐一询问确认-f
:直接删除,无需逐一确认-r
:递归删除目录下的所有内容
split
split命令用于将一个文件分割成数个。
该指令将大文件分割成较小的文件,在默认情况下将按照每1000行切割成一个小文件。
split [选项] file [prefix]
-l rows
:指定每rows行切成一个小文件-b bytes
:指定每bytes字节切成一个小文件prefix
:切割后的文件名称前缀
touch
touch命令用于修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件。
touch [选项] [文件或目录...]
-a
:改变读取时间记录-m
:改变修改时间记录-c
:如果文件不存在,不会创建新文件
文档编辑
grep
grep 命令用于查找文件里符合条件的字符串。
grep [选项] [参数] [文件或目录...]
-i
或--ignore-case
: 忽略字符大小写的差别-n
或--line-number
:显示行号
sed
sed 命令是利用脚本来处理文本文件。可依照脚本的指令来处理、编辑文本文件。
sed [选项] [表达式] [文件]
a
:在后面新增一行i
:在前面插入一行s
:文件内容替换
sort
sort命令用于将文本文件内容以行为单位加以排序。
sort [选项] [文件]
-u
:对输出结果去重-r
:以相反的顺序排序
wc
wc命令用于计算字数。
wc [选项] [文件]
-c
:统计字节数-w
:统计单词数-l
:统计行数
压缩备份
tar
tar命令用于将文件打包。
tar [选项] [文件或目录...]
-c
:用于创建新的包-x
:用于从包中还原文件-f
:用于指定文件-z
:通过gzip
压缩文件或者通过gunzip
解压文件-v
:显示执行的过程-C
:用于指定目标文件夹
gzip
gzip命令用于压缩文件。文件经它压缩过后,其名称后面会多出.gz
的扩展名。
gzip [选项] [文件]
-f
:强行压缩文件-d
:解压缩文件-v
:显示执行的过程
gunzip
gunzip命令用于解压文件。它用于解开被gzip压缩过的文件。
gunzip [选项] [文件]
-f
:强行解压文件-v
:显示执行的过程
zip
zip 命令用于压缩文件。压缩后的文件后缀名为 .zip
。
zip [选项] [文件]
-r
:递归压缩目录下的所有文件-m
:压缩后删除原有文件-v
:显示执行的过程
unzip
unzip命令用于解压缩zip文件。
unzip [选项] [文件]
-f
:更新现有文件-n
:解压时不要覆盖原有文件-v
:显示执行的过程
2、Ubuntu软件安装
Linux环境下软件的安装方式
RedHat / CentOS 软件安装方式
rpm方式安装
- 类似于Windows下的exe安装包
- 需要rpm软件安装包
- 如果依赖其他软件包则需要依次全部安装
- 安装命令是:
rpm -ivh ***.rpm
yum方式安装
- 直接联网在线安装
- 不需要提供软件安装包,自动从yum仓库查找并自动下载安装
- 如果依赖其他软件包则会自动安装依赖
- 安装命令是:
yum install -y ***
Ubuntu 软件安装方式
deb方式安装
- 类似于Windows下的exe安装包
- 需要deb软件安装包
- 安装命令是:
sudo dpkg -i ***.deb
apt方式安装
- 直接联网在线安装
- 不需要提供软件安装包,自动从apt源查找并自动下载安装
- 如果依赖其他软件包则会自动安装依赖
- 安装命令是:
sudo apt install ***
通用软件安装方式
源码编译安装
- 需要有软件的源码
- 需要有编译环境
- 安装命令是:
make
、make install
解压后即可使用
- 软件及依赖已经打包成一个压缩包
- 解压后直接可以执行
软件安装实操
通过apt方式安装zip / unzip
sudo apt install zip
sudo apt install unzip
通过解压方式安装Java
- 解压软件包
tar xzf soft/jdk-8u251-linux-x64.tar.gz -C apps/Java/
- 配置环境变量
export JAVA_HOME=/mnt/d/Ubuntu20.04LTS/apps/Java/jdk1.8.0_251
export PATH=${JAVA_HOME}/bin:${PATH}
Maven软件的安装
准备工作
前置条件
- JDK 1.7+
- 操作系统:无特殊要求
- 内存:无特殊要求
- 磁盘:软件安装 10MB+ ,本地仓库 1GB+
下载Maven安装包
通过官网下载:http://maven.apache.org/download.cgi
或者,直接下载:
Windows安装包:https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.zip
Linux安装包:https://mirror.bit.edu.cn/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
Linux环境下安装Maven
安装Java
- 解压软件包
tar xzf soft/jdk-8u251-linux-x64.tar.gz -C apps/Java/
- 配置环境变量
export JAVA_HOME=/mnt/d/Ubuntu20.04LTS/apps/Java/jdk1.8.0_251
export PATH=${JAVA_HOME}/bin:${PATH}
- 验证安装结果
java -v
安装Maven
- 解压软件包
tar xzf soft/apache-maven-3.6.3-bin.tar.gz -C apps/Maven/
- 配置环境变量
export MAVEN_HOME=/mnt/d/Ubuntu20.04LTS/apps/Maven/apache-maven-3.6.3
export PATH=$MAVEN_HOME/bin:$PATH
- 验证安装结果
mvn -v
Ubuntu的文件系统结构
Ubuntu(像所有类UNIX系统一样)在分层树中组织文件,其中的关系就像父母和孩子一样。目录可以包含其他目录以及常规文件,它们是树的“叶子”。
根目录 “/”
Linux下“/”就是根目录,所有的目录都是由根目录衍生出来的。
Ubuntu文件系统结构
Ubuntu 标准的目录结构是符合**文件系统层次标准**的。
下面列举一些在 Ubuntu 系统中出现的文件目录。
-
/bin
这是存放常用的终端命令的目录,可以被root和一般的账户使用。例如:ls、mount、rm 等等。
-
/boot
存放系统启动所需的文件,包括Linux kernel,一个随机存储磁盘镜像和 Bootloader 的配置文件。
-
/dev
这个目录存放所有的设备文件,这些不是常规文件,而是指系统上的各种硬件设备,包括硬盘驱动器。
-
/etc
存放系统的全局配置文件,这里面的配置文件会影响系统所有用户的系统环境。
-
/home
系统默认的用户的家目录,每个用户都有自己的家目录。
-
/lib
存放非常重要的动态库和内核模块。
-
/media
作为外部设备的一个挂载点,比如硬盘或者可移动设备(U盘、DVD、CD)。
-
/mnt
和
/media
一样,也是一个挂载点,但是专用于挂载临时的设备,例如网络文件系统。 -
/opt
用于安装系统额外的软件,这里安装的软件是手动安装的,不受 Ubuntu 软件管理包的管理。
-
/proc
一个虚拟文件系统,为内核提供向进程发送信息的机制。
-
/root
root 用户的家目录,不在 /home/ 中,即使 /home/ 不可用,也允许引导系统。
-
/run
在引导过程的早期可用的tmpfs(临时文件系统),其中存储了临时运行时数据。此目录下的文件将在引导过程开始时删除或截断。
-
/sbin
包含通常只应由超级用户使用的重要管理命令,或者开机过程中所需的命令。
-
/snap
snap应用框架的程序文件。
-
/srv
包含 HTTP(/srv/www/)或 FTP 等服务的数据目录。
-
/sys
可以访问的虚拟文件系统,用于设置或获取有关内核系统视图的信息。
-
/tmp
应用程序使用的临时文件的位置。
-
/usr
UNIX Software Resource的缩写,包含大多数用户实用程序和应用程序,并部分复制根目录结构,包括例如 /usr/bin/ 和 /usr/lib。
-
/var
致力于可变数据,例如日志,数据库,网站和临时脱机(电子邮件等)文件,这些文件从一次启动到下一次启动。它包含的一个值得注意的目录是 /var/log,其中保存了系统日志文件。
绝对路径和相对路径
- 绝对路径以字符 / (标识根目录,其中包含所有其他目录和文件)开头,然后列出必须遍历以到达该元素的每个子目录,每个子目录用 / 符号分隔。
- 相对路径名是不以 / 开头的名称;在这种情况下,从给定点开始遍历目录树,该点根据上下文而变化,称为当前目录。
- 在每个目录中,都有两个特殊目录 . 和 … ,分别指向目录本身及其父目录。hao
安装完成之后 添加文件到乌班图系统中 命令行:
mv /mnt/檔案位置/lt-http-map/ ~/你想放到的位置
档案位置是windows下的文件位置 想放的位置是乌班图下的文件位置 ~/是根目录二代意思
ls查看文件目录 cd放回文件目录 ll 查看文件目录 *号表示文件有可运行权限
vi文本编辑器 输入i进入编辑模式 退出是 esc 然后:wq保存 *(运行bash run.sh)
cat run.sh 显示文本的具体内容 ctrl+c 终止当前命令
以上是关于Ubuntu 20.04 LTS基础命令总结的主要内容,如果未能解决你的问题,请参考以下文章
在 Ubuntu 20.04 LTS(Vmware)上安装 docker 失败