一、环境变量:
Shell中的变量也有不同的数据类型,不用专门指定类型名,可以参与运算,有作用域限制。
declare tmp 创建一个变量
可以不用专门声明,可以即用即创建
tmp=shiyanlou 变量赋值
echo $tmp 读取变量的值
Notes: 变量名不能用数字开头,且只能是英文字母,数字,下划线
Shell的环境变量作用于自身及它的子进程,环境变量可以继承。

通常有以下三种环境变量:

  1. 当前Shell进程私有用户自定义变量,如tmp
  2. Shell本身内建的变量
  3. 从自定义变量导出的环境变量

与环境变量相关的命令:

set 显示当前Shell所有环境变量,包括内建环境变量,用户自定义变量和导出的环境变量
env 显示与当前用户相关的环境变量,还可以让命令在指定环境中运行
export 显示从Shell中导出的环境变量,也能通过它将自定义变量导出为环境变量


用vimdiff可以比较这几个命令输出文件的不同,如截图所示
zsh创建子Shell, 实验楼用的是zsh,Ubuntu用的是Bash
然后输入值为空,表示变量无效
export导出temp为环境变量,然后创建子进程,有效
添加环境变量示例:
PATH = $PATH:/home/shiyanlou/mybin
这里一定要使用绝对路径
为了让该环境变量每次启动Shell时自动执行添加路径到PATH,需要把它写入到配置文件中,zsh的配置文件为.zshrc,Bash的配置文件为.bashrc,在etc下还都有一个或多个全局的配置文件,不过我们一般只修改用户目录下的。
echo "PATH=$PATH:/home/shiyanlou/mybin" >> .zshrc
>是以覆盖的方式重定向到一个文件中,>>是追加标准输出到文件中。
变量修改的方式:
${变量名#匹配字符串} 从前向后匹配,删除符合的最短数据
${变量名##匹配字符串} 从前向后匹配,删除符合的最长数据
${变量名%匹配字符串} 从后向前匹配,删除符合的最短数据
${变量名%%匹配字符串} 从后向前匹配,删除符合的最长数据
${变量名/旧的字串/新的字串} 将符合旧字串的第一个字串替换为新的字串
${变量名//旧的字串/新的字串} 将符合旧字串的全部字串替换为新的字串
用unset删除变量
让环境变量立即生效,可以用source命令,
source .zshrc
也可以用它的别名.,需要指定完整的绝对或者相对路径名
. ./.zshrc
二、搜索文件:
whereis直接从数据库中查找,快速,搜索-b, -m, -s文件
locate通过/var/lib/mlocate/mlocate.db数据库查询,这个数据库每天自动update一次,快而全
$ locate /usr/share/*.jpg
\转义,只统计数目可以加上-c参数,-i可以忽略大小写查找
which是Shell内建的命令,常用于确定是否安装了某个指定的软件,因为它只从PATH环境变量指定的路径去搜寻
find最为强大,不仅可以通过文件类型,文件名查找,而且可以根据文件的属性(如时间戳,文件权限等)查找。基本格式如下:
find [path] [option] [action]
与时间有关的参数:
-atime 最后访问的时间
-ctime 创建时间
-mtime 最后修改时间
作业提要:
用cmatrix实现《黑客帝国》中的代码数字雨
F11全屏显示




本文原载于实验楼

Linux基础入门-环境变量与文件查找的更多相关文章

  1. (大数据工程师学习路径)第一步 Linux 基础入门----环境变量与文件查找

    环境变量与文件查找 本节介绍环境变量的作用与用法,及几种搜索文件的方法.学会这些技巧高效地使用 Linux. 一.环境变量 1.变量 要解释环境变量,得先明白变量是什么,准确的说应该是 Shell 变 ...

  2. 环境变量和文件查找&文件打包与解压缩

    环境变量和文件查找 介绍环境变量的作用与用法 及几种搜索文件的方法 学会这些技巧可以高效地使用 Linux 知识点:环境变量的设置 环境变量的修改 环境变量 要解释环境变量,得先明白变量是什么,准确的 ...

  3. linux的环境变量与文件查找

    1. 环境变量 1.1 变量 shell 中的变量有不同类型,可参与运算,有作用域限定 变量的作用域即变量的有效范围(比如一个函数中.一个源文件中或者全局范围),在该范围内只能有一个同名变量.一旦离开 ...

  4. Linux 基础教程 25-命令和文件查找

    which     不管是在Windows还是Linux系统中,我们都会偶尔执行一些系统命令,比如Windows常见的cmd.ping.ipconfig等,它们的位置都在%systemdrive%中. ...

  5. Linux环境变量与文件查找

    作业: 找出/etc目录下所有以.list结尾的文件 代码:locate /etc/\*.list sudo find /etc/ -name \*.list

  6. linux学习-环境变量与文件查找

  7. (大数据工程师学习路径)第一步 Linux 基础入门----目录结构及文件基本操作

    Linux 目录结构及文件基本操作 介绍 1.Linux 的文件组织目录结构. 2.相对路径和绝对路径. 3.对文件的移动.复制.重命名.编辑等操作. 一.Linux 目录结构 在讲 Linux 目录 ...

  8. Linux基础入门-目录结构及文件基本操作

    一.Linux的目录结构: Windows是以存储介质为主的,主要以盘符及分区来实现文件的管理,然后之下才是目录.但Linux的磁盘从逻辑上来说是挂载在目录上的,每个目录不仅能使用本地磁盘分区的文件系 ...

  9. Linux基础入门

    第一节,linux系统简介 一.实验内容 了解 Linux 的历史,Linux 与 Windows 的区别等入门知识. 二.实验要求 阅读linux简介与历史 三.实验步骤 (一).Linux 为何物 ...

随机推荐

  1. c++错误

    run-time check failure #2-stack around the variable 'c' was corrupted错误产生的原因大多是因为程序定义了数组,存在数组越界.解决办法 ...

  2. linux安装openssl

    1.简介 给网站配置http2发现openssl版本不够,只能靠升级openssl了,shell让安装不再麻烦. 系统环境 centos 7.4 64位 安装 openssl1.1.1a版本 2.查看 ...

  3. python初学代码留个纪念

    最简单的代码  if   else if  else 1.python中else if   用  elif表示 2.注释: 单行注释:##### 多行注释:''' ------''',"&q ...

  4. python模块之time_random

    把老师的资料放在最上面: 参考: http://www.cnblogs.com/yuanchenqi/articles/5732581.html 导入模块的方法: #!/usr/bin/env pyt ...

  5. better-scroll无法滚动的问题。

    better-scroll无法滚动的问题.1遇见better-scroll(以下简称:BS)无法滚动,可从两方面去考虑.一是层级关系出错,二是计算高度出错.###1,层级关系BS的基本结构是:一个wr ...

  6. java 第三周作业

    1.P132分析: long before = System.currentTimeMillis(); //返回当前的计算机时间,时间的表达格式为当前计算机时间和GMT时间(格林威治时间)1970年1 ...

  7. 2019-04-18-day035-守护线程与池

    内容回顾 互斥锁 在同一个进程中连续锁两次以上会死锁 进程的数据共享 进程之间可以共享数据 提供共享数据的类是Manager 但是他提供的list\dict这些数据类型是数据不安全的 针对 += -= ...

  8. 3D数学基础(二)向量

    向量的基本运算包括加法.减法.点乘.叉乘.单位化运算等,而在游戏开发中使用最为广泛的是减法.点乘.叉乘.单位化运算.向量是具有方向和长度的矢量,有2D.3D.4D等的.在游戏开发里面一般使用的是2D和 ...

  9. C语言的AT指令

    今天跟人聊嵌入式,对面是某国际硬盘生产商的嵌入式软件工程师,问了我很简单的问题,如何快速将一个变量赋给某个特定的地址. 按我们思路就是unsigned *a = address1:  *a = add ...

  10. java.lang.NullPointerException错误的解决方案

    java.lang.NullPointerException空指针异常是像我一样新手很容易出现的问题,这个问题一般情况都是不细心的时候出现的,开始正文如下: 1.业务层面的错误: a.没有写非空验证: ...