终端的使用
终端使用快捷键:
- ctrl + shift + = 放大字体
- ctrl + - 缩小字体
终端使用技巧:
tab键: 自动补全
上下键: 切换曾经使用的命令
终端命令格式:command [-options] [paraneter]
说明:
command
: 命令名
[-options]
: 选项,对命令控制,可省略
[paraneter]
: 传给命令的参数,可以是一个多个或者没有
查阅帮助:
command --help
查看手册:
man command
- 空格键: 显示手册下一屏
- enter键: 一次滚动手册的一行
- b: 回滚一屏
- f: 前滚一屏
- q: 退出
文件目录常用命令
ls # 查看文件夹内容 ls -a # 显示所有文件,包括隐藏的 ls -h # 配合-l人性化显示文件大小 ls -l # 列表显示文件详情 pws # 查看所在文件夹 cd [目录名] # 切换文件夹,却对路径以/或者~开头 cd . # .表示当前目录 cd .. # ..表示上一级目录 cd ~ # ~表示家目录,也可以直接cd回到家目录 cd - # 在最近两次目录切换 touch [文件名] # 文件不存在就新建文件,存在就修改文件修改日期 mkdir [目录名] # 创建目录 mkdir -p [目录名] # 递归创建目录 rm [文件名] # 删除文件 rm -f [文件名] # 强制删除,不提示 rm -r [目录名] # 递归删除,删除文件夹 rm -rf * # 使用通配符,当前目录的文件全部删除 tree # 树状图的方式看目录 tree -d # 只看目录不看文件 cp [源文件] [目标文件] # 拷贝文件 cp -i [源文件] [目标文件] # 覆盖文件前提示 cp -r [源文件] [目标文件] # 递归复制目录 mv [源文件] [目标文件] # 移动文件 mv -r [源文件] [目标文件] # 覆盖前提示 cat # 查看文件内容 cat -b # 对非空输出行编号 cat -n # 对所有行编号 more # 分屏查看文件
|
分配查看文件时的操作
- 空格键: 显示手册下一屏
- enter键: 一次滚动手册的一行
- b: 回滚一屏
- f: 前滚一屏
- q: 退出
- /word: 搜索word字符
grep as 123.txt # 在123.txt文件中搜索as grep -n as 123.txt # 显示匹配行和行号 grep -i as 123.txt # 忽略大小写 grep -i "as is" 123.txt # 如果有空格要用引号 grep -v as 123.txt # 显示不匹配的行 grep ^a 123.txt # 模式匹配,正则表达式,以a开头的行
echo # 在终端显示内容 > # 重定向,将命令执行结果重定向到一个文件 echo Hello > b # 在b文件中添加内容Hello >> # 重定向追加内容 | # 管道,允许一个目录的输出通过管道作为另一个文件的输入 ls -lha ~ | more # 把用户目录分屏显示 ls -lha ~ | grep Do # 查询用户目录,文件包含Do的
|
常用的通配符
- *表示任意个数字符
- ?表示任意一个字符
[]
表示匹配字符组中的一个
[abc]
匹配abc中的一个
[a-f]
匹配a-f中的一个
- ls ?2*1.txt # 这个命令查看以任意一个字符和2开头,以1结尾的txt文件
- ls
[135]
23.txt # 查看以135开头的文件
远程管理命令
clear # 清屏 shutdown # 关机 shutdown -r # 重启 shutdown -r now # 马上重启 ifconfig # 查看网卡配置 ping # 检测到目标ip的连接是否正常 ssh -p [端口号] [用户名]@[ip域名或别名] # 远程连接服务器,端口是22就可以省略-p scp # 远程拷贝文件 scp -P port 01.py user@renote:Desktop/01.py # 把本地当前目录的01.py上传到远程家目录的Desktop/01.py,-P要大写 scp -r user@renote:Desktop/demo # 把远程家目录的demo文件夹拷贝到本地,操作文件夹用-r ssh-copy-id [email protected] # 拷贝公钥到192.168.2.1,让那台机器可以免密登录我的机器
|
用户权限
chmod -rwx data.txt # 移除可读可写可执行 chmod +rwx data.txt # 增加可读可写可执行 sudo [命令] # 切换其他用户执行命令,默认是root
|
组管理
groupadd 组名 # 添加组 groupdel 组名 # 删除组 cat /etc/group # 查看组 chgrp -R 组名 文件/目录名 # 递归修改文件夹或文件所属组
|
用户管理
useradd -m -g [组] [新建用户名] # 添加新用户,-m自动建立用户家目录,-g指定用户所属组,默认在同名用户名组 passwd [用户名] # 设置或修改用户密码 userdel -r [用户名] # 删除用户,-r自动删除用户家目录 cat /etc/passwd | grep [用户名] # 确认用户信息,新的用户信息会保存在/etc/paswd文件中
|
/etc/paswd文件中存放的是用户信息,由6个分号组成的七个信息,分别是
- 用户名
- 密码(x,表示加密的密码)
- UID(用户标识)
- GID(组标识)
- 用户全名或本地账号
- 家目录
- 登录使用的shell,就是登录后使用的终端命令,ubuntu默认是dash
id 用户名 # 显示用户id和组id who # 查看当前所有登录的用户列表 whoami # 查看当前登录用户的用户名 usermod -g [组] [用户名] # 修改用户主组,主组是新建用户时指定的 usermod -G [组] [用户名] # 修改用户附加组,附加组是指定用户的附加权限 usermod -G sudo [用户名] # 将用户添加都sudo组,可以使用root身份执行命令 usermod -s /bin/bash # 修改用户登录shell,默认是dash要修改成bash,bash更方便,目录有颜色,按上键也不会输入字符 which # 查看执行命令所在的目录 which useradd # 查看用户密码在的目录 which ls # 查看ls命令在的目录
|
bin和sbin
- 在linux中,大多数可执行文件都保存在/bin、/sbin、/usr/bin、/usr/sbin
- /bin 二进制执行文件目录,主要用于具体应用
- /sbin 是系统管理员专用的二进制代码存放目录,主要用于系统管理
- /usr/bin 后期安装的一些软件
- /usr/sbin 超级用户的一些管理程序
su - [用户名] # 切换用户,-表示可以切换到用户家目录,否则位置不变 exit # 退出当前用户 chown [用户名] [文件名|目录名] # 修改文件或目录的拥有者 chgrp -R [组名] [文件名|目录名] # 递归修改所属组,-R表示递归修改所有子目录和文件的组 chmod -R 775 [文件名|目录名] #修改权限,三个数字分别对应:拥有者/组/其他,用户的权限
|
数字对应的权限
拥有者 |
组 |
其他 |
r w x |
r w x |
r w x |
4 2 1 |
4 2 1 |
4 2 1 |
系统信息
date # 查看系统时间 cal # 查看日历,-y可以看一年的日历 df -h # 显示磁盘剩余空间,-h以人性化的方式显示文件大小 du -h [目录名] # 显示目录下的文件大小 ps aux # 查看进程使用情况,a显示所有进程包括其他用户的,u显示进程详细状态,x显示没有控制终端的进程一般不使用该选项 top # 动态显示进程并排序,按q退出 kill -9 [进程代号] # 结束进程,-9表示强制结束
|
其他命令
find [路径] -name "*.py" # 查找指定路径下以py结尾的文件,包括子目录。不写路径就是当前路径 Ln -s [被链接的源文件] [链接文件] # 创建软链接类似快捷方式,源文件使用文件绝对路径,链接文件随便起名 Ln [被链接的源文件] [链接文件] # 硬链接,源文件被删除链接文件不受影响
|
打包压缩
tar -cvf [打包文件.tar] [被打包的文件|路径] # 打包文件,-c创建打包文件,-v列出详细过程、进度,-f指定文件名。f选项后面一定是tar文件,所以必须放选项最后面 tar -xvf [打包文件.tar] # 接包文件,-x解开打包文件 tar -zcvf [打包文件.tar.gz] [被压缩的文件|路径] # 压缩文件,-z调用gzip对文件压缩 tar -zxvf [打包文件.tar.gz] -C [目标路径] # 解压文件, -C解压到指定目录,目录必须存在 tar -jcvf [打包文件.tar.bz2] [被压缩的文件|路径] # 压缩文件,-j调用bzip2对文件压缩 tar -jxvf [打包文件.tar.bz2] -C [目标路径] # 解压文件, -C解压到指定目录,目录必须存在
|
软件安装
# 安装软件 sudo apt install [软件包] # 卸载软件 sudo apt remove [软件名] # 更新已安装的包 sudo apt upgrade # 一个小火车提示 sudo apt install sl # 一个比较漂亮的查看当前进程排名的软件 sudo apt install htop
|