Linux

Java基础IO类之字符串流(查字符串中的单词数量)与管道流

目录

1 Linux简介

1.1 基本思想

  • 一切都是文件
  • 每个软件都有确定的用途

1.2 特点

  • 多用户、多任务
  • 完全免费

2 Linux目录结构

  • /boot: 启动目录,内核存放地
  • /etc: 配置文件存放地
  • /tmp: 程序产生的临时文件
  • /home: 用户的目录
  • /lib: 库文件
  • /bin: 可执行文件和常用的Linux命令
  • /sbin: 系统管理员的命令和工具
  • /usr: 应用程序和文件的安装地
  • /mnt:挂接其他文件系统
  • /root:root账户的home目录(根目录)
  • /dev: 存放Linux系统下的设备文件

3 常用命令

3.1 文件编辑命令

  • touch
    • 功能:创建文本(不能插入内容)
    • 格式:touch 文本文件名字
  • gedit
    • 功能:用记事本打开文件,若文件不存在,则自动创建该文件
    • 格式:gedit 文本文件名字
  • vi/vim
    • 功能: 生成新文件或者编辑、查看文件
    • 格式: vi file_name
    • 从命令模式进入编辑模式
      • i 插入文本
      • a 追加文本
    • 从编辑模式进入命令模式
      • ESC
    • 命令模式
      • :w 保存文件
      • :wq 保存并退出
      • :wq! 保存并强制退出
      • :q 退出
      • :q! 强制退出
      • dd 删除一行文字
      • x 删除一个字符
      • :n 光标移至文本第n行
      • $ 光标移至文本的行尾
      • G 光标移至文本的末尾
      • / 查找某个字符串

3.2 管理文件和目录的命令

  • pwd
    • 显示当前用户所处的路径
  • cd
    • 功能:改变用户所在的目录(change edirctory)
    • 格式:cd <目录名>
      • cd .. 返回到当前目录的上一级目录
      • cd 返回当前用户的主目录
      • cd /home 用路劲切换到home目录
  • ls
    • 功能:查看目录下的内容
    • 格式:ls [参数] [目录或文件]
      • -a 列举目录中的全部文件,包括隐藏文件
      • -l 列举目录中的细节,包括权限、所有者、组群、大小、创建日期、文件是否是链接等
      • -r 逆向,从后向前地列举目录中内容
      • -R 递归,递归地列举当前目录下所有子目录内的内容
      • -s 大小size: 数据块
      • 例子:ls -l 1.txt 列举文件1.txt中的所有信息
  • grep
    • 功能:在一堆文件中查找一个特定的字符串
    • 格式:grep 字符串 指定文件名(区分大小写!)(-i参数忽略大小写)
  • find
    • 功能:用来在特定的目录下搜索符合条件的文件,也可以用来搜索特定用户属主的文件
    • 格式:find 指定文件名(文件名可以含有通配符)
  • cp
    • 功能:拷贝文件或复制文件
    • 格式:cp [源文件] [目标文件] (把源文件拷贝一份命名为目标文件明)
      • -i 互动:如果文件将覆盖目标文件中的文件,它会提示确认
      • -r 递归:这个选项会复制整个目录、子目录以及其他
      • -v 详细:显示文件的复制进度
      • -p 属性:连同文件的属性一起复制过去
  • mv
    • 功能:可以对文件或者目录进行移动
    • 格式:mv [源对象] [目的未向]
      • -i 互动:如果选择的文件将覆盖目标文件中的文件,它会提示确认
      • -f 强制:不提示地移动文件
      • -v 详细:显示文件的移动进度
  • mkdir
    • 功能:创建目录
    • 格式:mkdir [目录名1] [目录名2] ... ...
      • -p 创建一个嵌套的目录,但是目录里面只能嵌套一个目录(当父目录不存在时要使用 -p)
      • -m 直接赋予文件相应的权限
  • rmdir
    • 功能:删除空目录
    • 格式:rmdir [参数] [目录1] [目录名2] ... ...
  • rm
    • 功能:删除文件
    • 格式:rm [参数] [文件]
      • -i 互动:提示确认删除
      • -f 强制:代替互动模式,不在=提示确认删除
      • -v 详细:显示文件的删除进度
      • -r 递归:将删除某个目录以及其中所有的文件和子目录
      • 注意:多个参数可以一起使用,如:-rf

3.3 线上查询的命令

  • man
    • 功能:用来查询和解释一个命令的使用方法和这个命令的注意事项
    • 格式:man 命令名称
  • locate
    • 功能:定位文件和目录
    • 格式:locate 文件或者目录名字
    • 注意:若命令不能使用,则先输入命令updatedb
  • whatis
    • 功能:用来查询某个命令的含义
    • 格式:whatis 命令名称
    • 注意:若命令不能使用,则先输入命令makewhatis

3.4 文件备份和压缩命令

  • bzip2
    • 功能:用来压缩文件,并被保存为.bz2格式
    • 格式:bzip2 filename
  • bunzip2
    • 功能:用来解压缩文件
    • 格式:bunzip2 filename.bz2
  • gzip
    • 功能:用来压缩文件,并被保存为.gz格式
    • 格式:gzip filename
    • gzip -r file 把目录中的内容压缩起来
  • gunzip
    • 功能:用来解压缩文件
    • 格式:gunzip filename.gz
    • 注意:压缩之后,源文件不存在
  • tar
    • 功能:将文件或者目录进行打包、或者解压缩
    • 格式:tar [参数] [打包后的文件名] [需要打包的文件或目录]
      • -c 创建压缩文件
      • -x 展开归档文件
      • -t 显示包括在tar文件中的文件列表
      • -z 压缩/解压缩文件(gz格式)
      • -v 写入或读取时,显示所有的文件
      • -f 指名要展开的归档文件名
      • -j 压缩或者解压缩文件(bz2格式)
      • 注意:压缩之后,源文件不受到影响
    • 打包:tar cvf test.tar /home/test
    • 解压缩:tar cvf test.tar

