首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux - 数据流重定向、管道符、环境变量配置文件的加载

Linux - 数据流重定向、管道符、环境变量配置文件的加载

原创
作者头像
stark张宇
发布于 2024-01-27 08:06:12
发布于 2024-01-27 08:06:12
2861
举报
文章被收录于专栏:stark张宇stark张宇

概述

想了解Linux编程,shell脚本是绕不开的关键知识点,原计划写一个整篇来分享shell的来龙去脉,但知识点过于繁杂,先分享一下学习shell的准备工作,数据流重定向、管道符、环境变量配置文件的加载,有助于知识更好的理解、再实际生产中的运用。

shell

shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。

bash脚本执行方式

1、赋予执行权限,直接运行

代码语言:bash
AI代码解释
复制
chmod 755 stark.sh
./stark.sh

2、通过Bash调用执行脚本

代码语言:bash
AI代码解释
复制
bash stark.sh

Bash的基本功能

命令别名与快捷键

1、查看别名alias

2、设置别名 alias ls='ls -l'

3、删除别名 unalias 别名

但是需要注意的是,alias设置在重启系统后会失效,想永久生效写入在配置文件中。

代码语言:bash
AI代码解释
复制
vim .bashrc
alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

Bash命令生效顺序:

  • 第一顺位执行用绝对路径或相对路径执行的命令。
  • 第二顺位执行别名。
  • 第三顺位执行Bash的内部命令。
  • 第四顺位执行按照$PATH环境变量定义的目录查找顺序找到的第一个命令。

常用快捷键

Ctrl + c:强制终止当前命令

Ctrl + l:清屏

Ctrl + a:光标移动到命令行首

Ctrl + e:光标移动到命令行尾

Ctrl + u:从光标位置删除到行首

Ctrl + z:把命名放入后台

Ctrl + r:在历史命令中搜索

数据流重定向

输出的信息不在输出在显示器上,把正确/错误的信息输出在文件中,本来输出到显示器的内容输出在指定的文件中,所以叫做 数据量重定向。

  • 1> 以覆盖的方法将【正确的数据】输出到指定的文件或者设备上
  • 1>> 以追加的方法将【正确的数据】输出到指定的文件或者设备上
  • 2> 以覆盖的方法将【错误的数据】输出到指定的文件或者设备上
  • 2>> 以追加的方法将【错误的数据】输出到指定的文件或者设备上

/dev/null垃圾桶黑洞设备与特殊写法

管道符
  • ; 分号代表多个命令连接,前后命令没有关系,只是单纯的连接
  • && 用地址符连接,前后都成功才会成功。
  • || 命令1不正确执行,才会执行命令2,反之也一样
  • | 管道符的作用是把命令1的数据结果,做进行进一步的筛选

环境变量配置文件简介

shell变量类型:

  • 用户自定义变量(本地变量)
  • 环境变量:定义每个用户的操作环境,环境变量配置文件中主要是定义对系统操作环境生效的系统默认环境变量。如PATH等。
  • 预定义环境

1、用户登录时加载的配置文件

代码语言:bash
AI代码解释
复制
/etc/profile
/etc/profile.d/
~/.bash_profile
~/.bashrc
/etc/bashrc

2、用户注销时加载的配置文件

代码语言:bash
AI代码解释
复制
~/.bash_logout

3.本地终端欢迎信息

代码语言:bash
AI代码解释
复制
/etc/issue
/etc/motd #登录后的欢迎信息

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
1 条评论
热度
最新
博主深入浅出,写的真好
博主深入浅出,写的真好
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
linux学习第二十四篇:管道符和作业控制,shell变量,环境变量配置文件
vmstat 1 自动显示系统的状态 sleep 100 可以使系统沉睡100秒 管道符和作业控制 管道符的作用:把管道符前面执行的结果输出内容交给管道符后面的命令。 查看1.txt的内容并输出给wc -l命令统计行数: cat 1.txt |wc -l 查看1.txt的内容并输出给grep命令查询关键词’aaa’: cat 1.txt |grep ‘aaa’ 暂停一个任务,比如用vim正在编辑一个文件,可以暂停到命令界面做别的事情,vim编辑的文件则暂停在后台里: ctrl z 把任务调
用户1215343
2018/02/05
8880
linux学习第二十四篇:管道符和作业控制,shell变量,环境变量配置文件
管道符、shell变量、环境变量配置文件 原
还可以使用set命令查看shell变量,该命令不仅可以显示系统内置环境变量,还可以显示用户自定义的环境变量。
阿dai学长
2019/04/03
8670
管道符和作业控制,shell变量,环境变量配置
  我们知道PATH是系统内置变量,还有HOME、PWD、LOGNAME等变量,这些变量是在系统里的配置文件规定的,env命令可以获取到系统变量,系统的变量一般都是大写的,变量的值则可以是字符串或数字:
