目录:
一、放大缩小终端窗口
二、常用Linux命令的基本使用
三、终端命令格式
四、文件和目录常用命令
五、拷贝和移动文件
六、查看文件内容
七、重定项
八、管道
九、远程管理命令
十、远程登录和复制文件
十一、用户权限
十二、其他
一、放大缩小终端窗口
CTRL + SHIFT + = 放大
CTRL + - = 缩小
CTRL + SHIFT + = 放大
CTRL + - = 缩小
二、常用Linux命令的基本使用
名称 | 功能 |
---|---|
ls | 查看当前文件夹内容 |
pwd | 查看当前所在文件夹 |
cd 【目录名】 | 切换文件夹 |
touch【文件名】 | 如果文件名不存在,新建文件 |
mkdir【目录名】 | 创建目录 |
rm【文件名】 | 删除文件名 |
clear | 清屏 |
三、终端命令格式
组成部分 | 含义 |
---|---|
command | 命令名 |
【-option】 | 选项,对命令进行控制 |
【parameter】 | 传给命令的参数,可以是多个 |
四、文件和目录常用命令
1、ls:
ls 【目录名】
选项 | 功能 |
---|---|
– | 横向列表 |
-l | 纵向列表 |
-h | 人性化查看 |
-a | 显示所有文件,包括隐藏文件 |
ps:
Linux中隐藏文件以.开头,用-a选项才能显示,“.”代表当前目录,“. .”代表上级目录,“~”代表 Linux根目录
2、cd:
cd 【目录名】
选项 | 功能 |
---|---|
– | 切换到当前用户的主目录 |
~ | 切换到当前用户的主目录 |
. | 当前目录 |
. . | 回到上级目录 |
3、touch
touch 【文件名】
若文件不存在,则创建文件;如果文件存在,则会改变文件修改日期
4、mkdir
mkdir 【目录名】
参数 | 功能 |
---|---|
– | 创建一个目录 |
-p | 递归创建目录 |
eg:mkdir -p a/b/c 表示再a目录下的b目录下创建一个c目录
ps:
同一目录下,文件与文件夹不能重名
5、rm:
1)rm 【文件名】
选项 | 功能 |
---|---|
– | 删除文件 |
-f | 强制删除 ,没有提示 |
-r | 递归删除多级文件夹 |
2)通配符
* | 可代表任意字符、字符串 |
---|---|
? | 可代表一个字符 |
【字符组】 | 可代表字符组中任一个 |
五、拷贝和移动文件
1、tree:
tree 【目录名】
选项 | 功能 |
---|---|
– | 以树状图列出命名结构 |
-d | 只显示目录的树状图结构 |
ps:
文件夹名称显示为蓝色,文件名显示为白色,可执行文件显示为绿色
2、cp:
cp 【源文件】 【目标文件】
选项 | 功能 |
---|---|
-r | 复制目录 |
-i | 覆盖前提示 |
ps:若源文件名与目标文件名相同,则目标文件会覆盖,所以需注意-i选项的使用。
六、查看文件内容
1、cat:
cat 【文件名】
选项 | 功能 |
---|---|
– | 查看文件内容 |
-b | 显示非空行编号 |
-n | 显示所有行编号 |
2、more:
分屏显示文件内容
ps:
more查看文件内容多,cat查看文件内容少
3、grep:
grep word 文件名
-n 文本显示行号
-v 不包含指定内容
模式查找:
^a ,以a为开头的行
ke$,以ke为结尾的行
七、重定项
1、>:
表示输出,将覆盖文件内容
2、>>:
表示追加,会将内容再终端上的输出加到已有文件的末尾
3、echo:
echo常与重定项一起使用
eg: cc@ubunt:~$ touch 1.txt cc@ubuntu:~$ cat 1.txt cc@ubuntu:~$ echo hello >1.txt cc@ubuntu:~$ cat 1.txt hello cc@ubuntu:~$ echo world! >> 1.txt cc@ubuntu:~$ cat 1.txt hello world!
八、管道
Linux允许将一个命令的输出通过管道作为另一命令的输入 常用的管道命令:more,grep eg: ![](https://img-blog.csdnimg.cn/20200216021557472.png)九、远程管理命令
## 1、shutdown:选项 | -r |
---|---|
时间 | now/1min/ |
功能 | 立即重启/1min后重启 |
选项 | – |
时间 | now/20:25/+10 |
功能 | 立即关机/20:25关机/十分钟后关机 |
选项 | -c |
时间 | – |
功能 | 取消关机计划 |
2、ifconfig
查看/配置网卡信息
ps:Linux中物理网卡通常以ensxx表示;127.0.0.1表示本地回环/环回地址
3、ping
ping ip地址 /域名
eg:ping www,baidu.com用于检测到IP地址的连接是否正常
ps:
此处发现实际上ping的是www.a.shifen.com,查阅资料(baidu…)后得知这是因为在dns解析过程中,www.baidu.com作为cname记录(相当于别名),在dns服务器中配置了www.baidu.comwww.a.shifen.com的映射记录。而www.a.shifen.com是作为A(address)记录,映射到了真实的IP信息。
十、远程登陆和复制文件
1、ssh:
1.ssh基础:
端口号:可以找到计算机上运行的应用程序
服务器类型 | 默认端口 |
---|---|
ssh服务器 | 22 |
web服务器 | 80 |
HTTPS服务器 | 443 |
FTP服务器 | 21 |
2.ssh客服端的简单使用:
组成 | 名称 |
---|---|
ssh | 命令名 |
-p | 选项 |
22 | 端口号 |
cc | 远程服务器账号名称 |
@ | – |
192.168.40.128 | 远程服务器IP |
命令输入完成后按回车进行连接,输入远程服务器账户密码,成功登录
输入exit,断开连接
eg:
ps:win10power shell自带ssh
2、scp:
远程拷贝文件的内容,地址格式与ssh相同
但指定端口时选项为-P(大写)。
1)把本地当前目录下的test_work.txt复制到远程目录(/home/cc/Desktop)
scp -P port test_work.txt cc@192.168.40.128: /home/cc/Desktop
2)把远程目录下的文件1.py(/home/cc/Desktop/1.py为源文件路径)复制到当前目录下并命名为1.py
scp -P port cc@192.168.40.128:/home/cc/Desktop/1.py 1.py
ps:如果是复制文件夹则需要加选项-r
eg:
3、免密码登录
配置公钥:
ssh-keygen 生成密钥
上传公钥服务器:
ssh-copy-id -P port user@remote
非对称加密算法:
本地使用加密的数据,需要使用密钥解密
使用密钥加密的数据,需要使用公钥解密
十一、用户权限
1、ls -l输出信息介绍
以-开头表明为目录,以d开头表明为文件
符号 | r | w | x |
---|---|---|---|
含义 | 可读 | 可写 | 可执行 |
序号 | 4 | 2 | 1 |
去掉第一个-或者d后,每三个字符为一组,分别对应文件拥有者的权限,所在组权限,其他用户权限
,其后的数字为硬链接数(绝对路径、cd. 、cd… )
2、修改文件权限:
1)chmod:
可修改用户/组对文件的/目录的权限,命令格式:
chmod | ± | rw | 目标文件 |
---|---|---|---|
chmod | -R | 755 | 文件名/目录名 |
7 | 5 | 5 |
---|---|---|
rwx | r_x | r_x |
2)chgrp:
修改组,命令格式:
chgrp | -R | 组名 | 文件名/目录名 |
---|
3)chown:
修改拥有者,命令格式:
chown | 用户名 | 文件名/目录名 |
---|
3、超级用户:
root,拥有所有资源访问权限
sudo 以其他身份执行,预设root,使用sudo时,需要输入密码,之后的5min内有效
4、组管理终端命令:
groupadd 添加组
groupdel 删除组
cat /etc/group确认组消息
ps:etc目录时专门用来保存系统配置信息的目录
5、用户管理命令:
1)
useradd | -m -g | 新建用户名 | -g,指定用户起始群组,如果不指定,则会创建一个同名的组;-m,自动创建用户家目录 |
---|---|---|---|
userdel | -r | 用户名 | 删除用户 |
psaawd | 用户名 | 设置用户密码(如果收普通用户,可是直接通过passwd更改密码) | – |
2)usermod 修改用户的主组,附加组和登录shell(即终端命令,Ubuntu默认使用dash,而dash在win中并不方便,我们可以通过usermod改为bash)
usermod | -g | 组 | 用户名 | 修改用户主组 |
---|---|---|---|---|
usermod | -G | 组名 | 用户名 | 修改用户附加组 |
usermod | -s/etc/bin | 用户名 | 修改登录shell | – |
ps:
主组:通常在兴建用户指定,在etc/passwd第四列gid对应的组
附加组:在etc/group中最后一列表示该组的用户列表,用于指定用户附加权限
4)
who | 查看所有登录用户列表 |
---|---|
whoami | 查看登录用户名 |
ps:
cat /etc/passwd/grep 用户名 确认用户信息
eg:
lisi | : | x | : | 1002 | : | 1001 | : | : | /home/lisi | dash |
---|---|---|---|---|---|---|---|---|---|---|
账户名 | : | 密码(已加密) | : | 用户代号 | : | 组代号 | : | (全名,未设置则为空) | : | 家目录路径 |
5)su切换用户:
su | - | 用户名 | 切换家目录 |
---|---|---|---|
su | – | 用户名 | 不切换家目录 |
su | – | – | 切换到root用户 |
6)/etc/passwd与/usr/bin/passwd:
前者用于保存用户信息,后者用于保存用户密码程序
十二、其他
1、date:
date | – | 查看系统时间 |
---|---|---|
cal | – | 查看本月日历 |
cal | -y | 查看一年日历 |
2、磁盘
df | -h | 显示磁盘剩余空间 |
---|---|---|
du | -h 【目录名】 | 显示目录下的文件大小 |
3、进程:
当前正在执行的一个程序
ps | – | 只能看到当前终端启动的应用程序 |
---|---|---|
ps | a | 显示所有用户的进程 |
ps | u | 显示进程的详细信息 |
ps | x | 显示没有控制终端的进程 |
ps | aux | 查看当前京城详细状况 |
top | – | 动态显示运行中的进程并且排序 |
htop | – | 美化查看当前进程 |
jobs | -l | 查看目前后台工作状态 |
kill | % jobnumber | 终止指定程序 |
fg | % jubnumber | 激活jobnumber进程 |
4、查找文件:
find 【路径】 -name “*.py” 指定路径下
查找指定路径下.py结尾的文件,包括子目录
5、软链接与硬链接:
(类似于Windows下的快捷方式)
ln | -s | 被链接的源文件 | 链接文件 | 建立文件软链接 |
---|
ps:
1)如果没有-s则为硬链接文件:两个文件大小相同
2)源文件要用绝对路径
6、 打包压缩解压
1、打包压缩
Windows | rar |
---|---|
mac | zip |
linux | tar.gz |
2、打包解包tar:
备份工具 | 把一系列文件打包到一个大的文件夹里,也可以把一个大的文件夹恢复成一系列文件 |
---|---|
打包文件 | tar -cxf 打包文件.tar 被打包文件/路径 |
解包文件 | tar -xvf 打包文件.tar |
ps:
tar只负责打包,不压不解压
3、压缩/解压缩
1.gizp:用gzip压缩tar打包后的文件,扩展名一般为xxx.tar.gz;在Linux中,tar有一个选项-z,可以调用gzip
压缩文件 | tar | -zcvf | 打包文件.tar.gz | 被压缩文件 | /路径 |
---|---|---|---|---|---|
解压文件 | tar | -zxvf | 打包文件.tat.gz | – | – |
解压到指定路径 | tar | -zxvf | 压缩文件.tat.gz | -C | 目标路径(必须已存在) |
2、bzip
类似于gzip
7、软件安装:
通过apt安装/卸载软件
1、安装软件
sudo apt install 软件包
2、卸载软件
sudo apt remove 软件包
3、更新
sudo apt upgrade
趣味软件:
sl 小火车清屏
htop 美化查看当前进程的软件
4、配置软件源
图形界面