title: 【学习之路】Linux命令学习
draft: true
tags:
- 学习之路
- Linux
 categories: Linux
 cover: ‘https://cdn.jsdelivr.net/gh/CodeZixuan/Blog_Images/VM/20210308221833.jpg‘
 description: Linux基本命令学习
 abbrlink: 9a5a5652
 date: 2021-02-21 21:10:30
Linux关机、重启、注销
- shutdown- shutdown -h now: 表示立即关机
- shutdown -h 1: 表示一分钟后关机
- shutdown -r now: 立即重启
 
- halt: 直接使用效果等价于关机
- reboot: 重启系统
- sync: 把内存的数据同步到磁盘 执行后无效果
- logout: 注销用户
logout注销指令在图形界面无效
用户管理(创建用户、查询用户信息、切换用户)
- 创建一个叫zhangsan的用户:useradd zhangsan
创建用户成功后,会自动创建和用户同名的家目录
也可以通过
useradd -d 指定目录 新的用户名,给新创建的用户指定家目录
- 给用户指定密码: - passwd 指定密码的用户
- 删除用户: - userdel 用户名
userdel 用户名不会删除家目录需要使用userdel -r 用户名
- 查询用户: id 用户名
- 切换用户: su - 用户名
高权限用户切换到低权限用户不需要输入密码
- 查看当前用户:whoami
vim的使用
vim的三种常见模式
- 正常模式
- 插入模式/编辑模式
- 命令行模式
vim的三种模式的相互切换
- 在正常模式下按键盘i进入插入模式
- 退出插入模式切换为正常模式 按键盘Esc键位即可
- 进入命令行模式得先退出插入模式,键盘按:即可进入命令行模式
- 退出命令行模式按键盘Esc键即可

vim常用快捷键
- 拷贝当前行yy,拷贝当前向下的5行兵粘贴 5yy
- 删除当前行dd,删除当前向下5行 5dd
- 在文件中查找某个单词 在命令行模式下输入: /关键字,回车查找,输入n查找下一个
- 设置文件的行号,取消文件的行号:在命令行模式下输入 set nu 和 set nonu
- 使用快捷键到最首行和最末行 回到正常模式:gg 和 G
- 撤销动作 回到正常模式输入: u
- 定位行号 回到正常模式输入:20 Shift + g 定位到20行
- 退出vim模式,先切换到命令行模式 - wq保存并推出
- q退出不保存
- q!强制退出不保存
 
