管道符、shell变量、环境变量配置文件

管道符和做业控制

 

管道符“|”

管道符的做用在于将符号前面的结果丢给符号后面的命令。管道符后面并非全部的命令均可以,通常针对文档操做的命令比较经常使用,eg:cat、less、head、tail、grep、cut、sort、wc、uniq、tee、tr、split、sed、awk等等。shell

做业控制

 

  1.       Ctrl+z 暂停一个正在执行的任务,可使用fg命令恢复它,利用bg命令使他到后台运行,也可使它终止(按Ctrl+c)。
  2.         jobs 查看在后台运行的任务
  3.          bg[id] =background把任务调到后台运行
  4.         fg[id] =foreground把任务调到前台运行
  5.         “&” 命令后面加&至关于直接把任务调到后台运行,它会显示pid信息,若是忘记这个pid,咱们还可使用 ps aux 命令找到那个进程。想结束掉该进程,须要使用 kill[pid] 命令

 

shell变量

变量,说简单点就是使用一个较简单的字符串来替代某些具备特殊意义的设定以及数据。就拿PATH来说,这个PATH就代替了全部经常使用命令的绝对路径的设定。由于有了PATH这个变量,因此咱们运行某个命令时再也不去输入全局路径,直接敲命令名便可。您可使用echo命令显示变量的值。缓存

env命令:查看系统内置环境变量

还可使用set命令查看shell变量,该命令不只能够显示系统内置环境变量,还能够显示用户自定义的环境变量。bash

自定义变量

变量名规则: 字母、数字下划线,首位不能为数字;变量值有特殊符号时须要用单引号括起来(单引号有脱意功能)。less

变量累加

注: 多个变量进行叠加时须要对目标变量(等号右边)加上双引号,而且当在对新的变量附加新的值的时候写法: c="$a$b"789。spa

全局变量

export

当在一个父shell下设定一个变量后,进入子shell该变量并不生效,若是想让该变量在子shell下生效须要使用export声明一下才能够(跨终端不生效)。 进程

语法: export [变量名]
当export不指定变量时,它会声明系统全部变量。文档

说明: 当在子shell设定变量后即使声明后也不能在父shell生效。字符串

当打开多个终端的时候,使用以下命令查看本身当前所在终端:

bash命令&pstree命令

在当前shell中国运行bash命令会进入一个新的shell,这个shell是原来shell的子shell,可使用pstree命令把系统中全部进程以树状图结构打印出来,pstree所在行显示的即为当前所在shell(exit能够退出子shell)。it

 

删除变量 unset

语法: unset [变量名]awk

环境变量配置文件

 

环境变量配置文件可划分为两个维度:系统环境变量配置文件和用户环境变量配置文件。

系统配置文件

  • etc/profile 用户环境变量,交互,登陆才执行(这个文件预设了几个重要的变量,例如PATH, USER, LOGNAME, MAIL, INPUTRC, HOSTNAME, HISTSIZE, umask等等。)
  • /etc/bashrc 用户不用登陆,执行shell就生效(这个文件主要预设umask以及PS1。)

\u 就是用户, \h 主机名, \W 则是当前目录,\$ 就是那个 `#' 了,若是是普通用户则显示为 `$'.

用户配置文件(每一个用户的主目录下还有几个这样的隐藏文件)

  • ~/.bashrc: 该文件包含专用于shell的bash信息,当登陆时以及每次打开新的shell时,该文件被读取。例如能够将用户自定义的alias或者自定义变量写到这个文件中。
  • ~/.bash_profile: 定义了用户的我的化路径与环境变量的文件名称。每一个用户均可使用该文件输入专用于本身使用的shell信息,当用户登陆时,该文件仅仅执行一次。
  • ~/.bash_history: 记录命令历史用的。
  • ~/.bash_logout 在此能够设定退出登陆时系统执行的操做(如清除缓存、清除历史记录等等)
相关文章
相关标签/搜索