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. css3 属性——calc()

        其实在之前学习CSS3的时候,我并没有注意到有calc()这个属性,后来在看一个大牛的代码的时候看到了这个,然后就引发了后来的一系列的查找.学习,以及这篇博客的诞生.好了,废话不多说了,来干正事. 一 ...

      2. subllime的插件使用

        1.emmet快速使用的方法. html:xt 然后按下tab快速的生成一个html文档. 生成10个div----- div*10 div->ul->li->a->img 写 ...

      3. n人围圈报数,报3出圈

        题目:有n个人围成一圈,顺序排号.从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那位. Scanner scanner = new Scanner(System. ...

      4. torchnet package (1)

        torchnet package (1) torchnet torchnet torchnet是用于torch的代码复用和模块化编程的框架,主要包含四个类 Dataset 以不同的方式对数据进行预处理 ...

      5. Uedit个人专注

        Uedit个人专注   Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\Shell\Uedit] [HKEY_CLASSES_ROO ...

      6. Python+Flask+MysqL的web建设技术过程

        一.前言(个人学期总结) 个人总结一下这学期对于Python+Flask+MysqL的web建设技术过程的学习体会,Flask小辣椒框架相对于其他框架而言,更加稳定,不会有莫名其妙的错误,容错性强,运 ...

      7. easyui api常用操作

        一.FORM表单类 一.textbox validatebox 验证 1.验证规则:validType : 验证规则,类型STRING|ARRAY:1个规则就直接一个字符串,多个规则写在数组里 例如: ...

      8. JSP session过期时间(小记)

        以下情况,Session结束生命周期,Servlet容器将Session所占资源释放:1.客户端关闭浏览器2.Session过期3.服务器端调用了HttpSession的invalidate()方法. ...

      9. 微信跳一跳,Python辅助自动跳程序

        一.说明 此代码借鉴一位大神提供在gitHub上的源码,已经做了简化合并处理,成功连上手机并运行后,可实现自动玩微信跳一跳游戏,刷个1000+的分数轻轻松松 github源码地址 https://gi ...

      10. Web验证方式(2)--Form Authentication

        Form验证方式并不是HTTP标准,而是在微软ASP.NET Web框架下提供的一种验证方式.其大致流程如下: 在上图的流程中,ASP.NET框架提供了如下支持类:( FormsAuthenticat ...