linux基础知识总结

linux基础知识总结

  • 绝对路径:从根目录开始,指定一个位置,文件
  • 相对路径:从当前进程工作目录位置开始,指定一个位置,文件
  • shell:命令解析器。默认运行在终端当中的程序(进程)。
  • bash:born again shell。linux版的shell。命令解析器。
  • 文件:在linux操作系统中,所见皆文件
  • 用户:linux是一款多用户多任务的分时复用操作系统
  • 家目录:宿主目录。每个用户不同。——cd回车 所到的目录

基本命令

  • ls -l命令:

    文件属性:10个字符,分为两组。

    • 第一组:第一个字符。代表文件类型:7种——linux下不以文件后缀名,作为区分文件类型的依据。
      • 普通文件: -
      • 目录文件:d
      • 软连接文件:l ——相当于windows快捷方式
      • 字符设备文件:c ——伪文件(不占用磁盘存储)
      • 块设备文件:b ——伪文件
      • 套接字文件:s ——伪文件
      • 管道文件: p ——伪文件 unknown文件
    • 第一组:9个字符,分三组。——文件所有者,文件所属组,其他人:r,w,x
      • 硬链接统计数:有多少个文件公用同一个inode编号
      • 创建软连接:ln 旧文件名新硬链接文件
      • 特征:文件和硬链接文件之间,出文件名不一样外,其他信息完全一致,并能实时同步。
      • 文件所属用户:谁创建默认属于谁
      • 文件所属用户组:谁创建默认属于该用户所在用户组。用户——同名用户组
      • 文件所占存储空间大小(字节):文件:实际大小。目录文件,4k整数倍
      • 文件创建,最后一次修改时间:初创时间,实际创建时间;修改过的文件,修改时间,文件名。
  • ls常用参数

    • -a:常隐藏文件。——以“.”开头的文件或目录
    • -d:查看目录本身属性
    • –help:查看帮助信息
  • TAB键:自动补齐

  • history:历史命令

  • man:帮助手册

  • 重定向:

    • ">"重定向到指定文件,文件不存在自动创建,存在覆盖原文件
    • ">>"将内容追加到指定文件,文件不存在自动创建。存在不覆盖
  • 分屏读取大文件:

    • more
    • less
    • cat
    • tac
  • 管道:

    • ”|“将左边命令执行结果,写到右边,再执行右边的命令。
    • ps aux | grep XXX ——筛选系统中,所有正在运行的XXX进程
  • cd: change directory ——进入某个目录

    • cd /bin 绝对路径
    • cd …上一级目录
    • cd ./当前目录
    • cd ~ 回到用户宿主目录(家目录)
    • cd 回车 回到用户宿主目录
    • cd -:切换到上一次工作过的目录中
  • pwd:查看当前进程工作目录位置

  • 终端提示符的语法规则:

    • 用户名@主机名:当前shell进程工作目录$/# $普通用户 #管理员
  • 创建目录:

    • mkdir 目录名
    • -p:递归一次性创建多个目录
  • 删除文件和目录:

    • rm -r r:递归删除目录子内容
    • rm命令删除的文件,目录不易恢复。
  • ln命令:

    • 硬链接: ln 源文件 链接文件,不能给目录创建硬链接
    • 软连接: ln -s 源文件 链接文件,等同于windows下的快捷方式。建议使用”绝对路径创建软连接“,可以给目录创建软连接。
  • 目录文件拷贝:

    • -r: 递归拷贝目录内容。在执行命令时,创建文件,目录
    • -a: 递归拷贝目录内容。保留文件原有属性
  • mv命令:

    • 移动文件:mv 待移动文件名 目录位置
    • 改文件名: mv待改文件名 不存在的文件、目录名
  • 压缩命令:

    • gzip:不能打包压缩,不能保留原文件,不能压缩目录
    • bzip2:不能打包压缩,不能压缩目录
    • tar:打包压缩
    • 压缩:
      • tar -zcvf xxx.tar.gz 打包压缩材料
      • tar -jzvf xxx.tar.bz2 打包压缩材料
      • j:bzip2压缩格式
      • z:gzip格式压缩
      • c:创建压缩文件
      • v:输出压缩详细
      • f:指定压缩后的文件名
      • .tar.gz .tar.bz2:不具有语法强制性,但推荐使用
    • 解压缩:
      • tar -zxvf xxx.tar.gz
      • tar -jxvf xxx.tar.bz2
    • zip:
      • 压缩:zip -r 压缩包名(没有.zip后缀)打包压缩材料
      • 解压缩:unzip -d 解压缩位置目录 xxx.zip(待压缩文件)
  • 切换用户

    • su 用户名:切换到指定用户登录,不修改工作目录位置
    • su - 用户名: 切换到指定用户登录,修改工作目录位置到该用户的宿主目录
    • su - root :切换到root用户登录,修改工作目录位置到root的宿主目录
    • su root:切换到root用户登录,不改变工作目录位置 等价于(sudo su)
    • sudo关键字:临时获取一次root用户权限,执行完后续命令,该权限失效。
  • 添加新用户: sudo adduser 新用户名

  • 删除新用户:sudo deluser 用户名

  • 修改文件按所有者:chown 新用户名 待修改用户名的文件名

  • 添加新用户组:sudo addgroup 新组名

  • 删除新组名:sudo delgroup 新组名

  • 修改文件所属组:chgrp 新组名 待修改组名的文件名

  • chmod:修改文件目录访问权限 r、w、x:4/2/1 实例:r-x-w-r–: 5 2 4

  • 文件目录
    r查看文件内容cat,more,less,tac,vim(读)gedit(读)目录的内容(目录项)可以被查看 ls,vim(读)
    w修改,删除文件内容cat> /can >> vim(写,删)/gedit(写,删除)目录文件内容(目录项)可以被修改,删除,添加mv,cp,rm,rmdir,mkdir,touch
    x该文件可以运行该目录可以被进入
  • 进程查看信息:ps aux|grep XXX top —Linux下的任务管理器

  • 终止进程:kill -9 欲终止进程ID(可通过ps aux|grep XXX获得)

  • 前台,后台:

    • 能否与用户完成交互
    • &:将进程放置到后台执行
    • jobs:查看后台运行的程序
    • fg:恢复后台一个进程到前台执行。+优先级高,指定某一个进程恢复到前台来。用jobs查看”进程编号“
  • 多终端热键:

    • Ctrl + Alt + ↓ 或 ↑ —— 虚拟一块新桌面
    • Ctrl + Alt + T —— 唤醒一个新终端(独立)
    • Ctrl + shift + T —— 在一个终端里,创建多个shell标签。
  • ifconfig:

    • 查看当前网卡相关信息: ——ip地址

    • 临时设置ip地址:sudo ifconfig ens33 新ip,系统重启失效,sudo ifconfig ens33 up/down使用命令 网卡启动关闭

    • 永久设置ip地址:图形: 设置——网络——有线连接 + —— IPv4 —— 手动 —— 填入地址、子网掩码 、网关 —— “添加”

      网址: 网段。IP里面倒数第二字段。子网掩码: 255. 255.255. 0 网关:网段确定后,网关即为该网段的 第一个ip地址。192.168.xxx.1 —— 192.168.xxx.255 (广播地址)命令:—— 通过修改配置文件,达到永久修改IP的目的。修改 /etc/network/interfaces 文件。 添加 网址、子网掩码、网关。 指定DNS服务器

  • ping:

    • 发送一个测试数据包,到指定ip地址。测试是否畅通
    • Ctrl+c终止
    • -c参数,指定发送数据包的次数
  • 虚拟机网路的设置:

    • 桥接模式:路由器给虚拟linux单独分配一个ip地址,与windows在同一网段
    • NAT模式:linux虚拟机借助windows网卡,访问外网。linux和windows公用访问外网的ip。
  • find命令:

    • 格式:find 待搜索目录 参数 ”关键字“

    • -name:find /home/itcast/go_1 -name “*.soft” —— 在目录中找 .soft 结尾的文件。

    • -type:f(普通文件)、d、l、c、b、p、s find /run/ -type “s” —— 在目录中找 socket 文件。

    • -size:区范围时: 两个范围 之前都有加 -size 关键字。+ : 大于、 - : 小于

      单位:
      M 只支持大写。
      k 只支持小写。
      无单位——默认单位是 512B。

    • -maxdepth:指定搜索层级深度。 放置于其他参数之前。

      find -maxdepth 1 -type ‘f’ -name “*.go” —— 只在当前目录下,搜索 .go 文件、目录。

    • -exec:对搜索结果执行命令 find -maxdepth 1 -type ‘f’ -name “*.go” -exec ls -l {} ;

    • -xargs:对搜索结果执行命令 find -maxdepth 1 -type ‘f’ -name “*.go” | xargs ls -l 特例:如果文件名中含有空格, 如:文件名:‘abc xyz’ find -maxdepth 1 -type ‘f’ -print0 | xargs -0 ls -l

  • grep:grep -r/-R ”love“ 目标目录的位置

