美文网首页
建立python学习环境之:二、了解Linux系统

建立python学习环境之:二、了解Linux系统

作者: 大白python | 来源:发表于2019-10-15 21:18 被阅读0次

    Linux 有许多发行版本,各有各特色功能。在此我只将它作为学习python的编程环境,随意一个版本就可以了。
    虽是随身系统,也需要对它作一个了解,方便操作。

    了解Linux 系统

    1.Linux 系统结构主要由4部分组成

    1. 内核
    2. Shell
    3. 文件系统
    4. 应用系统

    重点记住:linux一切且文件(目录、硬盘等都是文件)

    2. 对Linux常用命令学习

    Linux命令常用结构 :Command [-option] [argument]

    • Command:即是要运行的命令的本身,说白了就是一个软件(程序);
    • Option:是选项(可选),选项是控制命令运行状态和行为的(可多个选项一起,如df -hT);
    • Argument:是参数(可选),是命令要操作对象如文件、路径、数据、目录等;
      在指令的第一部分按[tab]键一下为[命令补全],两下为所有命令选择,在非第一部分按[tab]键两下为[文件补全];

    Linux系统中需要在查找框中输入:terminal 终端命令行工具,
    在此工具中使用命令。

    3.作为编程系统,用到的部分命令分享,详细的命令可以问下度娘,前辈已作了很多详细的分享了。

    3.1 Linux关机

    正确步骤:

    1. 关机前,命令行中执行:sync,把内存中的数据写到磁盘中。重启前也需要执行一次。
    2. 关机: shutdown -h now :立刻关机
      还有以下几种关机方式:
    • shutdown -r now或reboot :立刻重启
    • shutdown -h 20:00 :预定时间关闭系统(晚上8点关机,如果现在超过8点,则明晚8点)
    • shutdown -h +10 :预定时间关闭系统(10分钟后关机)
    • shutdown -c :取消按预定时间关闭系统

    注:就算Ubuntn系统已设有关机按键,也还是用命令行来关机,这机会对文件保存,以免丢失数据。

    3.2 查看系统版本:

    • uname -m :显示机器的处理器架构(如x86_64)
    • cat /proc/version :查看linux版本信息
    • uname -r :显示正在使用的内核版本
    • lsb_release -a :查看系统发行版本(如CentOS7)
    • rpm -qa | grep kernel-devel :查看kernel-devel版本(安装软件时编译内核用,故需要保持内核版本一致性)

    这5个命令,可查清系统的版本,便于后继更新软件源时,找上相对应的版本源,以及软件支持版本。

    3.3 重点文件与目录操作命令

    cd:是Change Directory的缩写,用来切换工作目录,语法:cd [相对或绝对路径或特殊符号]

    • cd :进入该用户的主目录 ~(root用户为/root,其他用户为/home/用户名)
    • cd .. :返回上一级目录(注意要空格)
    • cd - :返回上次所在目录
    • cd / :返回根目录 (绝对路径)
    • cd ./目录1/目录2 :进入当前目录下的子目录(相对路径)
    • pwd :显示工作路径(Print Working Directory 的缩写)

    ​ls:是List的缩写,用于列出目录下的文件,语法:ls [选项][目录或文件名]

    • ls -a :列出文件下所有的文件,包括以“.“开头的隐藏文件
      ls -lh .log :列出文件的详细信息(.log结尾,为通配符代表任意多个字符)

    • file 文件或目录 :显示文件的类型(目录、text、zip、shell脚本等)

    • mkdir dir1 :创建目录(dir1)(mkdir为make directory的缩写)

    • mkdir -p ./dir1/dir2 :递归创建目录(-p:父目录不存在时,同时建立)

    • touch a.txt :创建文件a.txt

    ​rm:可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉; 语法:rm (选项)(参数)(注:如果参数中含有目录,则必须加上-r选项);

    • rm 文件 :删除文件
    • rm -r 目录或文件 :删除目录(及目录下所有文件)(非空也可以)
    • rm -rf 目录或文件 :强制删除,如:rm -rf * 为删除当前目录下所有文件
    • find -inum 1842601 -exec rm -rf {} ; :删除乱码文件或目录(会提示找不到此文件或文件夹但其实已经删除了)(上传中文文件会乱码,rm命令删除不了)(先使用ls -i命令找到inode,即文件或目录前面的数字字符串,如1842601;)

    ​mv:是move的缩写,可以用来剪切移动文件、目录或者将文件改名;语法:mv 源文件 目标文件(改名)或目录(移动);

    • mv a b :移动或者重命名一个文件或者目录(存在即移动目录或覆盖文件,不存在即改名)
    • mv /opt/git/g /opt/a :移动g到opt目录下并改名为a(a目录不存在,若存在则为移动g到a目录下)
    • mv -t ./test a.txt b.txt :移动多个文件到某目录下

    ​cp:复制文件或目录;cp命令可以将单个或多个文件复制到一个已经存在的目录下;
    常用:cp -ai 文件或目录 目标目录;

    • cp -ai /opt/abc /opt/git/ :复制abc目录(或文件)到git目录下(选项a表示文件的属性也复制、目录下所有文件都复制;i表示覆盖前询问)

    ​ln:link的缩写,用于建立硬(软)链接,常用于软件安装时建软链接(类似快捷方式)到PATH;
    语法:ln [-s] 源文件 目标文件

    • ln -s /opt/a.txt /opt/git/ :对文件创建软链接(快捷方式不改名还是a.txt)
    • ln -s /opt/a.txt /opt/git/b :(快捷方式改名为b)(下面的一样可以改名)
    • ln -s /opt/mulu /opt/git/ :对目录创建软链接
    • ln /opt/a.txt /opt/git/ :对文件创建硬链接

    PS: Linux系统一切且文件,重点学透文件操作命令,才能熟练操作它。如对系统的软件源更新为阿里源。
    步骤:

    1. 备份源
      sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
    2. 移出sources.list 到外面来
      mv /etc/apt/sources.list /mnt/hdd1/public/
      用文本编辑器打开更新为阿里源内容:

    deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
    deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
    deb http://mirrors.aliyun.com/ubuntu/ xenial universe
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
    deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
    deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
    deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
    deb http://archive.canonical.com/ubuntu xenial partner
    deb-src http://archive.canonical.com/ubuntu xenial partner
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
    deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
    deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse


    1. 完了再移回: mv /mnt/hdd1/public/sources.list /etc/apt
    2. 更新源: sudo apt-get update
    3. 更新软件
      sudo apt-get dist-upgrade
      sudo apt-get upgrade

    3.4 软件安装

    我自己只学其中2种:

    3.4.1 apt方式安装法:

    安装deb包,类似yum安装,适用于Debian, Ubuntu 以及类似系统; 在命令行窗口直接用以下命令:

    • apt-get install aptitude :安装aptitude工具,实现依赖自动安装,依赖版本自动降级或升级
    • aptitude install 软件 :安装软件(推荐这种方式安装)
    • apt-cache search 软件 :搜索软件
    • apt-get install 软件 :安装软件
    • apt-get purge 软件 :卸载软件(包括配置文件,只删除软件purge换成remove)
    • apt-get upgrade :更新所有已安装的软件包
    • apt-get update :升级列表中的软件包
    • apt-get clean :从下载的软件包中清理缓存

    3.4.2 源代码(Source)包编译安装

    ​ >源代码包(一般有install文件)如hello-2.2.tar.bz2,下载复制到/opt;

    • tar -jxvf hello-2.2.tar.bz2 :解压
    • ./configure --prefix=/opt/软件目录名称 :为编译做好准备,加上 prefix 手动指定安装路径
    • make :编译
    • make install :安装
    • make clean :删除安装时产生的临时文件
    • vim /etc/profile export PATH=$PATH:/opt/目录/bin :手动指定安装路径需要加path
    • hello :执行软件:看INSTALL和README文件(是否源码包、如何安装、执行都看这两个)
    • rm -rf 软件目录名称 : 卸载软件目录

    PS: 以上的命令,记住后,加上多练手,就可对Linux系统操作自如了。

    推荐文章:

    建立python学习环境之:一、随身Linux系统

    相关文章

      网友评论

          本文标题:建立python学习环境之:二、了解Linux系统

          本文链接:https://www.haomeiwen.com/subject/hgpdmctx.html