查看目录
ls
- -a 显示指定目录下所有子目录与文件,包括隐藏文件
- -l 以列表方式显示文件的详细信息
- -h 配合-l以人性化方式显示文件大小
ls通配符
- *代表任意个字符
- ?表示任意1个字符
- []表示可以匹配字符组中的任一个
- [abc]匹配abc中的任意一个
- [a-f]匹配从a到f范围内的任意一个字符
pwd
- 查看当前所在目录
tree
- tree 以树状图的形式显示文件
- tree ~ 以树状图的形式显示家目录
- tree -d 只显示目录而不显示文件
切换目录
cd
-
cd ~ 切换到当前用户的主目录(/home/用户目录)
-
cd . 保持在当前目录不变
-
cd .. 切换到上级目录
-
cd - 在最近两次工作目录之间来回切换
相对路径 $cd 桌面
绝对路径 $cd /home/abc
常用指令
- 自动补全 tab键
- 曾用命令 上/下
- 清屏 clear
- 用户目录 ~
- 当前目录 .
- 放大终端文字 ctrl + shift + =
- 缩小终端文字 ctrl + -
- 中断终端操作 ctrl + c
- 超级管理员权限 sudo + 命令
- 执行文件时 ./文件名.后缀
- 注释 #
- 更改设备名称 sudo gedit /etc/hostnam
拷贝移动
cp
- cp 源文件 目标文件 复制文件或目录
- cp ~/桌面/1.txt ./a/1.txt 把桌面上的1.txt复制到当前目录下a中为1.txt
- cp -r a b 把文件夹a复制到文件夹b中
mv
- mv 源文件 目标文件 移动文件
- mv 1.txt a.txt 相当于重命名,最好加-i来避免覆盖
查看文件
more
-
more 文件名 查看文件内容,分屏显示
空格键 显示手册页的下一屏
enter键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索word字符串
cat
- cat 文件名 查看文件内容,一次性显示
- -b 对非空输出行编号
- -n 对输出的所有行编号
**grep **
-
-n 显示匹配行及行号
-
-v 显示不包含匹配文本的所有行
-
-i 忽略大小写
grep -n 好 a.txt 搜索a.txt中的好,并显示所在行号
远程操作
shutdown 关机 无参数默认一分钟后关闭
- shutdown -r now //立即重启
- shutdown 20:30 //系统在20:30关机
- shutdown +10 //系统再过十分钟关机
- shutdown -c //取消之前指定的关机计划
ifconfig 查看或配置网卡信息
- ifconfig | grep inet 查看网卡对应的IP地址
ping
- ping ip地址 //检测到目标ip地址的连接是否正常
ssh 远程登陆和复制文件
- ssh 用户名@ip 关机/重启
- ssh [-p 端口号] 用户名@ip或者域名 通过SSH客户端远程登陆Ubuntu系统
- exit 退出远程登陆
- scp [-P 端口号] 用户名@ip:文件名或路径 用户名@ip:文件名或路径 复制文件 加上 -r 选项可传送文件夹
- scp /home/test/test.txt root@192.168.0.2:/home/test/ 拷贝文件
- scp -r /home/test/ root@192.168.0.2:/home/test/ 拷贝目录
ssh设置免密码登录
- 生成ssh钥匙: ssh-keygen
- 上传公钥到服务器: ssh-copy-id -p port user@remote //port为端口号
配置别名(适用于ssh和scp命令) 利用一个别名代替 -p port user@remote 等数据
- step1 创建~/.ssh/config
- step2 在创建的文件中追加如下内容
用户管理
添加组
- sudo groupadd 组名 添加组
- sudo groupdel 组名 删除组
- cat /etc/group 确认组信息
添加新用户
- sudo useradd -m -g 组 新建用户名
- -m 自动建立用户家目录
- -g 指定用户所在的组,否则会建立一个和当前用户同名的组
- 默认添加的用户无权限使用sudo,应将用户添加到sudo附加组中,命令如下:usermod -G sudo 用户名
设置用户密码
-
passwd 用户名 如果是普通用户,该命令可修改密码
-
/usr/bin/passwd 是用于修改用户密码的程序
-
/etc/passwd 是用于保存用户信息的文件
-
文件存放的是用户信息,由6个分号组成的7个信息,分别是:
a 用户名 b 密码(x,表示加密的密码)
c UID(用户标识) d GID(组标识)
e 用户全名或本地帐号 f 家目录
g 登录使用的shell,就是登录之后使用的终端命令
删除用户
- sudo userdel -r 用户名 //-r自动删除用户家目录
**查看用户UID和GID信息 **
- id [用户名]
查看当前所有登录的用户列表
- who
**查看当前登录用户的帐号名 **
- whoami
切换用户
- su - 用户名 切换用户,并且切换目录,可切换到用户家目录,否则保持位置不变
- su 用户名 切换用户
- exit 退出当前登录账户
系统相关
date
查看系统时间
cal
查看日历
- -y 查看一年的日历
df -h
查看磁盘
- du -h[目录名] 查看目录下文件大小
ps aux
查看进程的详细状况
- a 显示终端上的所有进程,包括其他用户的进程
- u 显示进程的详细状态
- x 显示没有控制终端的进程
- ps默认只会显示当前用户通过终端启动时的程序
top
动态显示运行中的进程并且排列
kill
终止指定代号的进程
- kill[-9]进程代号 -9表示强行终止
- 一般先用 ps au 查看进程的代号,使用kill命令时,最好只终止由当前用户开启的进程,不要终止root身份开启的进程,否则可能会引起系统崩溃
压缩解压
- Windows 常用 rar
- Mac 常用 zip
- Linux 常用 tar.gz
tor 压缩
- tar -cvf 压缩文件.tar 被压缩的文件/路径
- tar -xvf 解压文件.tar
gzip 压缩2
- tar -zcvf 压缩文件.tar.gz 被压缩的文件/路径…
- tar -zxvf 解压文件.tar.gz
- tar -zxvf 解压文件.tar.gz -C 解压路径
bzip2 压缩3
- tar -jcvf 压缩文件.tar.bz2 被压缩的文件/路径…
- tar -jxvf 解压文件.tar.bz2
- tar -jxvf 解压文件.tar.bz2 -C 解压路径
安装卸载
安装软件
$ sudo apt install 软件包
卸载软件
$ sudo apt remove 软件名
更新已安装的软件
$ sudo apt upgrade
其他命令
查找文件
find[路径] -name “*.py”
- 查找指定路径下扩展名是.py的文件,包括子目录
- 如果省略路径,表示在当前文件夹下查找
软链接
ln -s 被链接的源文件 链接文件
建立文件的软链接,类似于windows的快捷方式
echo 文字内容
在终端中显示参数指定的文字,通常与重定向联合使用
- echo hello python > a
重定向 >/»
命令 >/» 文件
- 输出,会覆盖文件原有的内容 >
- 表示追加,会将内容追加到已有文件的末尾 »
- 把终端显示的东西重定向到a ls -lh > a
- 把hello python追加到a echo hello » a
管道 |
把一个命令的输出通过管道做为另一个命令的输入
- 常用的管道命令:more、grep
- ls -lha ~ | more 目录文件(包括隐藏文件)分屏显示
常见服务端口号列表
| 序号 | 服务 | 端口号 |
|---|---|---|
| 01 | SSH服务器 | 22 |
| 02 | Web服务器 | 80 |
| 03 | HTTPS | 443 |
| 04 | FTP服务器 | 21 |