抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

终端的使用

终端使用快捷键:

  • 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个分号组成的七个信息,分别是

  1. 用户名
  2. 密码(x,表示加密的密码)
  3. UID(用户标识)
  4. GID(组标识)
  5. 用户全名或本地账号
  6. 家目录
  7. 登录使用的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

评论