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. HashMap、HashTable与ConcurrentHashMap区别

    线程不安全的HashMap 在多线程环境下,使用HashMap进行put操作会引起死循环,导致CPU利用率接近100%,所以在并发情况下不能使用HashMap.例如,执行如下代码会引起死循环. fin ...

  2. php 操作数据库

    $datetoday = date('Y-m-d'); $datetime = $thedate; $data_info = $data; $db = array( 'dsn' => 'mysq ...

  3. BZOJ1066 [SCOI2007]蜥蜴 网络流 最大流 SAP

    由于本题和HDU2732几乎相同,所以读者可以看-> HDU2732题解传送门: http://www.cnblogs.com/zhouzhendong/p/8362002.html

  4. 关系网络数据可视化:1. 关系网络图&Gephi

    1.关系网络图 如何来表示两个对象之间的关系? 把对象变成点,点的大小.颜色可以是它的两个参数,两个点之间的关系可以用连线来表示.连线分为无向(只是连接的导向,一些简单的关系很容易体现)和有向(复杂网 ...

  5. utf-8和utf8的区别

    utf-8 和 utf8 的区别与使用: "UTF-8" 是标准写法,php 在 Windows 系统里的英文不区分大小写,所以也可以写成 "utf-8".&q ...

  6. 20165235 实验三 敏捷开发与XP实践

    20165235 实验三 敏捷开发与XP实践 主目录: 姓名:祁瑛 学号:20165235 班级:1652 实验课程:JAVA程序设计 实验名称:Java面向对象程序设计 实验时间:2018.4.30 ...

  7. 3、Qt Project之Socket网络编程

    Socket网络编程  Step1:首先完成整个界面的设计 <?xml version="1.0" encoding="UTF-8"?> <u ...

  8. Linux下的Mysql数据库备份+还原

    数据库备份: root@debian-mm:/home/debian-mm# mysqldump -u root -p Account > Account.sql Enter password: ...

  9. TF之RNN:TensorBoard可视化之基于顺序的RNN回归案例实现蓝色正弦虚线预测红色余弦实线—Jason niu

    import tensorflow as tf import numpy as np import matplotlib.pyplot as plt BATCH_START = 0 TIME_STEP ...

  10. 数据库相关--net start mysql 服务无法启动(win7系统)解决

    系统:win7 旗舰版 64位 MySQL:8.0.11 家里台式机上不久之前安装了MySQL,一段时间没碰过后,突然启动不了了(我有一头小毛驴,我从来也不骑,有一天我心血来潮骑它去赶集) 先是在系统 ...