之前一直以为Linux和Windows差不多,但是学习了Linux基础入门之后才发现两种操作系统之间差距非常大。

  Linux只是在硬件之上的内核和系统调用,就连我们在Windows里习以为常的图形界面都是Linux上的软件。在使用Linux的时候,我们都习惯于使用终端和命令行进行操作,而不是像Windows那样的图形界面里的鼠标键盘的共同操作。物理机系统可通过[Ctrl]+[Alt]+[F1]~[F6]切换6个纯命令行界面的终端,通过[Ctrl]+[Alt]+[F7]从终端切换回图形界面。而且学习之后我才知道,Linux里面一切皆文件,相对于Windows里的文件后缀名区分文件类型,Linux不通过后缀名区分文件类型,可以通过file命令查看文件类型。
大数据Linux资料分享群119599574

  在使用Linux的时候,我们不直接和系统打交道,而是通过Shell(命令解析器)。Shell就像一个壳隐藏了操作系统的底层操作。通俗来讲,Shell就是可以接受用户输入命令的程序。在UNIX/Linux中比较流行的常见的Shell有bash,zsh,ksh,csh等等,Ubuntu终端默认使用的是bash,默认的桌面环境是 GNOME或者Unity(基于 GNOME)。

  在Linux系统中有很多十分方便的快捷命令。

  • Tab:可以用来补全命令、目录、或者命令参数,连续按两次还可显示所有能匹配到的结果;

  • [Ctrl+C]:用来终止当前程序并且不退出终端;

  • [Ctrl+d]:键盘输入结束或者退出终端;

  • [Ctrl+s]:暂定当前程序,暂停后按下任意键恢复运行;

  • [Ctrl+z]:将当前程序放到后台运行,恢复到前台命令为fg;

  • [Ctrl+a]:将光标移至行头,相当于home,[Ctrl+e]相当于[end];

  • [Ctrl+k]:删除从光标所在位置到行末;

  • [Alt+backspace]:向前删除一个单词;

  • [shift+pgup]:将终端显示向上滚动,[shift+pgdn]向下滚动。

  在Linux中,通配符主要是“*”和“?”,可用来对字符串进行模糊匹配,终端里的通配符由Shell完成。

  Linux中还有一部分特别重要的命令:

  • man命令:man命令是Linux中一个十分重要的帮助指令,内容包括计算机程序(库和系统的调用),正式的标准和惯例,抽象的概念,通过执行man命令调用手册页。man命令手册比较重要的是前三个:1.一般命令;2.系统调用;3.库函数,涵盖了C标准函数库。man命令如果加上数字参数,可以指定从哪本手册中搜索帮助。数据Linux资料分享群119599574
  • ls命令:用于显示当前目录下的文件,可以通参数[-a]显示隐藏文件(Linux下隐藏文件皆以‘.’开头)。
  • cd命令:Linux下一切皆文件,因此在终端中[cd]命令就显得尤为重要。这个命令可以通过绝对路径或者相对路径进入到你想进去的目录中。
  • cp命令:用于终端中文件或目录的复制操作。
  • rm命令:用于终端中文件或目录的删除操作。
  • cat命令:用于正序打印文件内容到终端,与之相反的tac命令倒序打印问价内容到终端。
  • declare命令:用于声名一个变量,用‘=’号赋值,用echo和$命令读取变量的值。

  Shell中运行的大部分命令都将以审理了的子进程的方式运行。环境变量有3种:1.当前Shell进程私有用户自定义变量,只在当前Shell中有效;2.Shell本身内建的变量;3.从自定义变量导出的环境变量。

以下是部分实验的截图:  
banner截图

figlet截图

给用户添加用户组并通过sudo命令获得root权限

黑客帝国

实验过程中遇到的问题以及解决:

1、运行hello_shell.sh脚本文件时候报错,原来是for之后少了一个空格,之后才知道Linux脚本文件里面的空格不像C语言里面的一样能随便增删。

2、使用mv命令移动两个文件时,其中一个文件名输错,再次执行移动命令时,说另一个文件不存在,之后发现另一个文件已经移动到目的目录中。从而知道了使用mv命令移动两个文件时,其中一个文件名输错,不会影响其他文件的移动。

