1.Shell:命令解释器

2.Linux技能树

3.X11:X窗口系统,其本身只是工具包及架构协议,Xorg是x架构规范的一个实现体,是实现了x协议规范的一个提供图形界面的服务器

4.终端本质上是对应着Linux上的/dev/tty设备,Linux的多用户登陆就是通过不同的/dec/tty设备完成的

5. 查看所属用户组: groups命令

实验4--Linux目录结构及文件基本操作

1.FHS标准:文件系统层次结构标准,它定义了系统中每个区域的用途,所需要的最小构成的文件和目录同事还给出了例外处理与矛盾处理。

2.进入当前登录用户的home路径

  cd ~

3.使用touch命令创建空白文件,其主要作用是来更改已有文件的时间戳的

4.标准输入输出:执行一个shell命令行时通常会自动打开三个标准文件,即标准输入文件(stdin),默认对应终端的键盘,标准输出文件(stdout)和标准错误输出文件(stderr),后面两个文件都对应被重定向到终端的屏幕,以便我们能直接看到输出内容。进程姜葱标准输入文件中得到输入数据,将正常输出数据输出到标准输出文件,而将错误信息送到标准错误文件中

实验5-环境变量与文件查找

1.创建:可以用declare创建,也可以使用时直接创建

输出:echo $tmp,变量名只能是英文字母,数字或者下划线,且不能以数字作为开头。

2.变量类型:1)当前shell进程中用户自定义变量,只在当前shell中有效

      2)Shell本身内建的变量

      3)从自定义变量导出的环境变量

3.相关命令:1)set:显示当前Shell所有变量,包括其内建环境变量,用户自定义变量及导出的环境变量

      2)env:显示与当前用户相关的环境变量,还可以让命令在制定环境中运行

      3)export:显示从shell中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量..将变量export为环境变量后,在子shell中也可以查看。习惯将环境变量名设为大写

4.按生存周期来换分,Linux变量可以分为两类:

      1)永久的:需要修改配置文件,变量永久生效

      2)临时的:使用export命令行声明即可,变量在关闭shell时失效

5.    1) /etc/bashrc 和/etc/profile分别存放的是shell变量和环境变量,

  2)每个用户目录下有一个.profile隐藏文件,该.profile文件只对当前用户永久生效,而卸载/etc/profile中是对所有用户永久生效,所以想要添加一个永久生效的环境变量,只需要打开/etc/profile,在最后加上你想添加的环境变量就好啦

6. 1)命令的查找路径与顺序:输入一个命令,shell是怎么去查找然后执行的呢?这是通过环境变量PATH来进行搜索的,它保存了shell中执行的命令的搜索路径

2)将自己创建的脚本文件或程序添加为系统命令:PATH=$PATH:/home/shiyanlou/mybin,其中mybin中存放着生成的可执行文件

3)每次启动shell时自动执行添加路径到PATH的命令:在每个用户的home目录中都有一个shell每次启动时会默认执行一个配置脚本,以初始化环境,包括添加一些用户自定义环境变量等。zsh的配置文件是.zshrc,相应Bash的配置文件是.bashrc,它们在etc下还都有一个或多个全局的配置文件,不过我们一般只修改用户目录下的配置文件。

  将命令直接添加到.zshrc中:echo "PATH=$PATH:/home/shiyanlou/mybin">>.zshrc,其中>>表示将标准输出以追加的方式重定向到一个文件中(而>是以覆盖的方式重定向到一个文件中)。

7.修改和删除已有变量

  1)修改

  2)删除:可以使用unset命令删除一个环境变量

  3)立刻生效:source命令。当我们在shell中修改了一个配置脚本文件之后,每次都要退出终端重新打开甚至重启主机之后才能生效,此时可以换用source命令来让其立即生效

8.搜索文件

  1)whereis 简单快速:这个搜索很快,因为它并没有从硬盘中依次查找,而是直接从数据库中查询,whereis只能搜索二进制文件(-b),man帮助文件(-m)和源代码文件(-s),如果想要获得更全面的搜索结果可以使用locate命令。

  2)locate快而全:通过 "/var/lib/mlocate/mlocate.db"数据库查找,不过这个数据库也不是实时更新的,系统会使用定时任务每天自动执行updatedb命令更新一次,所以有时候你刚添加的文件可能会找不到,需要手动执行一次updatedb命令。它可以用来查找指定目录下的不同文件类型,如查找/etc下所有以sh开头的文件。eg:locate /etc/sh.注意:它不只是在/etc目录下查找,还会自动递归子目录进行查找。

eg2:查找/usr/share/ 下所有jpg文件:locate /usr/share/\*.jpg。如果想只统计数目可以加上-c参数,-i参数可以忽略大小写进行查找,whereis的-b\-m\-s同样可以使用

  3)which小而精:which本身是shell内建的一个命令,我们通常使用which来确定是否安装了某个指定的软件,因为它只从PATH环境变量指定的路径中去搜索命令

  4)find精而细:find应该是几个命令中最强大的了,它不但可以通过文件类型、文件名进行查找而且可以根据文件的属性进行搜索。