组
- 创建组:groupadd 组名
- 删除组:groupdel 组名
- 增加用户时直接指定组: useradd -g 用户组 用户名
- 修改用户组:usermod -g 用户组 用户名
文件目录类指令
使用较多的指令已经标记出来
pwd 指令
pwd:显示当前目录的绝对路径
ls 指令
ls:查看当前目录的所有信息
- ls -l:以列表的方式显示信息
- ls -a:显示当前目录所有的文件和目录、包括隐藏目录
cd 指令
- cd ~:回到自己的家目录
- cd ..:回到上一级目录
- cd 绝对路径或相对路径:可以定位到路径下
mkdir 指令
- mkdir 目录名称:创建目录
- mkdir -p 目录名称/目录名称创建多级目录
rmidr 指令
rmdir 目录名称 删除目录(只能删除空白目录)
rm -rf 指令
- rm -rf 目录名称删除目录,包括有文件的目录也能删除
- -r 递归删除整个文件夹 
- -f 强制删除不提示 
touch 指令
创建空文件,可以一次创建多个
cp 指令
cp [选项] [需要复制的文件或目录] [复制到的目录]
- 常用选项 -r 递归赋值整个文件夹
- \cp强制替换相同文件
mv 指令
- mv 名称 重命名称重命名文件或文件夹
- mv 路径 移动到的路径剪切文件
cat 指令
- cat /etc/profile只读当前文件
- cat -n /etc/profile只读当前文件并显示行号
- cat -n /etc/profile | more只读当前文件并显示行号,并且可以按空格键翻页
more 指令
- more要查看的文件
- more 指令所搭配的快捷键 | 操作 | 功能说明 | | —- | —- | | 空格(space) | 向下翻一页 | | Enter | 向下翻一行 | | q | 退出more,不在显示文件内容 | | Ctrl+F | 向下滚动一屏幕 | | Ctrl+B | 返回上一屏幕 | | = | 输出当前的行号 | | :f | 输出文件名和当前行的行号 |
less 指令
- less 文件名
- 使用less查看大文件较为方便,加载速度更快 | 操作 | 功能说明 | | —- | —- | | 空白键 | 向下翻一页 | | pagedown | 向下翻一页 | | pageup | 向上翻一页 | | /字符 | 向下搜寻字符的功能,n:向下查找 N:向上查找 | | ?字符 | 向上搜寻字符的功能,n:向上查找 N:向下查找 | | q | 离开less |
> 和 >> 指令
- >输出重定向
- ls -l > a.txt将 ls -l显示的内容覆盖写入到a.txt文件,如果该文件不存在那么就自动创建。
- >>追加
- ls -l >> a.txt将 ls -l显示的内容追加到后面的文件中
- echo "hello" > c.txt将引号中的字符覆盖到c.txt
echo 指令
- echo [选项] [输出内容]
head 指令
- head 文件名默认显示当前文件的前10行
- head -n 行数 文件名指定显示文件前N行
tail 指令
- tail 文件名查看文件后10行
- tail -n 行数 文件名指定显示文件后N行
- tail -f 文件名实时追踪该文档的所有更新
ln 指令
- ln -s [源文件或目录] [软连接名]软连接,类似于Windows里的快捷方式
history 指令
- history查看所有使用过的指令
- history 10显示最近使用过的10个指令
时间日期类指令
date 指令
- date显示当前时间
- date+%Y显示当前年份
- date+%m显示当前月份
- date+%d显示当前时那一天
- date -s "需要设置的时间"设置时间
cal 指令
- cal[选项]不加选项,显示本月日历
搜索查找类指令
find 指令
- find [搜索范围] [选项]
- find /home -name hello.txt从/home目录按照名称来找hello.txt的文件
- find /opt -root nobody从/opt目录按照用户名称来查找
- find /home -size +20M从/home目录查找超过20M的文件
locate 指令
由于locate指令基于数据进行查询,所以第一次运行前,必须使用
updatedb指令来创建locate数据
locate hello.txt
grep指令和管道符号
grep [选项] 查找内容 源文件
- 选项 - -n 匹配行级行号
- -i 忽略字母大小写
 
- 管道符号用来将前一个的结果给到第二个指令 - cat hello.txt | grep yescat指令浏览出来的结果给到grep用来查找yes这个字符
 
压缩和解压缩指令
gzip/gunzip 指令
- gizp hello.txt压缩当前目下的hello.txt,当前hello.txt被压缩后不会保留源文件
- gunzip hello.txt.gz解压当前目录下的hello.txt.gz解压完成后同样不保留原文件
zip/unzip 指令
- zip [选项] 要压缩的文件 目录压缩内容
- zip [选项] 要解压的文件解压缩文件- zip常用选项 - -r 递归压缩,即压缩目录
 
- unizp - -d <目录> 指定解压后文件存放的目录
 
 
- zip -r test.zip /home/压缩home目录文件夹所有文件
- unzip -d /opt/tmp/ test.zip解压test.zip到/opt/tmp目录
tar 指令
- tar [选项] 需要打包的内容| 选项 | 功能 | | —- | —- | | -c | 产生.tar打包文件 | | -v | 显示详细信息 | | -f | 指定压缩后的文件名 | | -z | 打包同时压缩 | | -x | 解包.tar文件 |
- tar -zcvf a.tar.gz 1.txt 2.txt打包1.txt和2.txt文件为a.tar.gz
- tar -zxvf a.tar.gz解包a.tar.gz
- tar -zxvf a.tar.gz /home/将a.tar.gz解压到home目录下
 
                         
                                

