管道符和作业控制、shell变量、环境变量配置文件

管道符和作业控制

;表示前一个命令执行完后顺序执行下一个命令

[[email protected] ~]# cat 1.txt |wc -l ; cat 1.txt |grep ‘aaa‘

2

aaaaa aaaaa

aaqweaaaaaaaaa

&&:前一个命令是正确的才执行后面一个命令;若是前一个命令不对,就不执行了

|| :当前一个命令执行成功,后面则不执行;相反的如果前一个命令不成功,则执行后面的命令

ctrl z 暂停一个任务

jobs查看后台的任务

bg[id]把任务调到后台

fg[id]把任务调到前台

命令后面加&直接丢到后台;这个通常是执行一个脚本

shell变量

1、输出环境变量

[[email protected] ~]# echo "$PATH"

/usr/local/jdk1.8.0_11/bin:/usr/local/jdk1.8.0_11/jre/bin:/usr/local/svn//bin:/usr/local/apache-maven-3.5.0/bin:/usr/local/bin/composer:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

2、让环境变量临时生效

export PATH=$PATH:/opt/au1200_rm/build_tools/bin

3、永久生效则加入配置文件中

/etc/profile

env

也是查看环境变量,可以进行搜索

环境变量配置文件

/etc/profile 所有用户环境变量,交互,登录才执行

/etc/bashrc 所有用户不用登录,执行shell就生效

~/.bashrc  自己用户家目录的,当该用户登录时以及每次打开新的shell时,该文件被读取,包含别名

~/.bash_profile 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

~/.bash_history  记录着当前用户的历史记录

~/.bash_logout  退出登录时执行

1.login shell与non-login shell的概念

(1)login shell

取得shell(如bash)时需要完整的登录流程,就称为login shell。举例来说,有tty1-tty6登录,输入用户的账户和密码后,取得的shell就称为“login shell”

(2)non-login shell

取得shell不需要账户登录的流程。比如说,在X window(图形桌面)登录linux后,在桌面右击获取的命令行窗口,此时不需要用账户名和密码进行登录,那这个bash的环境就称为non-login shell。在比如,在bash中再次执行bash命令,获取到的子bash进程,也没有登录动作,这个子bash进程同样是non-login shell。

2.login shell和non-login shell的区别

login shell和non-login shell的核心区别就是在获取shell时,读取的配置文件不同。

(1)login shell读取的配置文件

/etc/profile     该文件来设置系统的整体环境,通常是一些环境变量的配置。

~/.bash_profile或~/.bash_login或~/.profile三者中的一个,该文件是用户个人设置

(2)non-login shell读取的配置文件

~/.bashrc

备注,通常我们新增环境变量是在/eth/profile或~/.bash_profile中修改即可。比如在PATH环境变量中新添加一个路径:

[plain] view plain copy

#将/home/local/tmux/bin加入到环境变量PATH中

export PATH=/home/local/tmux/bin:$PATH

PATH=/home/local/tmux/bin:$PATH

export PATH


时间: 2024-08-03 01:12:35

管道符和作业控制、shell变量、环境变量配置文件的相关文章

[Shell&Mac&Environment variables]自己常用的Mac(或者说Linux)Shell命令小结,含Mac使用zsh shell的环境变量的有关配置方法

今天在使用tomcat的配置的时候,我用的mac,要是用到一些命令去配置tomcat. 问题来了: 我每次要去启动tomcat服务特别麻烦,因为我要先进入tomcat所在的文件目录,或者不进入使用~/,但是因为我把tomcat放到了一个比较“深“的文件夹里,所以命令显得又丑又长. 问题解决方案: 1.使用环境变量(修改.bashrc的方法) a.先查看自己的Mac目前正在用的是什么shell echo $SHELL 返回结果类似如下图 这里我是zsh,,也许你是bash,不过没关系,配置环境变量

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数]

聊聊默认支持的各种配置源[内存变量,环境变量和命令行参数] 较之传统通过App.config和Web.config这两个XML文件承载的配置系统,.NET Core采用的这个全新的配置模型的最大一个优势就是针对多种不同配置源的支持.我们可以将内存变量.命令行参数.环境变量和物理文件作为原始配置数据的来源,如果采用物理文件作为配置源,我们可以选择不同的格式(比如XML.JSON和INI等) .如果这些默认支持的配置源形式还不能满足你的需求,我们还可以通过注册自定义ConfigurationSour

管道符和作业控制 shell变量 环境变量配置文件