Linux学习-实验楼(1)的更多相关文章

  1. 实验楼 linux 学习

    实验楼 linux 学习     一.Linux 用户管理 1.查看用户 who am i // who mom likes whoami   ====--------====== 输入的第一列表示打 ...

  2. Linux学习笔记——重点推荐的Linux网络在线学习资源

     首先非常感谢百度,感谢网络的搜索引擎技术,也非常感谢学习资源的贡献者和组织! 1:http://billie66.github.io/TLCL/book/zh/ 2:http://www.ha97. ...

  3. (干货)Linux学习资源推荐

    源地址 国内的专业Linux网站(GB) ChinaUnix Linux中国 实验楼: 免费提供了Linux在线实验环境,不用在自己机子上装系统也可以学习Linux,超方便实用!. 国内的专业Linu ...

  4. Linux学习(2)- 正则表达式基础

    Linux学习(2)- 正则表达式基础 一.基础正则表达式介绍与练习 学习内容 正则表达式特殊符号 [:alnum:]代表英文大小写字母及数字 [:alpha:]代表英文大小写字母 [:blank:] ...

  5. Linux学习(1)- TCP/IP网络协议基础

    Linux学习(1)- TCP/IP网络协议基础 一.TCP/IP 简介 学习内容 TCP/IP(Transmission Control Protocol/Internet Protocol)是传输 ...

  6. 20155303狄惟佳预备作业三Linux学习笔记

    20155303狄惟佳预备作业三Linux学习笔记 初次接触Ubuntu系统以及Linux内核,了解了其产生的历史,从感性来讲,深深吸引我的是其中蕴含的珍贵的开源精神,以及Stallman等人对&qu ...

  7. Linux学习笔记之一及虚拟机的安装

    学习Linux基础入门 学习实验楼Linux基础入门--学习笔记系列博客 第一节 Linux系统简介 Linux就是一个操作系统,操作系统在计算机系统中包括系统调用和内核两层.在简单了解了Linux的 ...

  8. Linux学习日记-使用EF6 Code First(四)

    一.在linux上使用EF 开发环境 VS2013+mono 3.10.0 +EF 6.1.0 先检测一下EF是不是6的 如果不是  请参阅 Linux学习日记-EF6的安装升级(三) 由于我的数据库 ...

  9. Linux学习之CentOS(二十二)--单用户模式下修改Root用户的密码

    在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...

随机推荐

  1. hdu2036

    题解: 求多边形面积 分成很多块三角形求就可以了 凹的也是支持的 代码: #include <bits/stdc++.h> using namespace std; #define rin ...

  2. bzoj4773: 负环

    题解: 网上还有一种spfa+深度限制的算法 https://www.cnblogs.com/BearChild/p/6624302.html 是不加队列优化的spfa,我觉得复杂度上限是bellma ...

  3. 使用htpasswd及nginx auth模块对指定页面进行登录验证

    某些时候,作为运维挂你人员会部署一些工具用于使用外网对内部服务器进行某些管理,比如phpmyadmin.gateone堡垒机等工具.但是这些软件 一旦部署之后,所有人都可以访问到我们的登录页面似乎并不 ...

  4. drone的pipeline原理与代码分析

    最近的一个项目,需要实现一个工作任务流(task pipeline),基于之前CICD的经验,jenkins pipeline和drone的pipeline进入候选. drone是基于go的cicd解 ...

  5. Python_xml

    xml: 可扩展标记语言,用来标记数据,定义数据类型,主要用来传输和存储数据(和json差不多,不同语言或程序之间进行数据交换的协议) ET(xml.etree.ElementTree)中的几个类: ...

  6. Kafka/Zookeeper集群的实现(二)

    [root@kafkazk1 ~]# wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12. ...

  7. Centos7创建CA和申请证书

    转载:http://rackie386.blog.51cto.com/11279229/1947999 Centos7.3创建CA和申请证书 openssl 的配置文件:/etc/pki/tls/op ...

  8. 在 Wiki 标记中添加无序列表

    项目:在 Wiki 标记中添加无序列表在编辑一篇维基百科的文章时,你可以创建一个无序列表,即让每个列表项占据一行,并在前面放置一个星号.但是假设你有一个非常大的列表,希望添加前面的星号.你可以在每一行 ...

  9. HDFS常用API(1)

    一.HDFS集群API所需要jar包的maven配置信息 <dependency> <groupId>org.apache.hadoop</groupId> < ...

  10. webpack的build的时候时间长处理方案

    观察第一次build的时间比较长,之后的编译时间较短,可以通过webpack -watch 监测性能 1, 将webpack升级到4.0,build 的速度提升很多 2,用webpack -watch ...