zoukankan      html  css  js  c++  java
  • Liunx基础笔记

    liunx中的基本命令


    本阶段的学习我有疑问的地方:

    1.在文件的重定向方面

    2.软件包的管理方面

    给老师的一段话:

    希望老师今后多多照顾我们这些调皮的孩子们,给与我们学习上的帮助。但老师也要注意自己的身体,注意肚子里的小baby。祝愿老师工作顺利,身体健康。

    liunx中的基本命令:

    命令的组成由:cmd [option] [args]

     查看帮助文档:man 命令

      <1>pwd 显示当前的路径

      <2>文件的路径分为两种:1.绝对路径 2.相对路径

        在liunx中文件的系统的结构是从/开始,绝对路径:路径是从/开始算。相对路径:从当前路径开始算起。(.当前所在的位置的路径 ..上一级路径)。

      <3>ls 列出目录下的文件

          ls option:

              -a: 列出文件下所有的文件,包括以“.“开头的隐藏文件(linux下文件隐藏文件是以.开头的,如果存在..代表存在着父目录)。

              -l:列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等。

              -i: 列出文件的inode号。

              -d:配合 -i使用(显示本身的inode号)-l使用(显示本身的信息)

              -h:配合 -i使用(显示本身下的inode号)-l使用(显示本身下的文件或文件夹的信息)

      <4>查看文件内容

            cat filepath(文件的路径)显示文件的全部内容。

            less filepath(文件的路径)按屏显示文件的内容。/key可以按值进行搜索(按q退出搜索)

            head -n行数 filepath 显示文件的前n行的内容。

            tail -n行数 filepath 显示文件的后n行的内用。

      <5>复制

           cp[-r (目录)] srcpath(需要要复制的文件的路径)destpath(目的的的路径)

      <6>剪切 

            mv srcpath(需要要复制的文件的路径)destpath(目的的的路径)

      <7>删除文件或目录

            rm[-r(目录)-f(强制删除,不会出提示)] filepath(加路径)。

      <8>创建文件

            touch filename(文件的名字)

      <9>创建目录

             mkdir dirname(目录的名字)

      <10>用命令关机

             shutdown -h now

             poweroff

             init 0

             halt

      <11>用命令重启

             shutdown -r now

             reboot

             init 6

      <12>查看自己输入的历史命令

             history

    文件管理

       文件的属性(元信息)

         stat filepath(查看文件的信息)

            ls -l (部分显示)

               drwxr-xr-x. 3 root root 18 11月 30 12:25 abcd

      文件的类型

          liunx中有七中文件类型

               -  ·regular  普通文件

               d  directory   目录文件

               c  charactor  字符设备文件

               b  block    块设备文件

               l  link     符号链接文件

               p  pipe    管道文件

               s  socket   套接字文件

      文件权限 rwxr-xr-

          r(读)  w(读)  x(执行)

          拥有者(u) 所属组(g) 其他用户(o)

          a(all)

      修改文件权限:

          1. chomd u/g/o/a (+ -) r/w/x filepath

          2.采用八进制数进行文件权限的修改

            chomd o666 filepath  (666: 110 110  110 rw-rw-rw-)

              修改文件的拥有者和所属组

            chown user:group filepath

               目录文件:

                  r    ls  (列出)

                  w    touch  /  mkdir   /rm  (创建或删除)

                  x    cd  (搜索可进入)

       防止产生权限过大的文件:

            umask(得到文件的屏蔽字)

               特殊权限

                 u+s  所有由此权限的执行的文件,可以使普通用户在执行此命令期间,将什么切换成文件的拥有者。

       文件的硬链接个数:

          硬链接:同一个文件,多个名字,但inode号是一样的。硬链接不能跨分区。

           建立硬链接的方法:

                ln   srcpath  dest

                cp -l srcpath  dest

                符号链接(软链接):也就是快捷方式,符号链接的文件就是存放的源文件的路径。可以跨分区。

           建立符号链接的方法:

                ln -s  srcpath   dest

                cp -l  srcpath  dest

             文件的拥有者和所属组:

                   创建用户:useradd username

                   给定密码:passwd username

                   切换用户:su - username

                   删除用户: userdel -r username

                   登出:exit

                   创建组: groupadd groupname

                   删除组: groupdel groupname

                   用户添加到组内: gpasswd -a user group

                   用户从组内删除: gpasswd -d user group

            文件大小

                文件的大小(size)不等于所占磁盘空间的大小(block)

                sata filepath

                  block(块)==512bytes

      ·          du -sh filepath 查看对应的文件所占磁盘空间的大小

                df -h 产看磁盘分区的占用情况

            文件的查找:

                可执行文件:

                    which cmd

                    whereis cmd

                非可执行文件:

                    遍历数据库: locate filepath

                    更新数据库: updatedb

                    find(遍历磁盘空间)

                      find path options 

                          options:

                              -name 按名字查找

                                find /etc/ -name "passwd"

                              -size 按文件的大小查找

                                find /etc/ -size n(b/c/k) 

                              -mtime:按修改的时间查找

                                find /etc/ -mtime (+ -)n  (+代表n天以前,-带边n天以内)

                              -type :按类型查找

                                 find /etc/ -type f/d/c/b/p/l/s

                                    f  普通文件

                                    d  目录文件

                                    c  字符设备文件

                                    b  块设备文件

                                    p  管道文件

                                    l  符号链接文件

                                    s  套接字文件

                               -exec:对于查找到的结果执行

                                 find /etc/ -name "hello" -exec ls -l {} ;

                              -ok:在执行ls -l之前进行询问

                                 find /etc/ -name "hello" -ok  -exec ls -l {} ;

                              -print:打印查找的结构

                                 find /etc/ -name "hello" -print -exec ls -l {} ; 

                              -a:连接多个需要查找的条件

                                 find /etc/ -size +10k -a -type b

              文件的打包压缩

                    压缩:

                      .gz  .bz2 .zip

                      gzip file 压缩为.gz

                      gunzip file.gz 解压缩

                      bzip2 file

                      bunzip2 file.bz2

                      zip xxx.zip file dir1 dir2

                      unzip xxxzip

                    主要有 tar option xx.tar.xx file1....dir....

                          options:

                             -c 创建

                             -v 过程可视

                             -f  在最后,后跟包名

                             -j bz2压缩格式

                             -z 生成gz格式压缩文件

                             -J 生成xz格式

                             -x 解压缩

                             -C 指定解压路径

                             -t 不解压不解包的情况下查看压缩包中的内容

                             -r 向包中追加新的文件

             文件重定向:

                  当用户登录成功后,三个文件依次打开:

                       标准输入(stdin 0) 标准输出(stdou 1)  标准错误输出(stderr 2)

                          0<  标准输入重定向

                          1>  标准输出重定向

                          2>  标准错误输出重定向

                          >>   追加

              |  管道

                  wc [-lwc]  filepath

                  -l   line  统计 filepath 文件的函数

                  -w  word  单词个数

                  -c   charactor 字符个数

                  grep  [-i w n] key filepath    筛选文件的内容

                     [-i -w -n]为筛选条件

                     i 大小全部显示

                     w 精确查找

                     n 显示满足内容的行号

             vim 编辑器的使用

                vim filepath  ----->打开----->一般模式

                进入编辑模式进行编辑(iI aA oO sS)

                      i:光标前插入

                      I:  行首插入

                      A: 行尾插入

                      a: 光标后插入

                      O:上一行

                      o:  下一行

                      S:删除一行插入

                      s:删除一个字符插入

                从编辑模式进入一般模式(Esc  /Crtl +c)

                从一般模式进入命令行模式(w保存 q退出)

            在一般模式下进行的操作

               nyy:复制n行

               p:粘贴,光标下一行

               P:粘贴,光标上一行

               ndd:剪切n行

               v: 撤销操作

               Ctrl +r 还原操作

               x:光标后删除

               X:光标前删除

               r:替换一个字符

               R:开启替换模式 按Esc退出

               Ctrl +c 加方向键选择:块选择,进行整体的替换或添加

               gg :首行

               G:末行

               nG:表示第n行

               / :进行搜索

            命令行模式下:

                :w  保存

                :q  退出

                :q!  强制退出

                :w filepath 另存为

                :save as filepath 

                set ts=number 设置tab宽度

                set number  显示行号

                %s oldstring/newstring /g:所有oldstring替换为newstring

                n,n oldstring/newstring /g 从第几行到第几行oldstring替换为newstring

          软件包管理:

              源码包

                .tar.gz  .tar.bz2  .tar.xz

                <1> 下载并解压解包

                <2>编译make 

                <3>make install

            二进制包(.rpm)

                yum安装:

                    /etc/yum.repo.d/xxx.repo

                    yum install xxxx

                    列如有如下的软件包

                         coreutils-8.22-21.e17.x86_64.rpm

                         coreutils包名

                     yum install 包名   安装

                     yum remove 包名  卸载

                     yum repolist 查看仓库中有多少软件包

                     yum list  列出所有的软甲包

                     yum provides /usr/bin/ls 查看文件对应的软件包

                     yum update 包名  更新包

                     yum clean all      清除缓存

                     yum源所在的路径

                         etc/yum.repos.d/xxx.repo

           本地yum源的配置

                1.将镜像文件挂载到文件系统

                2.创建镜像的挂载点 mkdir /mnt/centos 7

                3.光盘镜像在 /dev/cdrom目录

                4.挂载光盘镜像

                    mount -t iso9660 -o loop /dev/cdrom /mnt/centos7/

                    mount -o iso9660 /dev/cdrom /mnt/centos7/

                5.配置镜像yum源

                    vim /etc/yum.repos.d/myrepo

                    [local_centos7]

                    name=centos7

                    baseurl=file:///mnt/centos7

                    enabled=1

                    gpgcheck=0

           已下载的rpm软件包的安装:

                xxx.rpm

                rpm -ivh xxxx   安装已下载的安装包

                rpm -e xxxx   进行卸载

                rpm -U xxx   进行更新

                rpm -qa  查询系统中 所有已经安装的rpm包

                rpm -qf /usr/bin/ls 查询ls对应的软件包

                rpm -nodeps  不检查依懒性

           网络管理

              1.查看 IP地址,mac(物理地址) netmask

                  ip addr    ifconfig

                  回环测试 127.0.0.1

                 ip addr ens33 显示ens33的信息

              2.查看/启动/重启/关闭/自启动/禁用服务

                  systemctl status /start/restart/stop/enable/disable   +服务的名字

              3.手动配置静态ip地址

                  关闭NetworkManager

                     systemctl stop NetworkManager

                  配置/etc/sysconfig/network-scripts/ifcfg-xxx

                      DEVICE=eth0

                      BOOTPROTO=none

                      NM_CONTROLLED=no

                      ONBOOT=yes

                      TYPE=Ethernet

                      IPADDR=172.16.60.1

                      PREFIX=24

                      GATEWAY=172.16.60.254

                  重启网络服务

                      systemctl restart network

              4.防火墙

                 关闭防火墙:systemctl stop firewalld

                 开机防火墙不启动:systemctl disable firewalld

              5.vsftpd------->文件共享服务

                 安装:yum install vsftpd

                 启动:systemctl start vsftpd

                 开机自启动:systemctl enable vsftpd 

                 配置文件:/etc/vsftpd/vsftpd.conf

                 访问共享目录:

                 下载安装:yum install lftp

                 lftp 加ip地址

                 lcd--->切换下载路径

                 get filepath 下载非目录文件

                 mirror filepath 下载目录文件

                 bye 退出

              6.nfs 远程挂载

                 下载安装:

                      yum install nfs-utils rpcbind 

                 启动:

                    systemctl start nfs

                    systemctl enable nfs

                 编辑共享路径:

                    vim /etc/exports

                    /var/ftp /pub *(ro,sync,no_root_squash)

                 客户端挂载:

                    mount 192.168.5.129:/var/ftp/pub /mnt

          进程管理:

              查看进程信息:

                    ps aux  

              终止进程通过kill发送信号:

                    kill -l

              杀死进程的最高命令是kill -9

              top 实时查看系统中进程的运行状态。

          创建pyenv虚拟环境

              sudo yum install openssl* 安装其所需要的库文件

              git clone https://github.com/yyuu/pyenv.git ~/.pyenv 下载pyenv

              echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile

              echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

              echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

              exec $SHELL 重启终端运行的程序(shell)

              source ~/.bash_profile 重新加载配置文件.bash_profile

              pyenv install --list 列出所有我们可以通过pyenv安装的python版本

              pyenv install -v 3.6.4 用pyenv命令安装python3.6.4

              pyenv versions 查看当前系统中所有的python版本

              pyenv version 查看当前所使用的版本

              pyenv global 3.6.4 将使用版本切换到3.6.4

              pyenv version

              python

              如果成功了 重启计算机

          git的基本使用:

              1.创建仓库

                  登录GitHub账号,创建远程仓库

                  同步到本地

                  生成Key:

                      ssh-keygen

                      cat ~/.ssh/id_rsa.pub将密钥复制到账号的key 

                      git clone git@github.com:FpydeGitHub/python.txt.git

                      python.txt 本地仓库

                  git基本命令:

                      git add  追踪

                      git commit -m  备注     提交到仓库

                      git push  提交到远程仓库

                      git pull   下载到本地仓库

                      git status  查看仓库日志

                      git reset--hard ---id--->切换到指定版本

                      git reflog  查看最新版本日志

                      git rm    删除

          

  • 相关阅读:
    ExcelHelper
    c# 文件的读写
    Wav文件操作类
    c# & (与) 、^ (异或)和 >>(<<位移运算)
    c# 高精度的timer
    c# 生成txt文件,写入内容
    C# 对 list<T>中的数据按某字段的大小进行排序
    OC 底层探索 06、 isa 2个经典问题分析
    OC 底层探索 05、属性、成员、实例变量简析
    数据结构与算法 0、 汇总简介
  • 原文地址:https://www.cnblogs.com/fpyfpy/p/10051562.html
Copyright © 2011-2022 走看看