linux学习第二十四篇:管道符和作业控制,shell变量,环境变量配置文件

  • vmstat 1 自动显示系统的状态
  • sleep 100 可以使系统沉睡100秒

管道符和作业控制

管道符的作用:把管道符前面执行的结果输出内容交给管道符后面的命令。

  1. 查看1.txt的内容并输出给wc -l命令统计行数: cat 1.txt |wc -l
  2. 查看1.txt的内容并输出给grep命令查询关键词’aaa’: cat 1.txt |grep ‘aaa’
  3. 暂停一个任务,比如用vim正在编辑一个文件,可以暂停到命令界面做别的事情,vim编辑的文件则暂停在后台里: ctrl z
  4. 把任务调到前台,例如vim编辑的文件暂停在后台,可以用fg调到前台继续编辑: fg [id]
  5. 查看后台的任务: jobs
  6. 把任务调到后台: bg [id]
  7. 命令后面加 & 直接丢到后台

shell变量

环境变量PATH,这个环境变量就是shell预设的一个变量,通常shell预设的变量都是大写的。变量,说简单点就是使用一个较简单的字符串来替代某些具有特殊意义的设定以及数据。就拿PATH来讲,这个PATH就代替了所有常用命令的绝对路径的设定。因为有了PATH这个变量,所以我们运行某个命令时不再去输入全局路径,直接敲命令名即可。

  1. 系统变量(可使用echo查看,如echo $PATH): PATH,HOME,PWD,LOGNAME
  2. 获取系统常用的变量的命令: env
  3. set命令多了很多变量,不仅查看系统内置的环境变量,并且包括用户自定义的变量 set
  4. 用户自定义变量a=1
  5. 变量名规则:字母、数字下划线,首位不能为数字。变量值有特殊符号时需要用单引号括起来(双引号遇到特殊符号不会转义)
  6. 全局变量,在所有子shell里都有这个自定义的变量: export b=2
  1. 取消变量: unset+变量名

环境变量配置文件

  1. 系统层次:用户环境变量,交互,登录才执行: /etc/profile
  2. 系统层次:用户不用登录,执行shell脚本或者打开一个bash就生效: /etc/bashrc
  3. 用户层次:用户环境变量,交互,登录才执行(要想马上生效可以执行:source .bash_profile = . .bash_profile): ~/.bash_profile
  4. 用户层次:用户不用登录,执行shell脚本或者打开一个bash就生效: ~/.bashrc
  5. 记录命令历史的文件: ~/.bash_history
  6. 用来定义用户退出的时候需要做的操作(比如说用户每次退出时要删除命令历史,那么可以把删除命令历史的命令放到这个配置文件中): ~/.bash_logout
  7. PS1是在/etc/bashrc中定义的,一般默认的PS1是[\u@\h \W]$ ,u是用户名,h是主机名,W是所在的目录,如果是w那么会显示绝对路径:

显示有颜色的:PS1=’[\033[01;32m]\u@\h[\033[00m]:[\033[01;36m]\w[\033[00m]$ ’

扩展 bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719 简易审计系统: http://www.68idc.cn/help/server/linux/2014042190951.html 关于PROMPT_COMMAND环境变量的含义 http://www.linuxnote.org/prompt_command-environment-variables.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏mwangblog

Linux文件操作

20540
来自专栏耕耘实录

which、type、whereis、locate几个命令的区别与联系

版权声明:本文为耕耘实录原创文章,各大自媒体平台同步更新。欢迎转载,转载请注明出处,谢谢。

10130
来自专栏JetpropelledSnake

Vue学习笔记之vue-cli脚手架安装和webpack-simple模板项目生成

vue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目。

9910
来自专栏智能合约

剖析Redis过期key的删除策略

23020
来自专栏林德熙的博客

解决 vs 出现Error MC3000 给定编码中的字符无效

在 xaml 写中文注释,发现编译失败 Error MC3000 给定编码中的字符无效

27020
来自专栏bboysoul

linux下重命名脚本推荐

11820
来自专栏流柯技术学院

HTTP 方法:GET 对比 POST

举例:客户端(浏览器)向服务器提交 HTTP 请求;服务器向客户端返回响应。响应包含关于请求的状态信息以及可能被请求的内容。

13920
来自专栏企鹅号快讯

使用Symfony的Console组件构建命令行程序

我们新开设一门视频课程《构建命令行程序》。主要讲解如何使用symfony的console组件,构建命令行应用。在我们的印象中,php程序大部分是通过浏览器执行(...

27080
来自专栏用户2442861的专栏

命令ln的使用 以及 查看软件是否安装

这是linux中一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件或目录在另外一个位置建立一个同步的链接,类似Windows下的超级链接。 这个命...

32210
来自专栏编程直播室

LInux上清空或删除文件的5中方法1. 清空文件通过重定向到Null2. 清空文件使用“true”命名重定向3. Empty File Using cat/cp/dd utilities with

64850

扫码关注云+社区

领取腾讯云代金券