2-Linux系统与常用命令

一、Unix和Linux操作系统介绍

  • Unix家族
    • 1965:贝尔实验室(Bell Labs)加入一项由通用电气和麻省理工学院合作的计划,该计划要建立一套多使用者、多任务、多层次的MULTICS操作系统。后来因为项目太为复杂失败
    • 1969:其主要开发者Thompson(后被称为UNIX之父)和Ritchie领导一组开发者,开发了一个新的多任务操作系统—UNICS,后来被改名为Unix,最初的Unix是用B语言和汇编语言混合编写而成
    • 1971:两人在贝尔实验室共同发明了C语言,并于1973用C语言重写了Unix
    • 1974:UNIX第一次出现在贝尔实验室以外。此后UNIX被政府机关,研究机构,企业和大学注意到,并逐渐流行开来
    • 1980:有两个最主要的Unix的版本线,一个是Berkeley的BSD UNIX,另一个是AT&T的Unix,两者的竞争最终引发了Unix的战争,最终导致Unix出现各种各样的变种
    • 1982:AT&T基于版本7开发了UNIX System Ⅲ的第一个商业版本,并不再开源
    • 1992~2001:由于版权问题,AT&T公司与BSD开发组开始了一场将近10年的版权官司。UNIX由于其昂贵的费用,仅局限于大型机的应用;BSD因为版权问题,失去了宝贵的发展时期
  • Linux家族
    • Minix(mini-UNIX)最初是由Andrew Tanenbaum教授,仿照4.3BSD的源代码,白手起家完成了12000行C语言的编写工作这个系统只是一个教学工具,没有什么实际应用价值
    • 1990年,Linus Torvalds决定编写一个自己的Minix内核,初名为Linus’ Minix,意为Linus的Minix内核,后来改名为Linux,此内核于1991年正式发布,并逐渐引起人们的注意
    • Linux操作系统的诞生、发展、和成长过程依赖于五个重要支柱:unix操作系统、minix操作系统、GNU计划、POSIX标准和互联网
    • GNU计划:GNU是“GNU is Not Unix”的递归缩写,由Richard M.Stallman于1984年创办,旨在开发一个免费、类unix的操作系统-GNU系统及其开发工具;Emacs编辑系统、BASH shell程序、GCC、GDB等开发工具都是GNU组织的产品
    • 1992年Linux与其他GNU软件结合,完全自由的操作系统正式诞生。该操作系统往往被称为“GNU/Linux”或简称
    • POSIX标准:POSIX标准定义了操作系统应该为应用程序提供的接口标准,POSIX标准用来统一Unix、Linux各分支编程接口,以提高其通用型和可移植性
  • Linux的两类用户
    在这里插入图片描述
  • Linux的远亲
    在这里插入图片描述
  • Linux和Unix的联系
    • UNIX系统是工作站上最常用的操作系统,它是一个多用户、多任务的实时操作系统,允许多人同时访问计算机, 并同时运行多个任务。UNIX系统具有稳定、高效、安全、方便、功能强大等诸多优点,自20世纪70年代开始便运行在许多大型和小型计算机上
    • UNIX虽然是一个安全、稳定且功能强大的操作系统,但它也一直是一种大型的而且对运行平台要求很高的操作系统,只能在工作站或小型机上才能发挥全部功能,并且价格昂贵,对普通用户来说是可望而不可及的,这为后来Linux的崛起提供了机会,Linux是一个类UNIX操作系统
    • Linux是免费的、不受版权制约、与UNIX兼容的操作系统
    • Linux在x86架构上实现了UNIX系统的全部特性,具有多用户多任务的能力,同时保持了高效性和稳定性,Linux具有如下的优秀的特点:
      • 开放性
      • 完全免费
      • 多用户,多任务
      • 设备独立性
      • 丰富的网络功能
      • 可靠的系统安全性
  • Linux内核版本
    • 内核(kernel)是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层
    • Linux内核版本又分为稳定版和开发版,两种版本是相互关联,相互循环
      • 稳定版:具有工业级强度,可以广泛地应用和部署。新的稳定版相对于较旧的只是修正一些bug或加入一些新的驱动程序
      • 开发版:由于要试验各种解决方案,所以变化很快
    • 内核源码网址:http://www.kernel.org,所有来自全世界的对Linux源码的修改最终都会汇总到这个网站,由Linus领导的开源社区对其进行甄别和修改最终决定是否进入到Linux主线内核源码中
  • Linux发行版本
    • Linux发行版 (也被叫做 GNU/Linux 发行版) 通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件
    • 这些操作系统通常由Linux内核、以及来自GNU计划的大量的函式库,和基于X Window的图形界面,在X Window中用户同样可以通过使用鼠标对窗口、菜单等进行操作来完成相应的工作
    • X Window系统是一个非常出色的图形窗口系统,是类UNIX系统的图形用户界面的工业标准。X Window系统最重要的特征之一就是它的结构与设备无关

