• lesson


    一、ls 命令

    作用:用来显示目录列表。
    语法: ls  (选项) (参数)
    选项:
    -a: 显示所有档案以及目录(ls内定将档案或目录名称为“./..”的视为隐藏)
    -A: 显示除隐藏文件“./..”以外的所有文件列表
    -b: 将文件中的不可输出的字符以反斜线加字符编码的方式输出
    -c : 与”-lt“ 选项连用时,按照文件状态时间排序输出目录内容, 排序的依据是文件的索引节点中的ctime 字段。 与”-l“连用时,排序的依据是文件的状态改变时间。
    -C: 多列显示输出结果(只有文件名信息)
    -d : 仅显示目录名,而不显示目录下的内容列表, 显示符号链接文件本身, 而不显示其指定的目录列表。
    -F:  在每个输出项后最佳文件的类型标识符, * 可执行权限的普通文件,/ 表示目录, @ 表示符号链接,|表示命令管道, = 表示sockets 套接字,  普通文件不输出标识符。
    -h: 以human易读格式显示, 文件大小以kb,mb显示
    -i :  显示文件索引节点号(inode),一个索引节点代表一个文件
    -l : 以长格式显示目录下的内容列表,输出信息:文件名,文件类型,权限模式,硬链接数,所有者,组,文件大小, 文件最后修改时间。
    -L : 如果遇到性质为符号链接的文件或目录, 直接列出该链接所造的原始文件或目录
    -m: 以逗号分隔每个文件和目录的名称
    -n : 以用户标志码和群组识别码替代其名称uid /gid
    -r : 以文件名反序排序并输出目录内容列表
    -R:递归处理,将制定目录下的所有文件及子目录一并处理
    -s : 显示文件和目录的大小, 以区块为单位
    -t : 用文件和目录的更改时间排序
    参数:
    目录:制定要显示列表的文件,也可以是具体的目录
    实例:
    ls -lX/ -l --sort=extension":扩展名排序
    ls -lhS" ,文件从大到小排序
    ls -l --si : si以1000为单位,而-h以1024为单位。
    ls -l --block-size=M: 设置文件显示单位
     

    二、alias 命令

    作用:
     设置命令别名,可以将较长的命令进行简化,使用alias 时,用户必须使用单引号将原来的命令引起来,防止特殊字符导致错误。
    如要永久生效则将alias 命令存放到bash 的初始化文件 /etc/bashrc中。
    语法:
    alias (选项)(参数)
    选项:
    -p: 打印已经设置的目录别名
    参数:
    命令别名 = 实际命令
    实例:
    alias 新命令= '原命令 -选项/ 参数'
    alias l  ='ls -lsh'
    删除别名: unalias 别名
    查看系统设置的别名:   键入 alias 
     
    三、目录结构
    目录: 
    / 根目录
    /bin      存放必要的命令
    /sbin     存放系统管理程序
    /boot   存放内核以及启动所需的文件等
    /dev     存放设备文件
    /etc      存放系统的配置文件
    /home  用户文件的主目录,用户数据存放在其主目录中
    /lib        存放必要的运行库
    /mnt     存放临时的映射文件系统,我们常把软驱和光驱挂装在这里的floppy和cdrom子目录下。
    /proc     存放存储进程和系统信息
    /root     超级用户的主目录
    /tmp     存放临时文件的目录
    /usr       包含了一般不需要修改的应用程序,命令程序文件、程序库、手册和其它文档。
    /var       包含系统产生的经常变化的文件,例如打印机、邮件、新闻等假脱机目录、日志文件、格式化后的手册页以及 一些应用程序的数据文件等等。建议单独的放在一个分区。
     

    四、ldd 命令

    作用:
    打印程序或者库文件所依赖的共享库列表
    语法:
    ldd (选项)(参数)
    选项:
    -v:详细信息模式,打印所有相关信息
    -u:打印未使用的直接依赖
    -d:执行重定位和报告任何丢失的对象
    -r:执行数据对象和函数的重定位,而且报告任何丢失的对象和函数
    参数:
    文件: 指定可执行程序或文库
    其他:
    ldd 不是一个可执行程序,而是一个shell脚本,ldd 能够显示可执行模块的依赖管理的模块,其原理是通过设置一系列的环境变量(LD_TRACE_LOADED_OBJECTS,LD_WARN,LD_BIND_NOW,LD_LIBRARY_VERSION,LD_VERBOSE),当环境变量不为空时, 任何可执行程序在运行时,它都只显示依赖模块, 程序并不执行。  本质是通过ld-linux.so (elf动态库的装载器)来实现的, ld-linux.so 会先于executable 模块程序工作, 并获得控制权, 因此当环境变量被设置时, ld-linux.so选择了可执行模块的依赖模块。

    五、cd 命令

    作用: 
    cd 用来切换目录,目录表示法可为绝对路径或相对路径, 若目录名称省略,则变换至使用者的登陆目录。 ~ 可表示为家目录,.为当前目录,..为上级目录
    语法:
    cd (选项)(参数)
    选项:
    -p: 如果要切换到的目标目录是一个符号链接,直接切换到符号链接所指定的目标目录
    -L: 如果要切换的目标目录是一个符号的连接,直接切换到字符连接名代表的目录,而非符号连接所指向的目标目录。
    实例:
    cd    : 进入用户主目录
    cd ~: 进入用户主目录
    cd - : 返回上次进入的目录
    cd .. : 返回上级目录
    cd ../../: 返回上两级目录
     
    六、pwd 命令
    作用:
    以绝对路径的方式显示用户当前工作目录, 命令将当前目录的全路径名称(从根目录)写入标准输出。全部目录使用‘/’分隔,第一个‘/’表示根目录,最后一个目录是当前目录。执行pwd 命令可立刻知道您目前所在的工作目录的绝对路径名称。
     
    七、环境变量
    查看:
    单个环境变量:echo $PATH 
    所有环境变量:env
    本地定义变量:set
    删除:
    unset 
    常见变量:
    PATH: 决定了shell 将到那些目录中寻找命令或程序
    HOME:当前用户主目录
    HISTSIZE:历史记录数
    LOGNAME:当前用户登录名
    HOSTNAME:主机名称
    SHELL: 当前用户shell 类型
    LANGUGE: 语言相关的环境变量
    MAIL:当前用户的邮件存放目录
    PS1:基本提示符,对root是# ,普通用户是$
    永久修改:
    1. /etc/profile: 对所有用户生效;此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行;并从/etc/profile/目录的配置文件中搜集shell 的设置
    vi /etc/profile
    export CLASS_PATH = /.JAVA_HOME/lib;$JAVA_HOME/jre/lib
    重新登录或者 source /etc/profile 生效
    2. /etc/bashrc:对所哟用户生效; 为每一个运行bash shell 的用户执行此文件 ,当bash shell 被打开时,该文件被读取。设置方法同上。
    3.~/.bash_profile: 仅对当前用户生效,每个用户都可以使用该文件输入专用于自己使用的shell信息, 当用户登陆时,该文件仅仅执行一次。 设置方法同上
    4.~/.bashrc:仅对当前用户有效; 该文件包含专用于bash shell 的bash 信息,当登录时以及每次打开新的shell时,该文件被读取,另~/.bashrc等中设定的变量只能继承/etc/profile 中的变量, 他们是继承父子关系。
    临时修改:
    1.使用export命令声明即可,变量只在当前的shell(BASH)或其子shell(BASH)下是有效的,在关闭shell后失效,再打开新的shell时就没有这个变量, 需要使用的话还需要重新定义。
    export 变量名= 变量值  
    八、快捷键
    Ctrl+c  取消命令
    Ctrl+z 暂停命令
    Ctrl+a 光标到行首
    Ctrl+e 光标到行尾
    Ctrl+u 删除光标前所有字符
    Ctrl+k 删除光标后所有字符
    Ctrl+l 清屏
    Ctrl+d 退出登录 == exit
    Ctrl+s 锁住命令终端,按任何键都不会有反应
    Ctrl+q 解锁命令终端

     

     
  • 相关阅读:
    31天重构指南之二十:提取子类
    31天重构指南之二十二:分解方法
    大叔手记(17):大叔2011年读过的书及2012年即将要读的书
    深入理解JavaScript系列(5):强大的原型和原型链
    深入理解JavaScript系列(10):JavaScript核心(晋级高手必读篇)
    深入理解JavaScript系列(11):执行上下文(Execution Contexts)
    深入理解JavaScript系列(8):S.O.L.I.D五大原则之里氏替换原则LSP
    深入理解JavaScript系列(4):立即调用的函数表达式
    深入理解JavaScript系列(3):全面解析Module模式
    深入理解JavaScript系列(7):S.O.L.I.D五大原则之开闭原则OCP
  • 原文地址:https://www.cnblogs.com/LinuxSuDa/p/4350926.html
Copyright © 2020-2023  润新知