PJzhang:shell基础入门的2个疗程-two

猫宁!!!

第6节:重定向

标准输入,标准输出,错误输出

输入重定向符号‘<‘

输出重定向符号‘>‘(清空之后再输入),‘>>‘(当前内容不变,在最后一行追加),‘2>‘(如果执行错误,将错误内容打印进去),‘&>‘(无论输出正确错误,全部输出到指定的文件当中)

输入完123,456之后,Ctrl+D,显示2行

cat /etc/passwd

wc -l < /etc/passwd,可以显示文件内容的行数

先是写入并设置变量,然后在读取变量的内容

创建1.txt,内容是一行123,可以实现从文档中读取数据

将变量写入到2.txt文件中

追加字符

将错误信息输入到3.txt的文件中

&>可以将错误的和正确的全部追加到4.txt中,这里是追加,不是覆盖

创建一个文件3.sh,内容如下,生成一个a.sh的文件,内容是echo ‘hello bash‘

第7节:变量赋值

变量的规则:字母数字下划线,开头不能是数字,而且变量要有具体的含义,因为是给人看的

shell变量是弱类型变量

赋值的等号左右两侧不能出现空格

变量名等于变量值

let为变量赋值,不常用,了解即可

let a=10+20

命令赋予变量,不常用,意义不是很大

l=ls

命令结果赋予变量,用的很多,$()或者两个反引号,一次执行,结果多次利用

letc=$(ls -l /etc)

变量值有空格等特殊字符,可以使用双引号和单引号包括

实践环节

双引号,单引号的使用

第8节:变量引用及作用范围

${变量名}称作对变量的引用,有时大括号可以省略掉

如果在变量名之后添加其余字符,需要使用大括号,否则程序会产生误解

变量赋值,bash是进入子shell,exit是退出子进程,进入父进程

变量赋值,shell脚本读取变量

前两个不行,后面的两个可以实现读取

子进程获取父进程的变量赋值,export实现

unset可以取消变量的赋值

第9节:环境变量、预定义变量和位置变量

环境变量

打印出当前变量的内容,PATH是命令搜索路径

创建文件5.sh,打印hello bash,显示目录占用的磁盘空间

显而易见./表示在根目录之下寻找命令搜索路径,没有root目录

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

在root目录之下也可以执行shell脚本

当前定义的变量,只对当前的终端生效(任意文件夹位置),关闭终端或者打开新的终端是不生效的,

如果在一个目录对某个变量export处理,那么会一直生效

便捷化终端界面

set命令

$?表示判断上一条命令是不是执行成功,例如ifconfig,$$显示当前进程的pid,$0显示当前名称

创建文件6.sh

不同运行方式结果不一样

创建文件7.sh,可以让字符参数按照顺序显示

修改7.sh

处理单一字符参数

如果内容为空则是下划线

可自主判断是不是空的

第10节:环境变量配置文件

常见配置文件,/etc/的都是通用的,~全都在家目录

/etc/profile

/etc/profile.d/

~/.bash_profile

~/.bashrc

/etc/bashrc

系统启动或者终端启动的时候加载的环境变量,可以查看英文介绍的内容

vim /etc/profile,在第一行添加echo /etc/profile

vim /etc/bashrc,最上一行添加echo /etc/bashrc,一旦启动就可以显示

vim ~/.bashrc,最上一行添加echo ~/.bashrc

vim ~/.bash_profile,最上一行添加echo ~/.bash_profile

/etc/profile.d/目录,不同shell类型

切换为root用户,su - root,也可以看出它们执行的先后顺序,su root不能加载所有配置文件,每次增加新的路径变量,source可以及时更新状态

第二个疗程结束。

原文地址:https://www.cnblogs.com/landesk/p/11619996.html

时间: 2024-08-26 10:17:15

PJzhang:shell基础入门的2个疗程-two的相关文章

PJzhang:shell基础入门的2个疗程-one

猫宁!!! 在centos7上操作这一切 第1节:什么是shell centos7默认使用shell的bash cat /etc/shells 第2节:linux的启动过程 BIOS(主板,引导介质)---MBR(硬盘,主引导记录)---BootLoader(grub)(启动引导内核,确定内核版本)--kernel(启动内核)---systemd---系统初始化---shell 一般进入BIOS是键入F2 linux自带脚本 dd if=/dev/sda of=mbr.bin bs=446 co

PJzhang:python基础入门的7个疗程-two

