1.linux目录分布:
linux操作系统属于多用户操作系统,所以每个用户进来主要在home目录下操作。
2.linux常用命令:
-
ctrl+shift+= 放大终端窗口的字体显示
-
ctrl+ - 缩小终端窗口字体显示
-
以.开头的文件为隐藏文件,需要用-a参数才能显示
-
.代表当前目录
-
…代表上一级目录
-
-l 以列表方式显示文件的详细信息
-
-h 配合-l以人性化的方式显示文件大小
-
ls通配符的使用
-
cd拓展
-
mkdir拓展
-p 可以递归创建目录
eg:mkdir -p a/b/c -
rm拓展
使用rm命令要小心,因为文件删除后不能恢复。
-f 强制删除,忽略不存在的文件,无需提示
-r 递归地删除目录下的内容,删除文件夹时必须加此参数
3.终端命令格式
command [-options] [parameter] -
command: 命令名,相应功能的英文单词或单词的缩写
-
[-options]:选项,可用来对命令进行控制,也可以省略
-
parameter:传给命令的参数,可以是零个、一个或者多个
eg: touch 文件名称 cd 目录名称 mkdir 目录名称 rm文件名称 {command+parameter}
rm -r 文件名称 {command+ -options + parameter}
4.拷贝和移动文件
- 命令格式:tree[目录名] 命令可以以树状图列出文件目录结果
-d 只显示目录(不显示文件) - 命令格式:cp 源文件 目标文件 复制文件或目录
eg: cp ~/Documents/readme.txt ./readme.txt
-i 覆盖文件前提示
-r 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名 - 命令格式:mv 源文件 目标文件 移动文件或目录,也可以给文件或目录重命名
-i 覆盖文件前提示
5.查看文件内容
- cat(concatenate)
命令:cat 文件名
1.用来查看文件内容、创建文件、文件合并、追加文件内容等功能
2.会一次显示所有内容,适合查看内容较少的文本文件
3, -b 对非空输出行编号
-n 对输出的所有行编号 - more
命令格式:more 文件名
1.用来*分屏显示文件内容,每次只显示一页内容
2.适合查看内容较多的文本文件
3. - grep
命令格式:grep 搜索字符 文件名
1.-n 显示匹配行及行号
-v 显示不包含匹配文本的所有行(相当于求反)
-i 忽略大小写
2.常用的两种模式查找
- echo
命令格式:echo 文字内容
echo会在终端中显示参数指定的内容,通常会和重定向联合使用
重定向:原本要输出在终端上的内容,输出或者追加到指定文件中。
1. >表示输出,会覆盖文件原有内容
2. >>表示追加,会将内容追加到已有文件的末尾 - 管道
- Linux允许将一个命令的输出可以通过管道作为另一个命令的输入
[可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里|的左右分为两段,左端塞东西(写),右端取东西(读)]
- 常用的管道命令:more,grep
6.关机/重启 - shoutdown
命令格式:shoutdown 选项 时间
shoutdown命令可以安全关闭或重启系统
- -r 重新启动
注:不指定选项和参数,默认表示1min之后关闭电脑;远程维护服务器时,最好不要关闭系统,而应该重新启动系统
常用命令示例:
7.查看或配置网卡信息 - ifconfig 可以查看/配置计算机当前的网卡配置信息
- ping
命令格式:ping IP地址
#检测到目标主机是否连接正常
#检测本地网卡工作正常(本地回环/环回地址)
ping一般用于检测当前计算机到目标计算机之间的网络是否通畅,数值越大,速度越慢。 - SSH客户的简单使用
命令格式:ssh [-p port] user@remote #[xxx]表示可以不填,直接默认。
- user是在远程机器上的用户名,如果不指定的话默认为当前用户
- remote是远程机器的地址,可以是ip/域名,或者是后面会提到的别名
- port是SSH Server监听的端口,如果不指定,就默认值22
注:
- SSH这个终端命令只能在Linux或者UNIX系统下使用
- 如果是在windows系统中,可以安装PuTTY或者XShell客户端软件即可
- 在工作中,SSH服务器的端口号很有可能不是22,如果遇到这种情况就需要使用-p选项,指定正确的端口号,否则无法正常连接到服务器。- 使用exit退出当前用户的登录
- scp(secure copy)
- scp是一个在linux下用来进行远程拷贝文件的命令
- 它的地址地址格式与ssh基本相同,需要注意的是,在指定端口时用的大写-P而不是小写的。
命令实例:
8.用户权限相关命令 - 基本概念
- 用户是Linux系统工作中重要的一环,用户管理包括用户与组管理
- 在Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限
- 在Linux中,可以指定每一个用户针对不同的文件或目录的不同权限
- 对文件/目录的权限包括:
- ls -l扩展
- ls -l可以查看文件夹下文件的详细信息,从左到右依次是:
- 权限,第1个字符如果是d表示目录
- 硬链接数,通俗地讲,就是有多少种方式,可以访问到当前目录/文件
- 拥有者,家目录下文件/目录的拥有者通常都是当前用户
- 组,在Linux中,很多时候,会出现组名和用户名相同的情况。
- 大小
- 时间
- 名称
-
- ls -l可以查看文件夹下文件的详细信息,从左到右依次是:
- chmod简单使用
- chmod可以修改用户/组对文件/目录的权限
- 命令:chmod +/-rwx 文件名|目录名
- 超级用户
- Linux系统中的root账号通常用于系统的维护和管理,对操作系统的所有资源具有所有访问权限
- 在大多数版本Linux中,都不推荐直接使用root账号登录系统
- 在Linux安装的过程中,系统会自动创建一个用户账号,而这个默认用户称为‘标准用户’
- sudo
- su是substitute user的缩写,表示使用另一个用户的身份
- sudo命令用来以其他身份来执行命令,预设的身份为root
- 用户使用sudo时,必须先输入密码,之后有5mins的有限期限,超过期限则必须重新输入密码
- 组管理的终端命令
提示:创建组/删除组的终端命令都需要通过sudo执行
提示:- 组信息保存在/etc/group文件中
- /etc目录是专门用来保存系统配置信息的目录
9.用户管理 终端命令
提示:创建用户/删除用户/修改其他用户密码的终端命令都需要通过sudo执行
- 创建用户/设置密码/删除用户
- 查看用户信息
-passwd文件
- which(重要)
提示: - /etc/passwd是用于保存用户信息的文件
- /usr/bin/passwd是用于修改用户密码的程序
注:cd这个终端命令是内置在系统内核中的,没有独立的文件,因此用which无法找到cd命令的位置 - 切换用户
- su不接用户名,可以切换到root,但是不推荐使用,因为不安全 - exit示意图如下:
- 修改文件权限
命令格式:
- chmod在设置权限时,可以简单地使用三个数字分别对应拥有者/组和其他用户权限
注:如果修改目录下所有权限应加入-R选项
10.其他命令
- 查找文件
- find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件
命令格式:find [路径] -name “*.py”
作用:查找指定路径下扩展名是.py的文件,包括子目录
注:如果省略路径,表示在当前文件夹下查找
之前学习的通配符,在使用find命令时同时可用
- find命令功能非常强大,通常用来在特定的目录下搜索符合条件的文件
- 软链接
命令: ln -s 被链接的源文件 链接文件
注:
1.没有-s选项建立的是一个硬链接文件
- 两个文件占用相同大小的硬盘空间,工作中几乎不会建立文件的硬链接
2.源文件要使用绝对路径,不能使用相对路径,这样可以方便移动链接文件后,仍然能够正常使用 - 打包压缩
- 打包/解包
tar是Linux中最常用的备份工具,此命令可以把一系列文件打包到一个大文件中,也可以把一个打包的大文件恢复成一系列文件。
命令格式:
#打包文件
tar -cvf 打包文件.tar 被打包的文件 /路径…
#解包文件
tar -xvf 打包文件.tar- tar选项说明
- tar选项说明
- 打包/解包
- 压缩/解压缩
- gzip
- tar与gzip命令结合可以使用实现文件打包和压缩
tar只负责打包文件,但不压缩。
用gzip压缩tar打包后的文件,其扩展名一般用xxx.tar.gz
在Linux中,最常见的压缩文件格式就是xxx.tar.gz - 在tar命令中有一个选项-z可以调用gzip,从而可以方便的实现压缩和解压缩的功能
- 命令格式:
#压缩文件:
tar -zcvf 打包文件.tar.gz 被压缩的文件/路径…
#解压缩文件
tar -zxvf 打包文件.tar.gz
解压缩到指定路径
tar -zxvf 打包文件.tar.gz -C 目标路径
注: -C 解压缩到指定目录。(要解压缩的目录必须存在)
- tar与gzip命令结合可以使用实现文件打包和压缩
- bzip2(two)
- 用法与gzip一样。其扩展名一般用xxx.tar.bz2
- 命令格式:
#压缩文件
tar -jcvf 打包文件.tar.bz2 被压缩的文件/路径…
#解压缩文件
tar -jxvf 打包文件.tar.bz2
- gzip
- 软件安装
- 通过apt安装/卸载软件
- apt是Advanced Packaging Tool,是Linux下的一款安装包管理工具
- 可以在终端中方便的安装/卸载/更新软件包
命令格式:
#1.安装软件
sudo apt install 软件包
#2.卸载软件
sudo apt remove 软件名
#3.更新已安装的包
sudo apt upgrade
- 通过apt安装/卸载软件