3.5 文件阅读的命令

  • cat
    • 功能:显示文本内容(从第一行开始)
    • 格式:cat 文本文件名字
  • tac
    • 功能:显示文本内容(从最后一行开始)
    • 格式:tac 文本文件名字
  • nl
    • 功能:显示文本内容(显示的时候,顺道输出行号!)
    • 格式:nl 文本文件名字
  • head
    • 功能:查看文件开头部分
    • 格式:head [-行数] 文件名(默认前10行,可以自己设置)
  • tail
    • 功能:查看文件结尾部分
    • 格式:tail [-行数] 文件名(默认前10行,可以自己设置)
  • more
    • 功能:按页来查看文件的内容
    • 格式:more [参数] [fielnames]
      • -num 一次显示的行数
      • -f 计算行数时,以实际上的行数,而非自动换行过后的行数
      • +num 从第num行开始显示
      • 空格键和z建向下翻页
  • less
    • 功能:与more类似,但可以往前翻页
    • 格式:less 文本文件名字
      • 空格键和z建向下翻页
      • b建向前翻页
      • g建返回首页
  • history
    • 功能:查看之前输入过的所有命令

3.6 定位查找文件的命令

  • which
    • 功能:依序从path环境变量所列的目录中找出命令的位置,并显示完整路径的名称。一旦找到,就立刻停止搜索。
    • 格式:which 命令
  • whereis
    • 功能:查找符合条件的文件,whereis命令只能以用于程序名的搜索。定位一些文件在文件系统中的位置。
    • 格式:whereis [参数] [文件或者目录名称]
      • -b 只找二进制文件
      • -s 只找source源文件

3.7 管理使用者和设立权限的命令

  • chmod
    • 功能:用来改变许可权限。
    • 格式:chmod 文件使用者(u,g,o)增减(+-=)权限名称(r,w,x) 文件或者目录
      • r/4——文件可以被读取
      • w/2——文件可以被写入
      • x/1——文件可以被执行,如果文件时程序的话
    • 文件权限由十位组成
      • 第一位为“-”:表示为文本文件
      • 第一位为“d“:表示为目录
      • 剩下的9位每三位为一组
        • 第一组:代表文件主人的权限 u
        • 第二组:代表和文件主人同组成员的权限 g
        • 第三组:代表其他人的权限 o
        • a 代表所有
        • “rwx”的顺序,缺少用”-“代替
    • 例子:
      • 删除某一文件的所有限:chmod a-rwx text.txt
      • 用数字表示权限:chmod 751 filename 表示:u=rwx,g=r-x,o=–x
  • useradd
    • 功能:添加一个用户
    • 格式:useradd [用户名]
  • userdel
    • 功能:删除一个用户
    • 格式:userdel [参数] [用户名](参数一般为-r,把用户的主目录一起删除)
  • chgrp
    • 功能:用于变更文件或目录的所属群组
    • 格式:chgrp [用户] [文件或目录]
  • chown
    • 功能:将文件的拥有者改为指定的用户或组
    • 格式:chown [用户] [文件或目录]
    • 注意:一般只有系统管理者(root)可以使用该命令
  • su
    • 功能:用来修改用户
    • 格式:su [用户名]
      • su 用户 :代表切换用户,但是环境变量保持现在用户的环境变量
      • su -l 用户:代表切换用户并载入那个用户的环境变量
  • who
    • 功能:用于查看当前所有登录系统的用户信息
    • 格式:who [参数]
      • -q: 只显示用户的登录账号和登录用户的数量
      • -u: 显示列标题

3.8 有关关机和查看系统信息的命令

  • 退出
    • exit
    • 文本模式下使用Ctrl+D
  • 重新启动
    • reboot
    • shutdown -r <time> 例如:shutdown -r now/11:30
  • 关机
    • halt
    • shutdown -h <time>
      • shutdown -h now
      • shutdown -h 11:30
      • shutdown -t 2 在2min内关机
      • -c 取消待执行的关机命令
      • -r 重启
      • -p 关机,等价于 -h
  • ps
    • 功能:查看在计算机系统中,有哪些程序正在执行及其执行情况。用它来找出所有的process id和名称
    • 参数
      • -l 用长格式列出
      • -u 列出使用者的名称和使用时间(Centos中特殊:ps u)
      • -m 列出内存分布的情况
      • -r 只罗列出正在执行的程序,不列出其他信息
      • -x 列出所有程序
  • top
    • 功能:可以查看目前程序的执行情景和内存使用
    • 类似于ps,不过它几秒钟就会更新一次系统状态(按Ctrl+Cq终止)
  • kill
    • 功能:用来终止一个正在执行中的进程
    • kill -l (显示系统正在运行的进程)

3.9 磁盘空间命令

  • df
    • 功能:检查磁盘的使用量
    • -a 可以列出全部文件系统和各分区的磁盘使用情况
  • du
    • 功能:显示文件目录的大小
    • 格式:du [参数] [文件名字]
      • -ab 列出所有文件和目录所占的空间

3.10 网路操作命令

  • ifconfig

    • 功能:显示网络设备状态
  • ping

    01-TensorFlow2.0基础

    • 功能:用于检测主机
  • netstat

    • 功能:知道整个Linux系统的网络情况或显示网络状态

    • -a 显示UDP端口号的使用情况

  • service network restart

    • 功能:网络重启

基于springboot的web项目最佳实践

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享