• 20165228 预备作业3 Linux安装及学习


    (一)安装虚拟机

    根据娄老师给的Ubuntu版本和安装教程,我曾遇到如下问题:

    Q1:首先遇到的问题是没有开启虚拟化

    • 解决方法:在重启电脑时进入BIOS>Configuratio > Intel Virtual Technology > Enabled;然后按F10保存BIOS设置并重启
      Q2:可能是我的电脑兼容性不太好,安装娄老师给的Ubuntu版本安装后重启提示intel_rapl:no valid rapl domains found in packge0,启动后出现提示错误的窗口并且一直闪
    • 解决方法:通过搜索提示内容,我没能解决这个问题。通过尝试在Ubuntu官网下载Ubuntu16.04.3版本然后重新安装后可以正常运行
      (二)学习Linux

    以下是我在学习Linux命令使用时的记录

    • 实验一 Linux系统简介
      在这一节中让我印象深刻的是Linux系统与Windows系统之间的不同
      开源与封闭
      应用丰富程度
      上手难易度
      用途
      稳定性与安全性
      Windows的应用生态圈更加广阔,并且上手容易,并且对于游戏娱乐和专业软件的支持等有着绝对的优势。
      Linux作为一个开源的系统,由于免费,所以软件支持相对逊色一些,但它的稳定性和安全性是Windows不能比拟的,因此很多处理数据的服务器都是运着Linux系统,同时它的高度定制性也是一大优点,我们常用的Android就是以Linux为内核的操作系统。
    • 实验二基本概念和操作
      重要的快捷键:
      Tab:补全命令、目录和参数
      Ctrl+d:键盘输入结束或退出终端
      Ctrl+s:暂停当前程序,暂停后按下任意键恢复运行
      Ctrl+z:将当前程序放到后台运行,恢复到前台为命令fg
      Ctrl+a:将光标移至输入行头,相当于Home键
      Ctrl+e:将光标移至输入行末,相当于End键
      Ctrl+k:删除从光标所在位置到行末
      Alt+Backspace: 向前删除一个单词
      Shift+PgUp: 将终端显示向上滚动
      Shift+PgDn: 将终端显示向下滚动
      方向上键:恢复曾经输出过的命令
      通配符:主要有星号(*)和问号(?),可通过不全的文件名来找出该文件。类似于Windows里的搜索功能,将拥有相同部分文件名的文件筛选出来
      命令行中获取帮助:
    $ man  < command_name>
    $ man 数字 ls来获取相关区段的说明
    

    创建一个名为 file 的文件:

    $ touch file
    

    进入一个目录:

    $ cd /etc/
    

    查看当前所在目录:

    $ pwd
    

    作业:

    $ sudo apt-get update
    $ sudo apt-get install toilet
    $ sudo apt-get update
    $ sudo apt-get install figlet
    

    • 实验三用户及文件权限管理
      查看用户:
    $ who am i 或 who mom likes
    

    Q3:为什么who am i输成whoami依然有效2️⃣,who mom likes去掉空格后无法识别命令

    创建用户:

    $ su <user>
    

    查看 /etc/group 文件

    $ cat /etc/group | sort
    
    

    修改文件权限:r(读)w(写)x(执行)对应三位二进制数,可使用chmod xxx file来对文件名为file的三组权限(拥有者,所属用户组,其他用户)进行权限分配。
    作业
    首先创建用户loutest:

    $ sudo adduser loutest
    

    然后将loutest用户添加进sudo用户组:

    sudo usermod -G sudo loutest
    

    定位到/opt/目录之下:

    $ cd /opt/
    

    创建文件forloutest:

    $ sudo touch forloutest
    

    验证文件是否创建成功:

    $ ls -l
    

    修改权限:

    $ sudo chmod 764 forloutest
    

    以此来对文件拥有者赋予其读、写与执行权限,与拥有者同用户组的loutest赋予其读写权限,赋予其他用户只读权限。
    Q4:我在敲命令的时候总会漏掉sudo,然后导致命令无法完成。所以是否要养成在命令前加sudo权限的习惯?

    • 实验四Linux目录结构及文件基本操作
      进入上一级目录:
    $ cd ..
    

    进入home目录:

    $ cd ~
    

    获取当前路径:

    $ pwd
    

    新建名为mydir目录:

    $ mkdir mydir
    

    复制文件名为File的文件到/opt/:

    $ cp file /home/shiyanlou
    

    删除文件:

    $ rm file
    

    强制删除:

    $ rm -f file
    

    移动文件:mv 源目录文件 目的目录
    重命名文件:mv 旧的文件名 新的文件名
    查看文件:cat(正序打印)、tac(倒序打印到输出)、nl(添加行号打印)、head(查看头几行)、 tail(查看尾几行)
    作业:
    创建homework目录:

    $ mkdir homework
    

    验证是否创建成功:

    $ ls -l
    

    在目录下建立文件:

    $ cd homework
    $ touch {1..10}.txt
    

    验证:

    $ ls -l
    

    在目录下删除文件:

    $ rm {1..5}.txt
    

    验证:

    $ ls -l
    

    linux的日志文件保存在/var/log目录之下

    • 实验五:环境变量与文件查找
      变量名:英文字母、数字、下划线,不能由数字开头
      创建一个名为a的变量:
    $ declare a
    

    赋值名为a的变量:

    a=shiyanlou
    

    读取名为a的变量的值:

    $ echo $a
    

    私有用户自定义变量:只在当前shell中有效
    变量修改:
    ${变量名#匹配字串}:从头向后开始匹配,删除符合匹配字串的最短数据
    ${变量名##匹配字串}:从头向后开始匹配,删除符合匹配字串的最长数据
    ${变量名%匹配字串}:从尾向前开始匹配,删除符合匹配字串的最短数据
    ${变量名%%匹配字串} :从尾向前开始匹配,删除符合匹配字串的最长数据
    ${变量名/旧的字串/新的字串}:将符合旧字串的第一个字串替换为新的字串
    ${变量名//旧的字串/新的字串}:将符合旧字串的全部字串替换为新的字串
    删除名为a的变量:

    $ unset a
    

    搜索文件:
    1.whereis 简单快速
    查找以a开头的文件:

    $ whereis a
    

    2.locate 快而全
    查找指定目录以a开头的文件:

    $ locate /etc/a
    

    查找指定目录下指定类型jpg的文件:

    $ locate /etc/*.jpg
    

    3.find 精而细
    可以通过文件类型、文件名和文件属性进行查找
    基本命令格式:

    $ find [path] [option] [action] 
    

    作业
    找出 /etc/ 目录下的所有以 .list 结尾的文件

    locate /etc/*.list
    

    • 实验六文件打包和解压缩
      参数:
      -r参数表示递归打包包含子目录的全部内容
      -q参数表示为安静模式,即不向屏幕输出信息
      -o表示输出文件,需在其后紧跟打包输出文件名
      -e表示创建加密压缩包
      zip解压:
      将压缩包解压在当前目录:
    $ unzip shiyanlou.zip
    

    使用安静模式,将文件解压到指定目录:

    $ unzip -q shiyanlou.zip -d ziptest
    

    不通过解压查看压缩包内容:

    $ unzip -q shiyanlou.zip -d ziptest
    

    zip:
    打包 :(目录请加 -r 参数)

    $ zip something.zip something
    

    解包:

    $ unzip something.zip
    

    指定路径:-d 参数
    tar:
    打包:

    $ tar -zcvf something.tar something
    

    解包:

    $ tar -zxvf something.tar
    

    指定路径:-C 参数
    作业
    创建名为test的文件:

    $ sudo touch test
    

    使用zip压缩该文件:

    $ zip -r -1 -o test.zip test
    

    解压该文件到指定目录:

    $ unzip -q test.zip -d /home/shiyanlou
    

    使用tar压缩该文件:

    $ tar -cf test.tar test
    

    解压该文件到指定目录:

    $ tar -xf test.tar -C /home/shiyanlou
    
    • 实验七文件系统操作与磁盘管理
      查看磁盘容量:
    $ df
    

    查看目录容量:

    $ du
    

    作业

    $ du -a | sort -n -r | head -n 10
    

    实验八Linux下的帮助命令
    内建命令:Shell程序的一部分,包含一些简单的Linux系统命令,随系统启动而加载并存在于内存中。解析内部命令Shell不需要创建子程序,执行速度比外部命令速度快。比如:history、cd、exit 等等
    外部命令:Linux系统中实用程序部分,功能强大且包含的程序量大,需要时才启动,不包含在Shell程序中,但命令执行过程是由Shell程序控制。比如:ls、vi
    区分命令种类:type

  • 相关阅读:
    文本字符集转换
    添加HP消息队列
    fedora19/opensuse13.1 配置svn client
    前端html---介绍前端,标签,列表
    数据分析1
    项目流程
    git 使用
    mongo基础
    linux上面pycharm汉化
    pythonNet 09协程
  • 原文地址:https://www.cnblogs.com/cloud795/p/8457836.html
Copyright © 2020-2023  润新知