Linux基础入门---学习心得的更多相关文章

  1. VBox&vmware虚拟机安装Linux及Linux基础入门学习

    VBox&vmware虚拟机安装Linux及Linux基础入门学习 通过VMware workstation安装Linux 在安装虚拟机之前,我特意上网搜索了一下目前常使用的虚拟机软件,了解了 ...

  2. Linux基础入门学习笔记20135227黄晓妍

    学习计时:共24小时 读书:1小时 代码:8小时 作业:3小时 博客:12小时 一.学习目标 1. 能够独立安装Linux操作系统   2. 能够熟练使用Linux系统的基本命令   3. 熟练使用L ...

  3. 20135231 —— Linux 基础入门学习

    20135231 何佳 学习计时:共12小时 读书:5 代码:2 作业:2 博客:3 一.学习目标 1. 能够独立安装Linux操作系统 2. 能够熟练使用Linux系统的基本命令 3. 熟练使用Li ...

  4. Linux基础入门学习笔记之三

    第四节 Linux目录结构及文件基本操作 Linux目录结构 Linux 的目录与 Windows 的目录的区别 目录与存储介质(磁盘,内存,DVD 等)的关系 Windows 一直是==以存储介质为 ...

  5. Linux基础入门学习笔记之四

    环境变量与文件查找 环境变量 变量 所谓shell变量,就是计算机中用于记录一个值(不一定是数值,也可以是字符或字符串)的符号,而这些符号将用于不同的运算处理中.通常变量与值是一对一的关系,可以通过表 ...

  6. Linux基础入门学习笔记之二

    第三节 用户及文件权限管理 Linux用户管理 Linux是可以实现多用户登录的操作系统 查看用户 who命令用于查看用户 shiyanlou是当前登录用户的用户名 pts/0中pts表示伪终端,后面 ...

  7. 在学习linux基础入门时的一些问题总结(1)

    本周在实验楼完成了<linux基础入门>的21个实验,虽然之前已经学习过linux的相关课程,对linux下的命令也有一些了解和实践,但完成这21个实验以及35个练习题仍然遇到了许多的问题 ...

  8. 安装虚拟机以及学习Linux基础入门

    安装虚拟机 参考基于VirtualBox虚拟机安装Ubuntu图文教程完成了虚拟机的安装,主要遇到了以下2个问题 在新建虚拟电脑的时候,如果类型选择了Linux,则版本就只能选择Ubuntu(32 位 ...

  9. Linux 基础入门(新版)”实验报告一~十二

    实验报告 日期: 2015年9月15日 一.实验的目的与要求 熟练地使用 Linux,本实验介绍 Linux 基本操作,shell 环境下的常用命令. 二.主要内容 1.Linux 基础入门& ...

随机推荐

  1. Informatica 9.5安装部署

    Informatica  结构 1个或多个资源库(Respository) PowerCenter数据整合引擎是基于元数据驱动的,提供了基于数据驱动的元数据知识库(Repository),该元数据知识 ...

  2. 3D旋转相册的实现

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. August 04th 2017 Week 31st Friday

    Love is a vine that grows into our hearts. 爱是长在我们心里的藤蔓. What is love? Maybe no one can explain it cl ...

  4. July 28th 2017 Week 30th Friday

    If equal affection cannot be, let the more loving be me. 如果没有相等的爱,那就让我爱多一点吧. There is seldom equal a ...

  5. [日常] NOIWC2019 冬眠记

    NOIWC 2019 冬眠记 辣鸡rvalue天天写意识流流水账 Day 0 早上没有跑操(极度舒服.png) 和春哥在博客颓图的时候突然被来送笔电的老爹查水表(捂脸) 母上大人骗我说这功能机不能放存 ...

  6. c++我在努力----第三次作业体会

    [github地址](https://github.com/kobe96/object-oriented) 这次作业的三大难点 1.类的应用 从我们并没有接触过c++,到掌握如何写一个程序,多个类的引 ...

  7. wooyun内网渗透教学分享之内网信息探测和后渗透准备

    常规的,从web业务撕开口子url:bit.tcl.comgetshell很简单,phpcms的,一个Phpcms V9 uc api SQL的老洞直接getshell,拿到shell,权限很高,sy ...

  8. Shell传递参数【转载】

    Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以 ...

  9. 把对象缓存到HttpRuntime.Cache里,你能安全地使用它吗?

    每每勤勤恳恳,思来想去,趁还有激情,先把它记录下来... 定义一个Stu的类: public class Stu { public string Name { get; set; } public i ...

  10. freemarker模板加载TemplateLoader常见方式

    使用过freemarker的肯定其见过如下情况: java.io.FileNotFoundException: Template xxx.ftl not found. 模板找不到.可能你会认为我明明指 ...