8.6 管道符和作业控制 管道符的作用在于将符号前面的结果丢给符号后面的命令.管道符后面并不是所有的命令都可以,一般针对文档操作的命令比较常用,eg:cat.less.head.tail.grep.cut.sort.wc.uniq.tee.tr.split.sed.awk等等. cat 1.txt | wc -l ;cat 1.txt |grep 'aaa'ctrl z 暂停一个任务 //把暂停的任务调回来用fg//jobs查看后台的任务bg[id]把任务调到前台 //丢到后台并运行//命令后面

Shell基础-环境变量配置文件

source 配置文件 或者 . 配置文件: 把环境变量写入配置文件后,需要用户重新登陆才能生效,而是用source命令,则能直接生效 主要的配置文件: /etc/profile /etc/profile.d/*.sh ~/.bash_profile ~/.bashrc /etc/bashrc 其中/etc/profile /etc/profile.d/*.sh /etc/bashrc 对所有用户都生效 ~/.bash_profile  ~/.bashrc只对当前用户生效 环境变量配置文件调用顺

linux shell “永久环境变量”、“临时环境变量”和"普通变量"之完全解读

这个年代, 大家写点书, 也无非就是为了搞点钱, 基本都是罗列一些知识点, 基本都是写给已经会了的人看的. 真正用心写书的人, 不多. 如果真正用心写书, 且站在读者的角度去写, 那就少之又少了. 关于linux shell环境变量, 我看了四本linux相关书的介绍, 结果, 没有一本书的讲解让我完全满意, 总感觉没有说清楚.所以呢, 我打算自己来写一下,如有不当指出, 请大家指正. 一. 永久环境变量(实际上属于文件, 而不属于shell, 每打开一个shell, 都会加载/导入到shell

【Linux】Shell三类变量的作用域——linux shell “永久环境变量”、“临时环境变量”和"普通变量"之完全解读

2015-05-08 00:15 3896人阅读 评论(10) 收藏 举报 本文章已收录于: 分类: 软件开发进阶(419) 作者同类文章X Unix/Linux杂项(118) 作者同类文章X 版权声明:本文为博主原创文章,未经博主允许不得转载. 这个年代, 大家写点书, 也无非就是为了搞点钱, 基本都是罗列一些知识点, 基本都是写给已经会了的人看的. 真正用心写书的人, 不多. 如果真正用心写书, 且站在读者的角度去写, 那就少之又少了. 关于linux shell环境变量, 我看了四本lin

shell中环境变量

Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量. 所以管理环境变量的文件也分为系统级和用户级的,下面贴一个网上找到的讲的比较明白的文件介绍(略作修改)[1]: 系统级: /etc/profile:该文件是用户登录时,操作系统定制用户环境时使用的第一个文件,应用于登录到系统的每一个用户.该文件一般是调用/etc/bash.bashrc文件. /etc/bash.bashrc:系统级的bashrc

shell变量/环境变量和set/env/export用法_转

转自:shell环境变量以及set,env,export的区别 一.shell环境变量的分类以及set env export的区别: set:显示(设置)shell变量,包括的私有变量以及用户变量.不同类的shell有不同的私有变量 bash,ksh,csh每中shell私有变量都不一样. env:显示(设置)用户变量变量. export:显示(设置)当前导出成用户变量的shell变量. export 显示当前导出成用户变量的shell变量,并显示变量的属性(是否只读),按变量名称排序: dec

shell配置环境变量

我们在使用Xshell开发机时往往会遇到一些问题,比如使用某些命令他会报command not found,,出现这种情况的原因是我们必须要配置一下环境变量,这样就可以在任何path中访问了. 这就需要我们写一个shell脚本, #! bin/sh echo $PATH; echo 'add nodejs's bin'; export PATH = /search/xxxxx/node/bin:$PATH; echo $PATH; 第一句话的意思是此脚本通过bin/sh来解释执行,echo 为设

Linux编程 11(shell全局环境变量与局变环境变量)

一.概述 在linux中,很多程序和脚本都通过环境变量来获取系统信息,存储临时数据,配置信息.环境变量是指用来存储有关shell会话和工作环境信息,允许你在内存中存储数据,以便程序或shell中运行的脚本能够轻松访问到它们.也是存储持久数据的一种简便方法.在bash shell中,环境变量分为:全局和局部二类环境变量. 1.1全局环境变量 全局环境变量对于shell会话和所有生成的子shell都是可见的.局部变量则只是创建它们的shell可见.在linux系统中有系统环境变量,它们基本都是使用全