一、环境变量:
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. adaboost 参数选择

    先看下ababoost和决策树效果对比 import numpy as np import matplotlib.pyplot as plt from sklearn.model_selection ...

  2. Oracle常用sql命令

    1.查看数据库归档是开启还是关闭SQL> archive log list 更改数据库归档模式: SQL> shutdown immediateSQL> startup mountS ...

  3. 策略模式(Strategy Model)

    定义:一个类的行为或算法能在运行时被改变,将一组算法封装成一系列对象,通过这些对象灵活改变系统功能: 实现方式: 首先定义个strategy接口,然后创建一系列对象(strategy objects) ...

  4. python常见的数据转化函数

    python常用类型转换函数 函数格式 使用示例 描述 int(x [,base]) int("8")   可以转换的包括String类型和其他数字类型,但是会丢失精度       ...

  5. [转载] java多线程总结(三)

    转载自: http://www.cnblogs.com/lwbqqyumidi/p/3821389.html 作者:Windstep 本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题 ...

  6. 第一条python语句!

  7. Mysql 大量Sleep 解决

    排查 SHOW GLOBAL VARIABLES LIKE 'wait_timeout'; SHOW GLOBAL VARIABLES LIKE 'interactive_timeout'; 在线更新 ...

  8. Qt坑点汇总

    1.场景:假如我们想在layout中的qlabel中设置一个图片 1.1 如果简单地使用border-image,我们可以做到,并且拖动界面时,label可以随布局正常变化,这里需要注意的是,修改ui ...

  9. ASP.NET项目答辩系统课件使用中的问题记录

    使用软件:VS2008 模块一:登录模块 1-08 问题:显示属性“background”不是元素"td"的有效属性 解决:style="background-image ...

  10. UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 199: illegal multibyte sequence

    =================================版权声明================================= 版权声明:原创文章 谢绝转载  请通过右侧公告中的“联系邮 ...