linux笔记

shell
命令行解释器,是用户与系统沟通时的媒介
linux采用bash为其默认shell
系统可以使用的shell记录在/etc/shells 中

GNU计划一个组件
支持命令行输入。操作历史查询,快捷键。使用量
预定义变量:
    
给定一个变量;
还可以使用echo ${a}:但两者有区别:
 
用a=$a123时他会认为将a123里内容给a,因为a123里没有内容,所以输出结果为空。用a=${a}123 输出结果为正确

删除一个变量:
      unset a
变量:set能查看所有变量
      本地变量
      环境变量:用在全部的工作环境中 env只能查看环境变量
系统通过预定义环境变量来定义shell

预定义变量:
         预先定义好的变量。
常用预定义变量:
            HOME:当前用户的主目录
            PATH:当前用户的可执行文件搜索路径
 
            LANG:程序应该使用的默认语言
 
列出所有支持的语言:locale -a
            PS1:行提示符
 
\d 代表星期
\H 代表完整主机名
\h 获取主机名第一个名字
\t 显示:时 分 秒 (24小时)
\T 显示时间(12小时)
\A 只能显示:时 分(24小时)
\u 当前用户账户名称
\v bash版本
\w 完整工作目录名称(root家目录)
\W basename列出当前工作目录的最后一个目录名
 
\# root用户
\$ 普通用户
更改:
   
export 变量名 将自定变量转换为环境变量

history
在bash中输入history指令可以查询用户的过往操作
内存中记录的过往指令数根据环境变量中HISTSIZE而定
history表中存储在内存中,用户logout时会记录入用户主目录下的.bash_history文件中,下次login时载入
.bash_history中的指令数根据环境变量中的HISTFILESIZE而定
 
 
强制执行将内存中指令存以.bash_history不用注销时才写入

调用过往指令
       使用!来调用过往指令:
  !!重复执行上一条指令
  !a:重复执行上一条指令
  !number:重复执行上一条在history表中记录号码为number的指令
  !-number:重复执行前第number条指令 
可以用ctrl+r来在history表中查询某条过往指令
 

alias
在shell下键入alias可以查询当前alias列表
用户可以alias来为一条命令取一个简单的别名
用户也可以用unalias来一条别名记录
alias记录在shell中总是先行
 
手工创建:
        
取消别名:unalias
 
 
命令行表达式:
       命令行输出---------“”
           将一串字符当成一个字符串来对待,如果字符串中包含特 殊含义的字符,则转义
 
$ \ ! `不以被双引号""禁掉其他都可以
 
 
       命令行输出---------‘’
           将一串字符当成一个字符串来对待,如果字符串中包含特殊含义的字符,不转义
 
禁止所有特殊符号。包括$ ` ! \

        执行引用符--------''
           引用命令执行的结果
 
首先执行pwd 然后将执行结果传给ls -al执行

命令行表达式二:
                数学运算-------------$[]
          在括号内的表达式会被数学计算
 
先将中括号数学运算得出结果赋于临时变量,然后再将临时变量显示
                逸脱符---------------\
          用于取消命令行中字符的特殊含义
 
加入逸脱符系统认为空格是普通符号
          用于表示一行未结束
 

命令行表达式三:
            命令行结束符----------;
       用于在一行内分隔两个独立命令,表示一行已结束,作用相当于回车键
pwd ; ls -l
 
            子shell激活-----------()
       在小括号内的命令行表示激活一个子shell后在子shell中运行
 HOME会激活一个子shell在子shell命令中运行,也不会传给另外一个shell
  
   逻辑运算符
  shell命令行支持在同一行的两条命令中插入&&(逻辑与)与||(逻辑或)
     &&:当前一条指令执行成功再执行后一条指令
 
     ||:当前一条指令执行失败时再执行后一条指令
 
 
 

登录shell
         默认情况下,在shell下改变变量,umask alias只在此次登录中有效,一旦logout后再login则设定恢复初始值
         一个通过登录而得到的shell,一般是用户的初始shell
         在登录shell下激活的shell采用登录shell的环境设定
         登录shell从配置文件中读取其环境设定

定制登录shell
        bash 在用户登录时从四个文件中读取环境设定:
     全局设置文件:设定系统环境变量(也可以设定自定义变量)
                  /etc/profile     针对系统所有用户
                  /etc/bashrc      可自定变量或全名,路径
     用户设置文件:
                ~/.bashrc          功能与/etc/bashrc一样    区别:只针对特定用户
               ~/.bash_profile     功能与/etc/profile一样   区别:只针对特定用户
其 他shell设定文件
     ~/.bash_logout:用户logout的时候自动执行
     ~/.bash_history:用户在login时自动读取其内容并加载到内存history记录中,logout时将内存history记录写入
    ./etc/profile.d/*.sh:在/etc/profile中被执行,其中的环境设定,也会被全局引用
登录shell
启动读取文件顺序:
1. /etc/profile
2. /etc/profile.d/*.sh
3. ~/.bash-profile
4. ~/.bashrc
5. /etc/bashrc

su 开启一个非登录shell    su - 开启一个新的shell

非登录shell过程:
 ~/.bashrc
/etc/bashrc
/etc/profile.d/*.sh

常用快捷键:
    Ctrl+d输入已结束。相当于shell下一个exit
    Ctrl+c:键盘中断请求
    Ctrl+s &ctrl +q :暂停/恢复屏幕输出
    ctrl+l:清屏相当于clear
   Tab:自动补完命令行与文件名
       tab键双击可以列出所有可能匹配的选择

 

你可能感兴趣的:(linux,职场,休闲)