端碗吹水
2020/09/23
1.3K0
管道符和作业控制,shell变量,环境变量配置
linux学习第二十三篇:shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向
shell介绍 什么是shell, shell是一个命令解释器,提供用户和机器之间的交互。支持特定语法,比如逻辑判断、循环。每个用户都可以有自己特定的shell。CentOS7默认shell为bash(Bourne Agin Shell)。还有zsh、ksh等。实际上,在shell和计算机硬件之间还有一层东西那就是系统内核了。打个比方,如果把计算机硬件比作一个人的躯体,而系统内核则是人的大脑,至于shell,把它比作人的五官似乎更加贴切些。回到计算机上来,用户直接面对的不是计算机硬件而是shell,用户把
用户1215343
2018/02/05
1.2K0
linux学习第二十三篇:shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向
8.9 环境变量配置文件
环境变量配置文件目录概要 /etc/profile 用户环境变量,交互,登录才执行 /etc/bashrc 用户不能登录,执行shell就生效 ~/.bashrc ~/.bash_history ~/.bash_logout PS1='[\033[01;32m]\u@\h[\033[00m]:[\033[01;36m]\w[\033[00m]$ ' //带颜色显示命令行左边 系统的环境变量配置文件 两个纬度,一个是系统层次,一个是用户层次 系统层次,就是/etc 下的文件 用户层次,就是用户家目录下的
运维小白
2022/01/06
5040
第四章 shell和环境变量
一台计算机从基本架构上讲,由最基本的硬件组成硬件结构(如:cpu、内存、主板、声卡、显卡等),我们知道,硬件组成完备,但未安装操作系统的计算机被称为“裸机”。我们必须给“裸机”安装操作系统后,才可以正常使用。windows、Linux都属于操作系统范畴。
晓天
2019/07/04
1K0
第四章 shell和环境变量
管道符和作业控制,shell变量和环境变量配置文件
管道符和作业控制: |  管道符就是把前面命令输出的结果交给后面的命令执行。 ctrl +z 暂停一个任务   fg 回到刚刚暂停的任务 sellp  可以暂停当前时间 sellp 100 &  可以
叶瑾
2018/06/14
9190
Linux大人养成计划1---基础命令总结
刷了一波视频,现在把Linux的一些常用基本命令总结了下。学会这些,Linux的基本操作就会了。
帅地
2018/08/30
6650
Linux大人养成计划1---基础命令总结
history、重定向、alias 原
语法: history [-c] -c:=clear 清除内存中的命令,不能删除配置文件中的历史命令
阿dai学长
2019/04/03
7450
Linux的环境变量配置详解
在平时使用Linux的时候,经常需要配置一些环境变量,这时候一般都是网上随便搜搜就有人介绍经验的。不过问题在于他们的方法各不相同,有人说配置在/etc/profile里,有人说配置在/etc/environment,有人说配置在~/.bash_profile里,有人说配置在~/.bashrc里,有人说配置在~/.bash_login里,还有人说配置在~/.profile里。。。这真是公说公有理。。。那么问题来了,Linux到底是怎么读取配置文件的呢,依据又是什么呢?
mythsman
2022/11/14
2.7K0
Linux的环境变量配置详解
Linux管道符、重定向与环境变量
把多个 Linux 命令适当地组合到一起,使其协同工作,以便更加高效地处理数据。要做到这一点,就必须搞明白命令的输入重定向和输出重定向的原理。
张旭博客
2022/12/27
2.6K0
Linux管道符、重定向与环境变量
学习笔记0402----shell基础知识
字符范围: 指定字符串1或字符串2的内容时,只能使用单字符或字符串范围或列表。 [a-z] a-z内的字符组成的字符串。 [A-Z] A-Z内的字符组成的字符串。 [0-9] 数字串。 \octal 一个三位的八进制数,对应有效的ASCII字符。 [On] 表示字符O重复出现指定次数n。因此[O2]匹配OO的字符串。
嘻哈记
2022/01/11
8460
学习笔记0402----shell基础知识
shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向
Shell俗称壳(用来区别于核),是指“提供使用者使用界面”的软件(命令解析器)。shell类似于DOS下的command和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。Linux下的shell有很多种,CentOS7默认shell为bash。
端碗吹水
2020/09/23
9000
shell介绍,命令历史,命令补全和别名,通配符,输入输出重定向
Linux环境变量说明与配置
  /etc/profile     范围:对所有用户生效     作用:       a.定义USER变量       b.定义LOGNAME变量       c.定义MAIL变量       d.定义PATH变量       e.定义HOSTNAME变量       f.定义HISTSIZE变量       g.定义umask值       i.调用/etc/profile.d/*.sh文件   /etc/profile.d/*.sh     范围:对所有用户生效     说明:这是一族sh文件,没个都会被调用     例如:       /etc/profile.d/lang.sh       作用:调用/etc/sysconfg/i18n设置语言环境   ~/.bash_profile     范围:用户自己的家目录,对自己生效     作用:       a.调用 ~/.bashrc文件       b.在PATH变量后加入了":$HOME/bin"这个目录   ~/.bashrc     范围:用户自己的家目录,对自己生效     作用:       a.定义alias别名       b.调用/etc/bashrc   /etc/bashrc     范围:对所有用户生效     作用:       a.定义PS1变量(登录以后的提示符样式)       b.如果是无密码登录,则         定义umask值         定义PATH变量         调用/etc/profile.d/*.sh文件
Lansonli
2021/10/09
1.2K0
前端运维之Shell基础
shell基础 shell是一个命令行解释器,它为用户提供了一个向linux内核发送请求以便运行程序的界面系统级程序 用户可以用shell来启动、挂起、停止或者编写一些程序 Shell还是一个功能强大的变成语言 Shell是解释执行的脚本语言,在Shell中可以直接调用Linux命令 echo 输出命令 -e:表示激活转义字符 echo hello echo -e "a\tb" 复制代码 编写执行shell hello.sh 所有shell文件开头都需要#! /bin/
19组清风
2021/11/15
7830
Linux学习笔记(Ubuntu操作系统)之hadoop学习之路
1:检查虚拟机的ip命令:ifconfig 2:普通用户切换root用户命令:su 3:root用户切换普通用户命令:su 用户名 4:普通用户执行系统执行前面加命令:sudo 5:查询主机名命令:h
别先生
2018/01/02
1.5K0
linux 管道符重定向
表3-1                                         输入重定向中用到的符号及其作用
用户8006012
2022/10/23
3.5K0
《前端运维》一、Linux基础--03Shell基础及补充
诶诶欸?不是学Linux么?怎么要讲shell了?shell是啥?啥是shell?
zaking
2021/05/27
7460
Linux 环境变量配置全攻略
在自定义安装软件的时候,经常需要配置环境变量,下面列举出各种对环境变量的配置方法。
程序员白楠楠
2020/11/22
1.4K0
linux bash环境变量简单总结
一.环境变量简介 Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都 是相同的,这个默认环境实际上就是一组环境变量的定义。 环境变量是全局的,设置好的环境变量可以被所有当前用户所运行的程序所使用。 用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。 常见的环境变量: PATH: 决定了shell将到哪些目录中寻找命令或程序 ROOTPATH: 这个变量的功能和PATH相同,但
小小科
2018/05/03
2.1K0
推荐阅读
相关推荐
linux学习第二十四篇:管道符和作业控制,shell变量,环境变量配置文件
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档