Linux学习记录

别出心裁的Linux命令学习法学习总结

(由于我的电脑是Mac,Linux安装省略)

操作系统的功能:

  • 管家婆服务生
  • 博客中对于这两个词含义的解释为
  • 管家婆:通过进程、虚拟内存和文件三个重要抽象管理计算机的CPU、内存、I/O设备。
  • 服务生:为用户提供shell,为程序员提供系统调用。

命令行的好处

主要是可以批处理并自动化,还有些功能GUI无法完成

由于我的电脑操作系统为MacOS,所以我自己总结出了快捷键的使用:

  • Alt+Ctrl+T :打开终端(由于Mac没有打开终端的快捷键,所以我自己设置为与Ubuntu统一的快捷键。Mac如何设置打开终端的快捷键 )
  • Command+T :新建标签页
  • Command + { 或 Command + Shift + [ :切换标签页
  • Tab :命令、文件名等自动补全功能。
  • Ctrl+R :快速检索使用过的历史命令
  • Ctrl+C :中断终端中正在执行的任务。

Linux基础入门

实验1 Linux 系统简介

  • Linux是什么?

Linux 就是一个操作系统。Linux 主要是系统调用内核那两层。当然直观地看,我们使用的操作系统还包含一些在其上运行的应用程序,比如文本编辑器、浏览器、电子邮件等。

  • Shell是什么?

命令行解释器。

实验2 基本概念及操作

  • Terminal是什么?

终端模拟器的程序。

  • Shell的详细解释

可以接受用户输入命令的程序。

  • 输入和输出

输入

touch file创建一个名为file的文件

cd /etc/ 进入一个目录

pwd查看当前所在目录

输出

输出会返回你想要的结果,比如你要看什么文件,就会返回文件的内容。如果只是执行,执行失败会告诉你哪里错了,如果施行成功那么会没有输出,因为linux的哲学就是:没有结果就是最好的结果

  • 问题1:实验过程中,输入$ tail,为什么接下来输入什么都没有任何反应?
  • 问题2:输入$ find /,为什么会不停地跳出很多乱七八糟的东西?
  • 快捷键总结
按键 作用
Ctrl+d 键盘输入结束或退出终端
Ctrl+s 暂停当前程序,暂停后按下任意键恢复运行
Ctrl+z 将当前程序放到后台运行,恢复到前台为命令fg
Ctrl+a 将光标移至输入行头,相当于Home
Ctrl+e 将光标移至输入行末,相当于End
Ctrl+k 删除从光标所在位置到行末
Alt+Backspace 向前删除一个单词
Shift+PgUp 将终端显示向上滚动
Shift+PgDn 将终端显示向下滚动
  • 通配符: 指星号(*)和问号(?)

当查找文件夹时,可以使用它来代替一个或多个真正字符;当不知道真正字符或者懒得输入完整名字时,常常使用通配符代替一个或多个真正字符。

  • Shell常用通配符
字符 含义
* 匹配 0 或多个字符
? 匹配任意一个字符
[list] 匹配 list 中的任意单一字符
[!list] 匹配 除list 中的任意单一字符以外的字符
[c1-c2] 匹配 c1-c2 中的任意单一字符 如:[0-9] [a-z]
{string1,string2,...} 匹配 string1 或 string2 (或更多)其一字符串
{c1..c2} 匹配 c1-c2 中全部字符 如{1..10}
  • 问题3: ls的具体用法是什么?

    (在教材中有时写在一个命令词以前,有时写在之后,有些混淆)

    解答:通过实验3的学习,了解了ls的用法:

    1、用它列出并显示当前目录下的文件

    2、查看文件权限。

    • ls -l:使用较长格式列出文件。
    • ls -A:显示除了 .(当前目录)和 ..(上一级目录)之外的所有文件,包括隐藏文件(Linux 下以 . 开头的文件为隐藏文件)。
    • ls -dl<目录名>:查看某一个目录的完整属性,而不是显示目录里面的文件属性.
    • ls -AsSh:显示所有文件大小,并以普通人类能看懂的方式呈现。其中小 s 为显示文件大小,大 S 为按文件大小排序。
  • -w参数指定打印宽度,因为我们的环境在屏幕中显示比较小,必须要加上宽度限制。例:$ printerbanner -w 50 A,"50"是上限宽度限制。

实验3 用户及文件权限管理

  • 问题4:为什么输入命令行$ who -r之后,没有输出任何内容,并没有输出运行等级?运行等级又是什么?
  • 问题5:给新用户设置密码时,为何不能输入一串数字密码?
  • | sort表示将读取的文本进行一个字典排序再输出
  • 关于文件类型,这里有一句话必须牢记:

Linux里面一切皆文件

文件中的软链接文件相当于Windows中的快捷方式。

  • 一个目录同时具有读权限和执行权限才可以打开并查看内部文件而一个目录要有写权限才允许在其中创建其他文件,这是因为目录文件实际保存着该目录里面的文件的列表等信息。

  • 修改文件权限,每个文件的三组权限(拥有者,所属用户组,其他用户,记住这个顺序是一定的)

    方法一:二进制数字表示



    chomd 700 iphone67指拥有者,即我自己可以、写、执行权限,00指所属用户组和其他用户无任何权限。

    方法二:加减赋值操作

    g、o 还有 u 分别表示 group、others 和 user,+ 和 - 分别表示增加和去掉相应的权限。

    chmod go-rw iphone6指所属用户组和其他用户去掉读、写权限。

  • adduser 和 useradd 的区别是什么?

答:useradd 只创建用户,创建完了用 passwd lilei 去设置新用户的密码。adduser 会创建用户,创建目录,创建密码(提示你设置),做这一系列的操作。其实 useradd、userdel 这类操作更像是一种命令,执行完了就返回。而 adduser 更像是一种程序,需要你输入、确定等一系列操作。

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

  • FHS标准

  • 目录的四种交互作用的形态

  • 路径

    • 绝对路径:

    以根" / "目录为起点的完整路径,以你所要到的目录为终点,表现形式如:/usr/local/bin,表示根目录下的usr目录中的local 目录中的bin目录。

    • 相对路径:以当前目录. 为起点,以你所要到的目录为终点

    usr/local/bin (这里假设你当前目录为根目录)。你可能注意到,我们表示相对路径实际并没有加上表示当前目录的那个 . ,而是直接以目录名开头,因为这个usr 目录为 / 目录下的子目录,是可以省略这个 . 的(以后会讲到一个类似不能省略的情况);如果是当前目录的上一级目录,则需要使用..,比如你当前目录为home 目录,根目录就应该表示为../../ ,表示上一级目录(home 目录)的上一级目录( / 目录)。

  • 新建空白文件使用touch

    新建目录使用mkdir,若要新建多级目录则须在mkdir之后添加-p

  • 复制文件到目录,使用cp

    复制目录,则须在cp后加-r

  • 删除文件使用rm,但如果删除一些只读权限的文件时,会有删除提示,若想强制删除,则在rm之后添加-f

    删除目录在rm之后添加-r

-移动文件使用mv 源文件目录 目的目录

  • 重命名文件使用mv 旧文件名 新文件名

    批量重命名使用rename

  • 查看文件

1、使用cat快速查看文件

2、使用nl命令查看文件

-b : 指定添加行号的方式,主要有两种:

-b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)
-b t:只列出非空行的编号并列出(默认为这种方式)

-n : 设置行号的样式,主要有三种:

-n ln:在行号字段最左端显示
-n rn:在行号字段最右边显示,且不加 0
-n rz:在行号字段最右边显示,且加 0

-w : 行号字段占用的位数(默认为 6 位)

3、使用more命令分页查看文件

可以使用 Enter 键向下滚动一行,使用 Space 键向下滚动一屏。

4、使用tail命令查看文件

- 因为系统新增加一个用户,会将用户的信息添加到 `passwd`文件的最后,那么这时候我们就可以使用 `tail` 命令了。
- 若想只看一行,在`tail`之后加上`-n`再加上数字`1`就是查看一行文件。
- `-f`可以不停的读取某个文件的内容,实现动态查看,达到监视的目的。
  • 查看文件类型

与Windows不同的是,Linux中的文件不是通过看后缀来查看文件类型的,而是利用file命令。

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

  • 变量

    • 创建变量tmp

      20165233 预备作业3 Linux安装及学习的更多相关文章

      1. 20165226 预备作业3 Linux安装及学习

        20165226 预备作业3 Linux安装及学习 Linux安装 一.下载安装VirtualBox 1.首先在官网下载,点开基于VirtualBox虚拟机安装Ubuntu图文教程 找到版本进行下载安 ...

      2. 20165230 预备作业3 Linux安装及学习

        20165230 预备作业3 Linux安装及学习 安装Linux操作系统 通过学习实践基于VirtualBox虚拟机安装Ubuntu图文教程,开始了虚拟机的安装,根据教程按着步骤一步一步的完成. 遇 ...

      3. 20165327 预备作业3 Linux安装及学习

        20165327 预备作业3 Linux安装及学习 一.学习基于VirtualBox虚拟机安装Ubuntu图文教程,在自己笔记本上安装Linux操作系统,注意尽量选用最新版本的VirtualBox和U ...

      4. 20165303 预备作业3 Linux安装及学习

        =20165303 预备作业3 Linux安装及学习 安装虚拟机 按照http://www.cnblogs.com/rocedu/p/6012545.html步骤进行逐步操作,安装虚拟机. 遇到的问题 ...

      5. 20165315 预备作业3 Linux安装及学习

        20165315 预备作业3 Linux安装及学习 一.在自己笔记本上安装Linux操作系统 因为对操作电脑的不熟悉,我在第一项任务上就花费了一定的时间,在安装过程有如下问题: 我的电脑是苹果公司的M ...

      6. 20165310 预备作业3 Linux安装及学习

        预备作业3 Linux安装及学习 安装虚拟机 之前在win7系统下通过EasyBCD安装过Ubuntu虚拟机,这次阅读<基于VirtualBox虚拟机安装Ubuntu图文教程>又学习到了一 ...

      7. 20165211 预备作业3 Linux安装与学习

        20165211 预备作业3 Linux安装与学习 1. Linux安装 涉及软件:VirtualBox,Ubuntu 参考教程:基于VirtualBox安装Ubuntu图文教程 安装过程的问题 在安 ...

      8. 20165227朱越 预备作业3 Linux安装及学习

        预备作业3 Linux安装及学习 Linux的安装 虚拟机的安装远没有想象中的那样容易,下载还没有出现什么问题,当我安装的时候,第一个问题出现在创建虚拟机时选择安装的虚拟机版本和类型的时候的错误 当时 ...

      9. 20165333 预备作业3 Linux安装及学习

        预备作业3 Linux安装及学习 Linux系统安装 在老师的教程帮助下成功的完成了虚拟机的安装,但安装过程中也遇到了一些问题.在下载ubuntu时,总是下载失败,在求助同学后,在中文版官网的网址,才 ...

      随机推荐

      1. 如何修改SQL Server 2008数据库服务器名称

        在做数据库发布订阅的时候我们经常要碰到要使用服务器名称来进行. 那么我们经常会碰到的问题是,现在开始大量的使用云服,我们只需要一台服务器搭建好环境,做一个备份镜像,还原到其他的服务器上就可以了,但是问 ...

      2. supervisor进程管理工具

        Supervisor 一个python写的进程管理工具,用来启动.关闭.重启进程,可以同时控制多个进程. 安装: pip install supervisor 配置: 通过配置文件来满足自己的需求 配 ...

      3. uva-1636-概率

        https://vjudge.net/problem/UVA-1636 给出一个左轮手枪的弹夹串,第一枪是空的,问是继续打还是转一转再打下一枪还为空的概率大.继续打为空的概率就是 '00'的个数比上' ...

      4. 【Matplotlib】线设置,坐标显示范围

        改变线的颜色和线宽 参考文章: controlling line properties Line API 线有很多属性你可以设置:线宽,线型,抗锯齿等等:具体请参考matplotlib.lines.L ...

      5. New Concept English Two 20 52

        $课文50  乘车兜风 510. I love travelling in the country, but I don't like losing my way. 我喜欢在乡间旅行,但却不愿意迷路. ...

      6. 程序级的AOP到底好不好?

        很多年前模拟过Spring的AOP机制,简单的实现其实不难,但真正要保证切入代码符合预期的设计,不会引起负面影响,特别是要保证原来逻辑的稳定性,即AOP的强壮性.个人感觉还是很难,如果横切的代码过多, ...

      7. 二叉树题目集合 python

        二叉树是被考察频率非常高的数据结构.二叉树是按照“父节点-左子树&右子树”这样的方式,由根节点不断向下扩展,形成一棵树的结构.二叉树经常被提到的三种遍历方式:前序遍历.中序遍历和后序遍历,既是 ...

      8. C#读写 AB PLC 直接通过节点来读写数据 读写 AllenBradley PLC

        本文将使用一个Github开源的组件库技术来读写AB PLC,使用的是基于以太网的实现,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 官网:http:/ ...

      9. LNMP环境下独立安装Mysql5.7.18 并对数据库文件进行本地物理迁移 (需暂停数据库服务方式)

        前几天读研时候的同学要我帮忙给解决一个问题,就是Redhat服务器下面安装了LNMP,并且由于分区的划分不当导致MySQL数据库中存放数据库的盘区内空间被急剧消耗,由于该应用主要是数据分析及备份所用, ...

      10. I.MX6 linux kernel编译错误处理

        /******************************************************************************** * I.MX6 linux kern ...