• 【Linux学习笔记】Linux基础


    Unix/Linux架构

    由内到外:硬件-核(Kernel)-Shell-应用

    Process vs. Threads 进程与线程

    1. 进程是独立的,线程是进程的子集
    2. 一个进程的多个线程共享内存、地址空间和其他资源
    3. 同一进程中线程之间的上下文切换通常比进程之间的上下文切换要快。

    基本命令

    进程process

    ps 当前进程的展示
    pstree显示进程树,比较全面

    top提供正在运行的系统的动态实时视图
    htop更全面的系统的动态实时视图的展示

    w 展示不同用户的登录记录和其在做什么
    history 历史命令

    硬盘和文件

    • df 文件系统硬盘空间使用情况(disk files)

    df -i --inode 显示inode, 主要是用来查看硬链接的
    df -h --human-readable 使用人类可读的格式(文件大小用字节为单位表示)

    inode包含很多的文件元信息,但不包含文件名,例如:字节数、属主UserID、属组GroupID、读写执行权限、时间戳等。
    表面上,用户通过文件名打开文件,实际上,系统内部将这个过程分为三步:
    1.系统找到这个文件名对应的inode号码;
    2.通过inode号码,获取inode信息;
    3.根据inode信息,找到文件数据所在的block,并读出数据。
    其实系统还要根据inode信息,看用户是否具有访问的权限,有就指向对应的数据block,没有就返回权限拒绝。

    • du

    du -sh *
    du -sh

    • ls 列出目录内容

    ls -lrt s* 按时间顺序列出目前工作目录下所有名称是 s 开头的文件 :
    ls -lih 使用人类可读的格式列出目录内容

    文件

    • find

    find ./ -name "search*.go"
    find ./ -size +10k
    find ./ -name "no-use.log -exec "rm -fr {}"

    • tail

    tail -f -n 10 test.go 显示该文件最后

    • zip 压缩率不高,但使用广泛、兼容性好

    zip <file.zip> <file> 压缩文件
    zip -r <dir.zip> dir1/ dir2/ 压缩文件夹

    • bzip2

    bzip2 <file> 无法递归的对目录下文件进行压缩与解压操作

    • tar

    tar xvzf go.tar.gz 解压缩
    tar cvzf go.tar.gz go/* 压缩

    • date

    date +%Y%m%d -d "1day" 可以设置时间推迟一天
    date +"mylog-%Y-%m-%d.log"


    Shell编程

    管道和重定向

    • command1 | command2 |... 管道

    ls -lh | grep go
    tail -f log/searcher.log | grep WARNING | grep cmd:1

    • > >> 重定向
      command > output.file
      command >> output.file
      command > output.file 2>&1

    关于2>&1的介绍,可以参考文章深入理解Linux shell中2>&1的含义


    变量

    系统变量 含义
    BASH=/bin/bash 变量名
    BASH_VERSION=1.14.7(1) shell版本
    COLUMNS=80 屏幕输出列数
    HOME=/home/vivek home文件夹
    LINES=25 屏幕输出行数
    LOGNAME=students 登录名
    OSTYPE=Linux OS类型
    PATH=/usr/bin:/sbin:/bin:/usr/sbin PATH设置
    PS1=({debian_chroot:+()debian_chroot)}u@h:w$ prompt settings

    函数

  • 相关阅读:
    Unity3d启动事件
    UI 科学
    LOL
    流光
    PlayerPrefs
    C++
    Android Home
    状态机
    架构设计
    AI
  • 原文地址:https://www.cnblogs.com/lvjincheng/p/13418535.html
Copyright © 2020-2023  润新知