vim

  • 命令模式:默认进入vim的工作模式,该模式下,用户所有输入均被当成命令。
  • 编辑模式:编写模式。写代码,文本内容
  • 末行模式:在命令模式下,按”:“进入末行模式。该模式下,用户所有输入均被当成末行命令

命令模式

光标移动:

  • h:左

  • j:下

  • k:上

  • L:右

  • 转换编辑模式

    • i:向光标所在位置的前面插入数据
    • a:向光标所在位置的后面插入数据
    • o:向光标所在位置的下一行插入数据
    • s:以删除光标位置一个字符为代价,修改工作模式 —— 文本编辑模式。
    • O:向光标所在位置的 “上一行”插入数据!
    • I:向光标所在位置的 “行首”插入数据!
    • S:以删除光标位置一整行为代价,修改工作模式 —— 文本编辑模式!
  • 复制,粘贴:

    • yy:复制光标所在行。
    • Nyy:复制光标所在往后的N行(包含本行)。
    • p:粘贴至光标所在位置,下一行。
    • P(大写):粘贴至光标所在位置,上一行。
    • yw:将光标放置于单词的首字符上, 复制一个单词。
    • 区域复制:将光标放置于待复制区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择复制区域。
  • 剪切,粘贴:

    • dd:剪切光标所在行。
    • Ndd:剪切光标所在往后的N行(包含本行)。
    • p:粘贴至光标所在位置,下一行。
    • P(大写):粘贴至光标所在位置,上一行。
    • dw:将光标放置于单词的首字符上, 剪切一个单词。
    • 区域剪切:将光标放置于待剪切区域的首字符上, 按“v”(左下角出现 “可视”提示)使用 h,j,k,l 选择剪切区域。
    • d0:从光标所在位置,删除到 行首。
    • d$(D): 从光标所在位置,删除到 行尾。
  • 删除:同剪切

  • 字符操作:

    • x:删除光标选中字符
    • r:光标选中字符, 按“r”, 按目标字符。 可以将 原字符,替换为 目标字符。
  • 跳转到指定行

    • 命令模式:
      • gg:第一行
      • G:最后一行
      • gg=G 自动排版。
      • NG:跳转到 第 N 行
      • vim hello.go + 56 —— 打开文件同时,跳转到 56 行
    • 末行模式:
      • :N 回车。 —— 跳转到 第 N 行
      • 查找:
          1. 想象一个单词查找。 输入“/”(显示在末行的位置), 再输入要查找的单词。
          2. 查找一个已经看到的单词。将光标放在该单词任意一个字符,“*”向后找, “#”向前找。 “n”代表下一个。
    • 撤销: ”u“
    • 反撤销:ctrl - r
    • 替换:—— 末行模式。
        1. 单行替换: 😒/旧单词/新单词。 一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。
        2. 通篇替换: :%s/旧单词/新单词。 一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。
        3. 指定区域替换: :n,ms/旧单词/新单词。替换从n行开始,到m行结束,出现的“旧单词”, 一行有多个“旧单词”, 使用 “g”。否则只替换一行的首个。
    • vim的配置:
      • 用户配置:在宿主目录下,创建.vimrc(隐藏文件),写入配置项
      • 系统配置:sudo vi /etc/vim/vimrc (非隐藏文件)。写入 配置项。
  • 测试某软甲是否安装:sudo aptitude show 软件名 —— “未安装”:根据提示安装。—— “已安装”。

  • linux远程登陆linux:

    ssh -l 目标主机用户名 目标主机 iP地址。 ( 或 ssh itcast@127.0.0.1 )—— 输入目标主机 密码。登录到目标主机的 “家目录”

  • Linux 远程 发送文件给 Linux:scp -r 目标用户名@目标主机名:目标存储的绝对路径 (例子: scp -r ./test123.mp3 zhangsan@192.168.35.221:/home/zhangsan/test )—— 输入目标主机 密码。

    文件 直接存在在目标主机的指定目录下。 ( test123.mp3 存储在 zhangsan用户的/home/zhangsan/test目录下。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

heromps

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值