zoukankan      html  css  js  c++  java
  • Linux03

    1、调用vi
        vi filename    打开或创建一个文件
        vi        打开一个新文件, 最后才取名
    我对vi这个命令的了解吧,它可以打开一个文件然后编辑这个文件,不过vi编辑文件只能用键盘,而且很多地方和平常我们编辑文档不一样,所以,看下面吧,下面有所有命令的介绍.(我总觉得这玩意反人类)

    2、    
        1,命令模式下-->切换到编辑模式(以下命令都会使vi模式从命令模式转到编辑模式)
        i    在光标当前位置插入
          I    行首(光标转到行首)
        a    在光标所在位置后插入
          A    行尾
        o    在光标所在行下插入一空行
          O    在光标所在行上插入一空行
        
        <Esc>    退出命令状态
        0      光标回到这一行的开始
        $    光标移动到这一行的结束
            

        直接命令 (命令模式)
        :命令    (底行模式)

          删除
        x    删除一个字符
        dw    删除当前词(没办法识别所有的英文单词,是连续多个字母,当碰到标点符号时,为一个词)
        3dw    删除三个词
        dd    删除当前行(从光标所在行开始)
        5dd    删除五行(从光标所在行开始)
        :5,10d  (底行模式:5到10行删除)
          change text:
        r    替换一个字符
        cw    替换一个单词
        cc    替换一行
        C    替换从光标至行尾
          copy text :
        yw        拷贝词(光标放在一个单词的开始位置)(p:在光标的下个位置黏贴;P:在光标的上个位置)
        yy        拷贝行(或Y)
        p       当前行下粘贴
        :1,2 co 3  拷贝行1,行2在行3之后
        :4,5 m 6   移动行4,行5在行6之后

          save quit text:
        :w        存盘
        :w newfile    存成新文件
        :wq         存盘退出Vi(或ZZ,或:x先检测有没有改变,如果没有改变,不存盘)
        :q!         强行退出不存盘
        ~    改变大小写
        J    把当前行和下一行连起来
        u    废除刚才的编辑操作(undo)(存盘退出,不能废除)
        :set nu    显示行代码 (:set nonu)
        :21    光标停在指定行
        21G    光标停在指定行 (G 到文件尾,1G 到文件头)
        GG    光标停留在末尾行
        
        :/串    从当前行往下查找
        :?串    从当前行往上查找
        n    查找继续

        :r file2    在光标所在位置插入另一个文件
        :1,$s/旧串/新串/g    替换全文(或 :$s/旧串/新串/g)
              $:表示最后一行

    3、id:查用户的信息
        id root
        id -a root







      需要在管理员 权限下操作
      添加用户
        adduser 用户名
      移动到组
        usermod -g sudo tom
         把tom移动到sudo组(只是简简单单的将其移动到了一个组,但是它就不在它原本的组里了)
      追加一个组
        gpasswd -a tom sudo(为这位用户追加一个组,在它原本所拥有的组内,它又多了一个)
      删除一个组
        gpasswd -d tom sudo(给这位用户删除一个组)
      删除用户
        sudo userdel -r tom(如果用户之前用usermod移动过位置,则它原本所属组则无法被此命令删除)
         -r 把家目录都删除
     

    4、 显示当前已登录本系统的所有用户信息
        users 显示当前登入的账户(系统当前登录的账户)
        who  用来查询目前有那些人在线上。
        w    用来查询目前有那些人在线上,同时显示出那些人目前的工作。
        who am i . 显示登入系统时候的账户(Ubuntu显示不出来....)
        whoami   . 显示当前使用的用户

    7、find:根据指定的条件从文件系统中搜寻指定的文件或目录,然后做处理
         7.1:通过文件名查找
        find 路径 -name "fileName" 会显示出这个文件的路径,如果不加路径的话,它会从此时的相对路径找

         7.2:通过时间查找
        find 路径 -mtime 10 (数字可以换)
            查找10天前修改的文件

        find 路径 -mtime +10 十天以外
        find 路径 -mtime -10 十天以内
        问
        :
          -mtime:修改时间 打开保存。
        -atime:访问时间 more    ls -lu
        -ctime:改变状态 修改权限的时候 ls -lc

          通过用户查找: -user
        find 路径 -user test
          同文件大小查找:-size
            find ./ -size 30c
    ·     通过权限查找
        find ./ -perm 777
          通过文件类型查找
          find ./ -tpye f -atime +365 -exec rm {} ;(选项可以多选,这就是个例子)
        
          注:
        -type
        注:普通文件的- 使用f代替
        -exet 执行
        {} 用来接收前面参数

      find ./ -name "*.html" -print | xargs perl -p -i.bak -e "s/oldString/newString/g;"    

           将./目录下所有后缀为html的文件中“/oldString” /newString”;其中xargs为一个命令,
           然后作为perl的参数. 这个功能非常强大.

        xargs:把前面的内容整理为参数,将前面结果作为后面命令(perl)的参数

        perl:对文件内容进行处理
        -p :把参数列表中的每一个文件都遍历处理,一个一个处理
        -i.bak:对文件进行处理之前,先备份
            index.bak 之后再处理
        -e :excut 执行后面的命令
        s/oldString/newString/g:将一个文件中的字符进行替换,替换之前进行备份


    8、grep:从管道或文件中搜寻所满足条件的行
        过滤
        eg: grep root /etc/passwd
            从passwd 文件中 过滤 root关键字,把所在行显示
        eg: ls -la | grep -i "被查找的字符串"
        
        -i 忽略大小写
        -v 查找不匹配的行

    9、wc:从文件或管道中统计
        行数、
        字符个数、
        单词个数
        wc [options] filename(s)
        -l 行数
        -w 字数
        -c 字符数
        more a.txt | wc -l

    10、ps:用来查看系统中正在运行的进程的信息
        什么是进程:一个程序的运行过程
        
        ps -e :查看正在运行的进程(运行过程中、就绪状态下的)
        ps -f:详细信息
        eg:
        wood             2709           2571        0 05:07   
        当前进行开启的用户   PID进程自己的id   PPID进程的父进程 C  启动时间  
        pts/2  00:00:00  cat
        tt     运行多久  哪个程序文件启动的进程

        tt:表示该进程是从哪个控制台启动的。
            可以是 pts/num或者?pts/0 0号控制台启动的
            ?:不是用户启动的,是系统运行时自动启动的进程

       eg : ps -ef
        看到进程的详细内容
        主要就是查看pid

       eg : ps -auwx
        看到更加详细的内容
    kill pid
       杀死进程
       kill -9 pid
       强杀进程
    sleep 让进程进入休眠状态
    pkill 进程名 :pkill  sleep
        通过进程名杀死进程

    11、ping ip   看看网络通不通。

    ifconfig 查看ip
      在文件中配置ip
      /etc/network/interfaces
      https://blog.csdn.net/u011077672/article/details/71123319
     

    12、telnet
      - telnet服务器模拟一个终端允许你连接并工作于一个远端系统上
        - 使用TCP/IP连接于另一个系统
    13、ftp
        使用 ftp 复制或传送文件:
           ftp有服务器端和客户端

        ftp(File Transfer Protocol)允许用户对远地主机复制文件,用户毋须考虑操作系统类型,即能向或从任何具有 TCP/IP 的系统复制文件。 ftp命令允许复制目录中的一个文件或所有文件,但不能复制多层 次目录。使用ftp时, 必需在远地主机上设有帐户。 当 ftp 注册到远地系统时,并未得到 shell ,而是通过 ftp 命令解释程序同远地主机进行通讯。
        cd        lcd
         服务器cd    本地cd
        bin,asc 需要设置上传方式和下载方式
           bin : 字节上传
           asc :字符上传
        put 上传文件
        get 下载文件
            注:只能下载和上传 文件,
            不能下文件夹,也不能传文件夹
        mput
        mget
        
        prompt 不出现确认的提示信息

        bye  退出ftp 远程服务器
    14、环境变量 path
        whereis ls 看看ls在哪
        echo $PATH 查看当前的PATH

        设置/修改临时环境变量:
          变量名=value
            全局修改: 下面文件中存放 全局环境变量内容
          /etc/profile 所有用户有效
          ~/.bashrc    当前用户有效
        
    重点:
        在控制台中直接输入命令能执行
        原因是因为在PATH中配置了对应可执行文件的所在路径

    15、path:命令的默认搜索路径
        想知道所执行的命令到底在那个目录下?
        which vi 搜索vi所在的路径(在path下搜索,搜索到就停止)
        whereis vi 搜索vi所在的路径(在path下搜索,搜索到继续搜索,直到找到所有的vi)
    16、History
        $ set HISTORY=30    设置最多允许保存前三十个已执行命令的记录
        $ history        显示历史记录信息
        $ history 5        显示第五条历史记录信息
        $ !n            重复执行第n条历史命令
        $ !!            重复执行上一条历史命令
    17、别名:针对于系统中已经存在的命令,给它取个别名
        bash:alias h(别名)=history(原始命令)
        $ alias home=’cd;ls’

        alias 显示所有设置的别名
        unalias copy 取消所设置的别名
        (有无取消所有设置的别名)
    18、初始化文件:包含命令和变量的设置,当shell启动时就执行
        对初始化文件再操作系统中分为两级:
        1、系统级(一旦修改,对所有的用户都起作用)
            /etc/profile
        2、用户级(只针对于特定的用户有效)
            /home/user/(用户的家目录下)
           ~/.bashrc


  • 相关阅读:
    CSP2020 游记
    React中useLayoutEffect和useEffect的区别
    Vue前后端分离跨域踩坑
    Python 正则将link 和 script 处理为 Django static形式
    BootStrap4
    单例模式
    匈牙利算法——求二部图的最大匹配的匹配数
    抽象工厂模式
    工厂方法模式
    JDK配置步骤
  • 原文地址:https://www.cnblogs.com/mcmx/p/11246962.html
Copyright © 2011-2022 走看看