猫宁!!! 参考链接:易灵微课-21天轻松掌握零基础python入门必修课-售价29元人民币 https://www.liaoxuefeng.com/wiki/1016959663602400 https://blog.csdn.net/SuperCreators/article/details/81393977 第四天:高级数据结构 文件的读写 fin=open("data.txt"),读取文件,如果在同一个文件,直接写文件名就好,如果不是,需要写文件的路径. fout=open(&

Shell基础入门

目录 Shell基础入门 1.什么是Shell? 2.Shell脚本的结构 3.Shell的变量 3.1.自定义环境变量 3.2.普通变量 3.3.位置参数变量 3.4.状态变量 4.条件测试和比较 4.1.条件测试常用的语法形式: 4.2.文件测试表达式的用法: 4.3.字符串测试表达式 4.4.整数二元比较操作符 4.5.逻辑操作符 5.If条件语句 6.case语句 7.for循环语句 8.while循环语句 9.函数 9.1.shell函数的常见语法 9.2.shell函数的执行 10.

PJzhang:python基础进阶的10个疗程-one

猫宁!!! 课程导学 北京理工大学 国家精品在线开放课程 零基础.大学水平 100行左右的python可以做很多事情 编程是基本技能,体会思维 时间成本和收益的关系 每周5个小时 https://python123.io,实践项目 在线课程.在线实践.离线资料 完整的python基础语法体系 16个优秀实践案例 考核不是目的,但是可以检测学习的效果 每周练习题,阶段性测验 零碎时间+完整时间 跟进度,不断实践 毛主席-实践论 编程能力傍身 感性认识,理性学习 各种小说中人物 的频次以及出场顺序

PJzhang:python基础进阶的10个疗程-two

猫宁!!! 第2节:python基本图形绘制 保留字是python基础语法的支撑 默写python代码是件挺恐怖的事情!!! 2008年android操作系统诞生 计算时代 编程语言也是一个江湖 C语言希望编程者理解计算机系统结构 java语言解决了跨平台问题,面向对象,理解主体与客体的关系 VB语言适合桌面应用开发,理解交互逻辑 python语言理解问题求解 不同语言有不同的设计初心,有不同的时代背景 python语法简洁 第三方库,开放共享,生态高产 工具决定思维,工具变革 机器语言是二进制

【原创 Hadoop&amp;Spark 动手实践 5】Spark 基础入门,集群搭建以及Spark Shell

Spark 基础入门,集群搭建以及Spark Shell 主要借助Spark基础的PPT,再加上实际的动手操作来加强概念的理解和实践. Spark 安装部署 理论已经了解的差不多了,接下来是实际动手实验: 练习1 利用Spark Shell(本机模式) 完成WordCount spark-shell 进行Spark-shell本机模式 第一步:通过文件方式导入数据 scala> val rdd1 = sc.textFile("file:///tmp/wordcount.txt")

Linux下的shell编程入门

通常情况下,我们从命令行输入命令每输入一次就能够得到系统的一次响应.一旦需要我们一个接着一个的输入命令而最后才得到结果的时候,这样的做法显然就没有效率.要达到这样的目的,通常我们利用shell程序或者shell脚本来实现. 一.简介 Shell编程有很多类似C语言和其他程序语言的特征,但是又没有编程语言那样复杂.Shell程序就是放在一个文件中的一系列Linux命令和实用程序,在执行的时候,通过Linux一个接着一个地解释和执行每个命令. 下面我们来看一个简单的shell程序: 1.首先建立一个

Android基础入门教程——4.1.2 Activity初窥门径

Android基础入门教程--4.1.2 Activity初窥门径 标签(空格分隔): Android基础入门教程 本节引言: 上一节中我们对Activity一些基本的概念进行了了解,什么是Activity,Activity的生命周期,如何去启动一个Activity等,本节我们继续来学习Activity,前面也讲了一个App一般都是又多个Activity构成的,这就涉及到了多个Activity间数据传递的问题了,那么本节继续学习Activity的使用!另外关于传递集合,对象,数组,Bitmap的

Linux及Arm-Linux程序开发笔记(零基础入门篇)

Linux及Arm-Linux程序开发笔记(零基础入门篇)  作者:一点一滴的Beer http://beer.cnblogs.com/ 本文地址:http://www.cnblogs.com/beer/archive/2011/05/05/2037449.html 目录 一.Arm-Linux程序开发平台简要介绍... 3 1.1程序开发所需系统及开发语言... 3 1.2系统平台搭建方式... 4 二.Linux开发平台搭建... 5 2.1安装虚拟工作站... 5 2.2安装Linux虚拟