二、文件系统

1 - 目录和路径

  • 目录:目录是一组相关文件的集合
    • 一个目录下面除了可以存放文件之外还可以存放其他目录,即可包含子目录
    • 在确定文件、目录位置时,DOS和Unix/Linux都采用“路径名+文件名”的方式。路径反映的是目录与目录之间的关系
  • 路径:Unix/Linux路径由到达定位文件的目录组成。在Unix/Linux系统中组成路径的目录分割符为斜杠“/”,而DOS则用反斜杠“\”来分割各个目录
  • 路径分为绝对路径和相对路径
    • 绝对路径
      • 绝对路径是从目录树的树根“/”目录开始往下直至到达文件所经过的所有节点目录
      • 下级目录接在上级目录后面用“/”隔开
      • 注意:绝对路径都是从“/”开始的,所以第一个字符一定是“/”
    • 相对路径
      • 相对路径是指目标目录相对于当前目录的位置
      • 如果不在当前目录下,则需要使用两个特殊目录“.”和“”了。目录“.”指向当前目录
  • shell:Unix版的命令解析器,默认运行在终端当中的程序(进程)
  • bash:born again shell,Linux版的命令解析器

2 - 文件系统

  • 文件在Linux操作系统中,所见皆文件
  • 家目录:宿主目录,每个用户不同,使用命令cd 回车
  • Linux目录结构(蓝色为需要掌握的目录)
    • /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。当你在终端里输入“/home”,你其实是在告诉电脑,先从/(根目录)开始,再进入到home目录
    • /bin: /usr/bin: 可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等
    • /boot:放置linux系统启动时用到的一些文件,如Linux的内核文件:/boot/vmlinuz,系统引导管理器:/boot/grub
    • /dev:存放linux系统下的设备文件,访问该目录下某个文件,相当于访问某个设备,常用的是挂载光驱 mount /dev/cdrom /mnt
    • /etc:系统配置文件存放的目录,不建议在此目录下存放可执行文件,重要的配置文件有 /etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d
    • /home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~ 表示当前用户的家目录,~edu 表示用户 edu 的家目录
    • /lib: /usr/lib: /usr/local/lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助
    • /lost+fount:系统异常产生错误时,会将一些遗失的片段放置于此目录下
    • /mnt: /media:光盘默认挂载点,通常光盘挂载于 /mnt/cdrom 下,也不一定,可以选择任意位置进行挂载
    • /opt:给主机额外安装软件所摆放的目录
    • /proc:此目录的数据都在内存中,如系统核心,外部设备,网络状态,由于数据都存放于内存中,所以不占用磁盘空间,比较重要的目录有 /proc/cpuinfo、/proc/interrupts、/proc/dma、/proc/ioports、/proc/net/* 等
    • /root:系统管理员root的家目录(宿主目录)
    • /sbin: /usr/sbin: /usr/local/sbin:放置系统管理员使用的可执行命令,如fdisk、shutdown、mount 等。与 /bin 不同的是,这几个目录是给系统管理员 root使用的命令,一般用户只能"查看"而不能设置和使用
    • /tmp:一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下
    • /srv:服务启动之后需要访问的数据目录,如 www 服务需要访问的网页数据存放在 /srv/www 内
    • /usr:应用程序存放目录,/usr/bin 存放应用程序,/usr/share 存放共享数据,/usr/lib 存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。/usr/local: 存放软件升级包。/usr/share/doc: 系统说明文件存放目录。/usr/share/man: 程序说明文件存放目录。/usr/include:存放头文件
    • /var:放置系统执行过程中经常变化的文件,如随时更改的日志文件 /var/log,/var/log/message:所有的登录文件存放目录,/var/spool/mail:邮件存放的目录,/var/run:程序或服务启动后,其PID存放在该目录下

3 - 文件管理

  • 命令ls -l
    • ①.文件属性
    • ②.硬链接计数
    • ③.文件所属用户
    • ④.文件所属用户组
    • ⑤.文件所占存储空间大小(字节)
    • ⑥.文件创建、最后一次修改时间
    • ⑦.文件名

在这里插入图片描述

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

三、文件管理命令

1 - ls、输出重定向、more

  • ls查看文件信息常用参数
    • -a:显示指定目录下所有子目录与文件,包括隐藏文件(以 “.”开头的文件或目录)
    • -l:以列表方式显示文件的详细信息
    • -h:配合 -l 以人性化的方式显示文件大小
    • --help:查看帮助信息(man 命令名)
      在这里插入图片描述
  • 通配符
通配符        
含义
*文件代表文件名重所有字符
ls te*查找以te开头的文件
ls *html查找结尾为html的文件
?代表文件中任意一个字符
ls ?.c只查找第一个字符任意,后缀为.c的文件
ls a.?只找只有3个字符,前2字符为a.,最后一个字符任意的文件
ls [a-f]*找到从a到f范围内的的任意一个字符开头的文件
\如果要使通配符作为普通字符使用,可以在其前面加上转义字符。“?”和“*”处于方括号内时不用使用转义字符就失去通配符的作用
ls *a查找文件名为*a的文件
  • 输出重定向命令>:Linux允许将命令执行结果重定向到一个文件,本应显示在终端上的内容保存到指定文件中;如:ls > test.txt ( test.txt 如果不存在,则创建,存在则覆盖其内容 )
    • >输出重定向会覆盖原来的内容
    • >>输出重定向则会追加到文件的尾部
      在这里插入图片描述
  • 分屏显示:more:查看内容时,在信息过长无法在一屏上显示时,会出现快速滚屏,使得用户无法看清文件的内容,此时可以使用more命令,每次只显示一页,按下空格键可以显示下一页,按下q键退出显示,按下h键可以获取帮助
    • 类似功能命令:less、cat、tac(反向读取文件内容,例如查看log内容)
      在这里插入图片描述

2 - 管道、clear、cd、pwd

  • 管道:一个命令的输出可以通过管道做为另一个命令的输入;管道我们可以理解现实生活中的管子,管子的一头塞东西进去,另一头取出来,这里“ | ”的左右分为两端,左端塞东西(写),右端取东西(读)

在这里插入图片描述

  • 清屏clear:clear作用为清除终端上的显示(类似于DOS的 3清屏功能),也可使用快捷键:Ctrl + l ( “l” 为字母 )
  • 筛选系统进程ps aux | grep xxx —— 筛选系统中,所有正在运行的 xxx 进程
  • cd切换工作目录:change directory —— 进入某个目录
    • cd /bin 绝对路径
    • cd … 上一级目录
    • cd ./ 当前目录
    • cd ~ 回用户宿主目录(家目录)
    • cd 回车 回用户宿主目录(家目录)
    • cd - : 切换到上一次工作过的目录中
  • pwd:查看当前进程工作目录位置
  • 终端提示符的语法规则:用户名@主机名:当前shell进程工作目录 $ / #【$:普通用户、#:管理员】

3 - 创建删除:目录和软硬链接

  • 创建目录:mkdir 目录名

    • -p: 递归一次性创建多个目录
      在这里插入图片描述
  • 删除文件和目录:rm -r

    • -r: 递归删除目录子内容
    • -i:以进行交互式方式执行
    • -f:强制删除,忽略不存在的文件,无需提示
    • rm 命令删除的文件、目录不易恢复 !!!!!!!!!!
      在这里插入图片描述
  • ln命令

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

4 - 文件的查看、拷贝、移动、改名

  • 查看或者合并文件内容:cat
    在这里插入图片描述
  • 拷贝文件:cp:cp命令的功能是将给出的文件或目录复制到另一个文件或目录中,相当于DOS下的copy命令
    • -a:该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录,简单而言,保持文件原有属性
    • -f:覆盖已经存在的目标文件而不提示
    • -i:交互式复制,在覆盖目标文件之前将给出提示要求用户确认
    • -r:若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标文件必须为一个目录名
    • -v:显示拷贝进度
      在这里插入图片描述
  • 移动文件mv:用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名
    • 移动文件: mv 待移动文件名 目录位置
    • 改名文件: mv 待改名文件名 不存在的文件、目录名
    • -f:禁止交互式操作,如有覆盖也不会给出提示
    • -i:确认交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件
    • -v:显示移动进度
      在这里插入图片描述
  • 获取文件类型file:Linux系统文件类型不是根据文件扩展名分类的,通过file命令可以确认文件具体类型
    在这里插入图片描述

5 - 压缩与解压缩

  • 归档管理tar打包:计算机中的数据经常需要备份,tar是Unix/Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据
  • 压缩命令gzip:不能打包压缩!不能保留源文件。不能压缩目录
  • 压缩命令bzip2:不能打包压缩!不能压缩目录
  • 压缩结论
    • 压缩:tar -zcvf xxx.tar.gz 打包压缩材料tar -jcvf xxx.tar.bz2(.tar.gz : .tar.bz2: 不具有语法强制性。但是推荐使用!)
      • z: gzip格式压缩;j: bzip2 格式压缩
      • c: 创建压缩文件
      • v: 输出压缩详细
      • f: 指定压缩后的文件名
  • 解压结论
    • 解压缩:tar -zxvf xxx.tar.gz;tar -jxvf xxx.tar.bz2
  • zip
    • 压缩:zip -r 压缩包名(没有.zip后缀) 打包压缩材料
    • 解压缩: unzip -d 解压缩位置目录 xxxzip(待解压缩文件)
  • rar
    • 压缩:rar a -r 压缩包名.rar(后缀可加可不加) 打包压缩材料
    • 解压缩: rar x 待解压缩包名.rar

6 - 用户、用户组管理

  • 查看当前登录用户whoami:whoami该命令用户查看当前系统当前账号的用户名。可通过cat /etc/passwd查看系统用户信息
  • 退出登录账户exit
    • 如果是图形界面,退出当前终端
    • 如果是使用ssh远程登录,退出登陆账户
    • 如果是切换后的登陆用户,退出则返回上一个登陆账号
  • 切换用户su:通过su命令切换用户
    • su 用户名: 切换到指定用户登录,不修改工作目录位置
    • su - 用户名: 切换到指定用户登录,修改工作目录位置到该用户的宿主目录
    • su - root:切换root用户登录,修改工作目录位置到 root 的 宿主目录
    • su root:切换root用户登录,不改变工作目录位置 等价于( sudo su )
    • sudo关键字:临时获得一次root用户权限。执行完后续命令,该权限失效
  • 添加新用户:sudo adduser 新用户名
  • 删除新用户:sudo deluser 用户名
  • 设置用户密码passwd:在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户口令。用户也可以直接使用该命令来修改自己的口令,而无需在命令后面使用用户名
  • 修改文件所有者:chown 新用户名 待修改用户的文件名
    在这里插入图片描述
  • 添加新用户组:sudo addgroup 新组名
  • 删除新用户组:sudo delgroup 组名(家目录的文件还是存在的)
  • 修改文件所属组:chgrp 新组名 待修改组名的文件名
  • 修改文件到新的用户、用户组:使用命令chown 用户名:用户组名 文件或目录名可直接同时修改文件的所有者和所属组。如:sudo chown nobody:nogroup a.c可将a.c文件设置到 nobody用户、nogroup 用户组下

7 - 权限管理

  • chmod:修改文件、目录访问权限
    • 数字法:r、w、x : 4/2/1(示例:r-x-w-r–: 5 2 4)

在这里插入图片描述

  • rwx对于目录文件的含义
    • r:
      • 文件:查看文件内容、cat、more、less、tac、vim(读)、gedit(读)
      • 目录:目录的内容(目录项)可以被查看,ls、vim(读)
    • w:
      • 文件:修改、删除文件内容,cat > can >>,vim(写、删)、gedit(写、删)
      • 目录:目录的内容(目录项)可以被修改、删除、增加mv、cp、rm、rmdir、mkdir、touch
    • x:
      • 文件:该文件可以运行
      • 目录:该目录可以被进入

四、系统管理命令

1 - 进程相关命令

  • 查看进程信息ps:ps aux | grep xxxx
    • -a:显示终端上的所有进程,包括其他用户的进程
    • -u:显示进程的详细状态
    • -x:显示没有控制终端的进程
    • -w:显示加宽,以便显示更多的信息
    • -r:只显示正在运行的进程

top:Linux下的 任务管理器

在这里插入图片描述

  • 终止进程:kill -9 欲终止的 进程ID (可以通过 ps aux | grep 获取)【9 —— SIGKILL】
  • 前台与后台的区别:判别标准是 —— 是否能与用户完成交互
    • firefox www.baidu.com执行后,CTRL+C,终端可以关闭掉火狐的浏览器,这个是前台的进程
    • 而使用firefox www.baidu.com &,就无法使用CTRL+C关闭火狐浏览器了
    • & : 将进程放置到后台执行
    • jobs: 查看后台运行的进程
    • fg:恢复后台一个进程到前台执行; + 优先级高;指定某一个进程恢复到前台来;用 jobs查看的 “进程编号”

2 - 关机重启

  • 关机重启
    • reboot:重新启动操作系统
    • shutdown –r now:重新启动操作系统,shutdown会给别的用户提示
    • shutdown -h now:立刻关机,其中now相当于时间为0的状态
    • shutdown -h 20:25:系统在今天的20:25 会关机
    • shutdown -h +10:系统再过十分钟后自动关机
    • init 0:关机
    • init 6:重启

3 - 网络设置

  • 查看或配置网卡信息ifconfig
    • eth0:网络接口名称
    • Link encap:链路封装协议
    • Hwaddr:网络接口的MAC地址
    • Inet addr:IP地址
    • Bcast:广播地址
    • Mask:子网掩码
    • UP:网络接口状态标识,UP已经启用,DOWN已经停用
    • BROADCAST:广播标识,标识网络接口是否支持广播
    • RUNNING:传输标识,标识网络接口是否已经开始传输分组数据
    • MULTICAST:多播标识,标识网络接口是否支持多播
    • MTU,Metric:MTU:最大传输单位,单位:字节。Metric:度量值,用于RIP建立网络路由用
    • RX bytes:接收数据字节统计
    • TX bytes:发送数据字节统计
      在这里插入图片描述
  • ifconfig配置网络参数sudo ifconfig ens33 新IP只有root才能用ifconfig配置参数,其他用户只能查看网络配置
    • -a:显示所有网络接口状态
    • inet [IP地址]:设置IP地址
    • netmask [子网掩码]:设置子网掩码
    • up:启用网络接口
    • down:关闭网络接口
  • 临时设置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地址 —— 命令:通过修改配置文件,达到永久修改IP的目的
    • 修改 /etc/network/interfaces 文件。 添加 网址、子网掩码、网关
    • 指定DNS服务器
      在这里插入图片描述
  • 测试远程主机连通性ping:发送一个测试数据包,到指定的 IP地址。测试是否畅通
    • -a 每次相应时都发出声音警示
    • -A 表示以实际往返相应时间为间隔,连续发送消息
    • -f 连续不断发送消息,不管是否收到相应
    • -n 只显示主机IP,不需要把IP解释成主机名
    • -c 发送指定次数数据报信息后停止,ping -c 5 192.168.10.254
    • -i 每次发送消息时间间隔,默认一秒,ping -i 2 192.168.10.254
    • -s 分组数据大小,默认64字节
    • -w 以秒为单位的超时值,一旦超时,就立即停止

4 - 虚拟机网络设置

  • 桥接模式:路由器给虚拟Linux单独分配一个IP地址,与 windows 所在同一网段(相当于虚拟机虚拟成一台电脑)
  • NAT模式:Linux 虚拟机借助windows网卡,访问外网,linux和windows公用访问外网的IP(共享主机的IP的地址)

5 - 查找与检索

  • 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:按大小搜索(+ : 大于、 - : 小于)
      • find ~/ -size +3M -size -8M —— M只支持大写
      • find ~/ -size +3k -size -8k —— k只支持小写
      • find ./ -size +3 -size -8 —— 无单位,按扇区个数计算(一个扇区大小为 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
  • grepgrep -r/-R "love" 目标目录位置 —— 递归的在指定目录中,找寻包含某字符串的文件
  • 结合find、xargs、grepfind -maxdepth 1 -type 'f' -print0 | xargs -0 grep "love" -n —— 找寻当前目录下,包含 “love”的文件,并显示在 多少行出现 (-n 行号)

Linux系统常用快捷键
打开终端:CTRL+ALT+T
关闭终端:CTRL+D
清除已经输入的内容:CTRL+U
清屏:clear
Ctrl + Alt + ↓ 或 ↑ —— 虚拟一块新桌面
Ctrl + Alt + T —— 唤醒一个新终端(独立)
Ctrl + shift + T —— 在一个终端里,创建多个shell标签

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

无休止符

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

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

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

打赏作者

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

抵扣说明:

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

余额充值