zoukankan      html  css  js  c++  java
  • 20165309 Linux安装及学习

    Linux安装及学习

    安装虚拟机

    结合娄老师的博客《基于VirtualBox虚拟机安装Ubuntu图文教程》和对一些小问题的百度,我也算是很顺利地完成了安装。

    然后,按照步骤安装了虚拟机增强功能并配置了Ubuntu。

    最后,通过《做中学之Vim实践教程》,利用vimtutor实践学习了vim编辑器(不知道为啥我用的不是30分钟,而是一个多小时...),随手便签式笔记如下:

    实践的过程不仅有趣,而且很帮助记忆~

    学习Linux 基础入门(新版)

    一、基本概念及操作

    重要快捷键

    [Tab] 能够补全命令,补全目录、补全命令参数

    [Ctrl+c] 强行终止

    Shell 常用通配符

    一次性创建多个文件:

    $ touch love_{1..10}_linux.txt
    

    man命令调用手册页

    显示第一区段中的ls命令 man 页面:

    $ man 1 ls
    

    帮助文档包含:
    1 Executable programs or shell commands(用户命令帮助,是普通的Linux命令)
    2 System calls (系统调用帮助,是系统调用、操作系统的提供的服务接口)
    3 Library calls (库函数调用帮助,是库函数、C语言中的函数)
    4 Special files (usually found in /dev)
    5 File formats and conventions eg /etc/passwd(配置文件帮助,是指文件的格式:比如passwd, 就会说明这个文件中各个字段的含义)
    6 Games(由各个游戏自己定义)
    7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7) (是附件还有一些变量,比如environ这种全局变量)
    8 System administration commands (是系统管理用的命令,这些命令只能由root使用,如ifconfig)
    9 Kernel routines [Non standard]

    二、用户及文件权限管理

    功能 命令
    查看用户 $ who am i
    创建用户 $ sudo adduser lilei
    登录用户 $su -l lilei
    退出登录 $exit 或(Ctrl+D)
    删除用户 $ sudo deluser lilei --remove-home
    查看文件权限 $ls -l
    查看所有文件 $ ls -Al
    查看某一个目录的完整属性,而不是显示目录里面的文件属性 $ ls -dl <目录名>
    显示所有文件大小,并以普通人类能看懂的方式呈现 $ ls -AsSh

    查看自己用户组

    # 在有root权限的用户下
    # 查看lilei所在的用户组
    $ groups lilei   
    # 将lilei添加到拥有sudo权限的用户组中
    $ sudo usermod -G sudo lilei
    # 查看lilei所在的用户组
    $ groups lilei
    

    修改用户权限

    有二进制数字表示和加减赋值操作两种方式。

    三、Linux 目录结构及文件基本操作

    功能 命令
    新建文件 $ touch test
    新建目录 $ mkdir mydir
    新建多级目录 $ mkdir -p father/son/grandson
    复制文件 $ cp test father/son/grandson
    复制目录 $ cp -r father family
    删除文件 $ rm -f test
    删除目录 $ rm -r family
    剪切文件 $ mv src dest
    重命名文件 $ mv file myfile
    查看文件 $ cat -n [file],$ tac [file],$ nl -b a/t -n ln/rn/rz [file]
    阅览模式 $ more [file]
    查看文件类型 $ file [file]

    四、环境变量与文件查找

    变量定义

    #定义变量
    declare $变量名
    #或者直接赋值也自动定义变量,注意变量之前不带"$"
    变量名=值
    #打印变量的值,"$"代表引用变量的值
    echo $变量名
    

    涉及到的三种环境变量

    • set :显示当前 Shell 所有环境变量,包括其内建环境变量(与 Shell 外观等相关),用户自定义变量及导出的环境变量
    • env :显示与当前用户相关的环境变量,还可以让命令在指定环境中运行
    • export :显示从 Shell 中导出成环境变量的变量,也能通过它将自定义变量导出为环境变量

    输出环境变量

    #将普通变量输出为环境变量,能被子进程继承
    export 变量名
    
    #比较文件的命令
    vimdiff 1.txt 2.txt 3.txt ....
    

    命令的查找路径与顺序

    $PATH环境变量设置命令搜索路径

    #输出当前命令搜索路径的设置
    echo $PATH
    
    #./程序名 表示执行当前目录下的指定程序
    

    $PATH中临时添加自定义路径,用冒号连接路径

    PATH=$PATH:/home/shiyanlou/Code
    

    如果永久添加需要修改配置文件
    zsh是.zshrc bash是.bashrc
    本次修改用户目录下的文件

    $ echo "PATH=$PATH:/home/shiyanlou/mybin" >> .zshrc
    

    变量修改

    变量设置方式 说明
    ${变量名#匹配字串} 从头向后开始匹配,删除符合匹配字串的最短数据
    ${变量名##匹配字串} 从头向后开始匹配,删除符合匹配字串的最长数据
    ${变量名%匹配字串} 从尾向前开始匹配,删除符合匹配字串的最短数据
    ${变量名%%匹配字串} 从尾向前开始匹配,删除符合匹配字串的最长数据
    ${变量名/旧的字串/新的字串} 将符合旧字串的第一个字串替换为新的字串
    ${变量名//旧的字串/新的字串} 将符合旧字串的全部字串替换为新的字串

    变量删除

    $ unset temp
    

    让环境变量立即生效

    $ source .zshrc或$ . ./.zshrc
    注意第二种方式必须指定完整的绝对或相对路径
    

    搜索文件

    • whereis 简单快速
    • locate快而全
    • which小而精
    • find精而细

    五、文件打包与解压缩

    常用命令:

    六、文件系统操作与磁盘管理

    功能 命令
    查看磁盘的容量 $ df
    查看目录的容量 $ du

    常用参数

    • du -d #指定查看目录的深度
    # 只查看1级目录的信息
    $ du -h -d 0 ~
    # 查看2级
    $ du -h -d 1 ~
    
    • du -h #同--human-readable 以K,M,G为单位,提高信息的可读性。
    • du -a #同--all 显示目录中所有文件的大小。
    • du -s #同--summarize 仅显示总计,只列出最后加总的值。

    简单的磁盘管理

    • 用dd命令从标准输入读入用户输入到标准输出或者一个文件
    输出到文件
    $ dd of=test bs=10 count=1 # 或者 dd if=/dev/stdin of=test bs=10 count=1
    输出到标准输出
    $ dd if=/dev/stdin of=/dev/stdout bs=10 count=1
    
    将输出的英文字符转换为大写再写入文件:
    $ dd if=/dev/stdin of=test bs=10 count=1 conv=ucase
    
    • 使用 dd 命令创建虚拟镜像文件
      从/dev/zero设备创建一个容量为 256M 的空文件:
    $ dd if=/dev/zero of=virtual.img bs=1M count=256
    $ du -h virtual.img
    
    • 使用mkfs命令格式化磁盘
      将虚拟磁盘镜像格式化为ext4文件系统:
    $ sudo mkfs.ext4 virtual.img
    
    • 使用mount命令挂在磁盘到目录树

    mount命令的一般格式如下:

    mount [options] [source] [directory]
    

    常用操作:

    mount [-o [操作选项]] [-t 文件系统类型] [-w|--rw|--ro] [文件系统源] [挂载点]
    

    使用 umount 命令卸载已挂载磁盘:

    $ sudo umount 已挂载设备名或者挂载点
    
    • 使用umount命令卸载已挂载磁盘
    • 使用fdisk为磁盘分区
    • 使用losetup命令建立镜像与回环设备的关联

    七、Linux下的帮助命令

    功能 命令
    区分命令是内建的还是外部的 type
    显示 shell 内建命令的简要帮助信息 help
    显示 shell 外部命令的简要帮助信息 --help
    显示系统手册页中的内容 man
    能够更完整的显示出 GNU 信息 info
  • 相关阅读:
    剑指 Offer——13. 调整数组顺序使奇数位于偶数前面
    剑指 Offer——3. 从尾到头打印链表
    剑指 Offer——2. 替换空格
    剑指 Offer——1. 二维数组中的查找
    LeetCode 905. Sort Array By Parity 按奇偶校验排列数组
    LeetCode 448. Find All Numbers Disappeared in an Array找到所有数组中消失的元素
    SSH 代码笔记
    anaconda3安装caffe
    opencv多版本安装
    人脸文章与数据库
  • 原文地址:https://www.cnblogs.com/wsj-wsj-wsj/p/8463607.html
Copyright © 2011-2022 走看看