• 第四周博客之一---Linux的基本命令(前5个)


    一、Linux的系统结构

     

    "/"根目录部分有以下子目录:

    1./bin:系统启动时需要的执行文件(二进制),这些文件可以被普通用户使用。

    2./boot:用于自举加载程序(LILO或GRUB)的文件。当计算机启动时(如果有多个操作系统,有可能允许你选择启动哪一个操作系统),这些文件首先被装在。这个目录也会包含LINUX核(压缩文件vmlinuz),但LINUX核也可以存在别处,只要配置LILO并且LILO知道LINUX核在哪儿。

    3./dev:设备文件目录。LINUX下设备被当成文件,这样一来硬件被抽象化,便于读写、网络共享以及需要临时装载到文件系统中。正常情况下,设备会有一个独立的子目录。这些设备的内容会出现在独立的子目录下。LINUX没有所谓的驱动符。

    4./sbin:系统执行文件(二进制),这些文件不打算被普通用户使用。(普通用户仍然可以使用它们,但要指定目录。)

    5./user目录包含所有的命令、程序库、文档和其他文件。这些文件在正常操作中不会被改变的。这个,目录也包含你的Linux发行版本的主要的应用程序,譬如,Netscape。

    6./var目录包含在正常操作中被改变的文件:假脱机文件、记录文件、枷锁文件、临时文件和页格式化文件等。

    7./root:系统管理员(也叫超级用户或根用户)的Home目录。

    8./opt:可选的应用程序,譬如,REDHAT5.3下的KDE(REDHAT6.0下,KDE放在其他的XWINDOWS应用程序中,主执行程序在/user/bin目录下)

    9./lost+found在文件系统修复时恢复的文件。

    界面切换操作:

    1.按【向上箭头】和【向下箭头】键可以滚动以前使用过的命令键入了文件名、命令、或路径名的一部分,然后按【Tab】键,会把文件或路径名的剩

    余部分补全

    2.图形与文本界面切换

    图形切换到文本界面(命令行界面):ctrl+alt+f4

    文本界面(命令行界面)切换到图形:alt+f7

    .:代表此层目录

    ..:代表上层,目录

    cd:改变目录,如cd/home,表示由当前目录进入home目录。

    pwd:显示目前的目录。

    乱码:/etc/profile中添加export LC_ALL=zh_CN.GBK

    注销-重启-关机

    1.注销(文本模式)

    [root@localhost root]#logout注销系统(锁定界面)

    2.重启 rebot

    [root@localhost root]#reboot重启系统

    3.关机 shutdown

    [root@localhost root]#shutdown now 立刻关机

    [root@localhost root]#shutdown+5 5分钟后关机

    [root@localhost root]#shutdown10:30:在10:30时关机

    [root@localhost root]#shutdown -r now:立刻关闭系统并重启

    [root@localhost root]#shutdown -r 23:59:指定在23:59时重启动

    Linux的基本命令

    二、基本命令有10

    包括:目录管理、文件操作、文件查看命令、用户管理、权限管理、系统设置命令、磁盘管理命令、网络通信命令、备份压缩、通用命令

    1、目录管理

    ls    查看文件目录信息

    mkdir   创建目录

    mkdir   test(目录名)

    rmdir   删除空目录

    rmdir   test(空目录名)

    mv命令    

    重命名

    mv test1(原文件名)    test2(新文件名)

    移动文件

    mv test(文件名)    目标绝对路径

    注意:mv重命名功能时后面对象仅能是对象名,如果有路径将实现移动功能。

    2、文件操作

    2.1、touch      新建空文件

    touch   test.txt(文件名)

    2.2、vi命令

    vi    test.txt(文件名):打开或新建文件,并将光标置于第一行首

    vi    +n  test.txt(文件名):打开文件,并将光标置于第n行首

    vi    +     test.txt(文件名):打开文件,并将光标置于最后一行首

    vi    +n  test.txt(文件名):打开文件,并将光标置于第n行首

    vi    test1.txt     test2.txt….. :打开多个文件,依次编辑,编辑时在末行模式下输入(:n)代表编辑下一个文件,输入(:N)代表编辑上一个文件

    vi命令有三种模式,关系图如下:

     

    vi移动光标类命令 (命令行下)

    •h:光标左移一个字符

    •l:光标右移一个字符

    •space:光标右移一个字符

    •Backspace:光标左移一个字符

    •k或Ctrl+p:光标上移一行

    •j或Ctrl+n:光标下移一行

    •Enter:光标下移一行

    •w或W:光标右移一个字至字首

    •b或B:光标左移一个字至字首

    •e或E:光标右移一个字至字尾

    •nG:光标移至第n行首, 文件首行(1G)

    •H:光标移至屏幕顶行

    •M:光标移至屏幕中间行

    •L:光标移至屏幕最后行

    •0:(注意是数字零)光标移至当前行首或者( ^ )

    •$:光标移至当前行尾

    •G: 光标移至文件的最后一行行首

    •:0 光标移至文件首行

    •显示行号 :set nu (末行模式)

    vi插入文本类命令(在查看模式下输入)

    •i:在光标前

    •I:在当前行首

    •a:光标后

    •A:在当前行尾

    •o:在当前行之下新开一行

    •O:在当前行之上新开一行

    vi保存退出命令

    :q :退出vi

    :wq :保存并退出vi

    :w :保存编辑内容

    :q! :强制退出

    :wq! :强制保存并退出vi

    vi复制粘贴(命令模式下)

    • yy复制一行

    •p 粘贴

    • [n]yy复制n行

    •p 粘贴

    vi剪切与删除(命令模式下)

    •dd删除一行

    •ndd删除光标行的后n行

    •p粘贴上面的内容

    vi搜索命令(命令模式下,输入/后面搜索的内容)

    •按 n 向后搜索

    •按 N 向前搜索

    vi替换命令(末行模式下)

    •:%(整个文件内容)s/源(准备替换的字符)/目标替换(要替换成什么字符)/g(全局替换)

    vi撤销命令(命令模式下)

                  •u撤销至上一步

                  •crtl + r恢复至上一步撤销

    vi其他命令

                  •set      nu!(末行模式下)             显示行号

                  •file(末行模式下)              显示当前文件名

    2.3、cp命令

    将源文件复制至某处

    cp   -r    test1(源文件目录)  test2(目标文件目录)

    cp   test1/test.txt(源文件)       test2/…(目标目录)

    2.4、mv命令

    将源文件剪切至某处

    mv test1(源文件)      test2(目标目录)

    2.5、rm命令

    删除文件或目录

    rm  -rf      test.txt强制删除文件或目录,没有友好提示

    rm  -i  删除文件或目录时会有提示            

    2.6、wc命令

    打印文件中的字符行数、字节数、单词个数等

    wc  filename         查看文件的行数、字符总数、文字总数

    • -c, --bytes:统计字节数

    wc  -c filename         统计该文件的字节数

    • -m, --chars:统计字符数(同上)

    • -l, --lines: 统计行数(同上)

    • -L, --max-line-length:打印最长行的长度(同上)

    • -w, --words: 统计字数(由空白、等分隔)

    2.7、sort命令

    将文本文件内容加以排序

    sort  filename   将文件排序

    sort  -r  filename  将文件按倒序排序

    2.8、find命令

    目录结构中搜索文件,并执行指定的操作

    find  /etc/(文件路径)  -name(参数)  filename(文件名)

    find  -name  filename  按照文件名查找文件

    find  -name  “* [A-Z].txt”  查找文件名含有[A-Z]的文件,*代表通配

    find  -perm  filename  按照文件权限来查找文件

    find  -perm   755   查找755权限的文件

    find  -user  filename  按照文件属性来查找文件

    find  -group  filename  按照文件所属的组来查找文件

    find  -type  [d(目录)]  [l(软链接)]  [f(文件)]  filename   查找某一类型的文件

    find  /  -type  d  -name   ‘*log’  查找log类型的目录

    find  -size  +(-)10   查找长度大于(小于)10块的文件(1块=512字节)

    注意:可以指定目录查询

    2.9、grep命令

    用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设grep指令会把含有范本样式的那一列显示出来

    grep  要过滤的字符  要过滤的文件

    Grep命令:

    -c:只输出匹配行的计数。

    grep  -c  A  filename  输出该文件中包含A字符的总数

    -i:不区分大小写

    grep  -i  A  filename  输出与关键字符A的匹配行,不区分大小写

    -h:查询多文件时不显示文件名。

    -l:查询多文件时只输出包含匹配字符的文件名。

    Grep  -l  A  te**  查找关键字A的文件名前缀名有te开头的文件

    -n:显示匹配行及行号。

    grep  -n  A  filename  输出与关键字符A的匹配行,并显示行号

    -s:不显示不存在或无匹配文本的错误信息。

    -v:显示不包含匹配文本的所有行。

    grep  -r  aaa   file  搜索file目录下所有文件中是否包含aaa这个字符串

    3、文本查看命令

    3.1、cat命令

    显示文件内容,并且支持将多个文件串连后输出

    cat  -n  test.txt          对文件所有输出进行编号

    cat  -b  test.txt          对文件所有输出进行编号,但空白行不编号

    cat  filename1  filename2  filename3…   同时显示多个文

    3.2、head命令   

    输出文件最前面的几行数据

    head  -3(可变)  filename     显示该文件的前三行(可变)的数据

    3.3、more命令

    分页显示文件内容 (一页一页地显示,仅只能向前)

    more  +3  -2  filename       显示从第2行开始,每页显示3行数据

    •-num:每页显示多少行内容

    •+num:从多少行开始显示

    3.4、less命令

    分页浏览 (可以向前翻页与可以向后翻页)

    less  test.txt    显示文件内容

    下翻页 d , 上翻页u,退出是q

    3.5、tail命令

    命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.

    •-f 循环读取

    tail  -f  filename  循环读取文件

    •-n<行数> 显示行数

    tail  -n  n  filename       打印输入最后n行的内容

    tail  -f  -n  n  filename  循环打印最后n行的内容

    •-c<数目> 显示的字节数

    4、用户管理(在home目录下操作)

    4.1、useradd = adduser

    建立用户帐号

    useradd  参数  新建的用户名

    -c   <备注> 加上备注文字。备注会保存在passwd备注栏位中

    useradd  -c  (备注)  user  新建user用户并添加备注

    -d   <登入目录> 指定用户登入时的启始目录。

    -e  <有效期限> 指定帐号的有效期限。时间格式:yyyy-mm-dd

    -g  <群组> 指定用户所属的群组。

    -r   建立系统帐号。

    -s  <shell> 指定用户登入后所使用的shell。

    -u  <uid> 指定用户ID

    useradd  -u  766(指定的uid)  user  新建user用户并指定UID

    -p(password)   加密型密码,查看使用 tail -l /etc/shadow(谨慎使用)

    id  user  查看用户

    4.2、passwd

    passwd  user  为用户user添加密码

    passwd文件介绍

     

           1       2    3    4               5                                      6                 7

    •1: 登录名

    •2: 口令 (密码)

    •3: 用户标识号(UID)

    •4: 组织标识

    •5: 用户名 用-c创建内容

    •6: 用户主目录

    •7: 命令解释程序 如/bin/bash 用户登录系统时运行的程序

    tail  -l  /etc/shadow   查看加密后的用户账号和密码使用

    4.3、usermod

    修改用户帐号

    usermod   -参数   user

    -c  <备注> 修改用户帐号的备注文字。

    -d  <登入目录> 修改用户登入时的目录。

    -e  <有效期限> 修改帐号的有效期限,格式:YYYY-MM-DD

    -g  <群组> 修改用户所属的群组。

    usermod  -g  root  user  将user用户所属组改为(root创建user用户时该用户默认组是user)

    -L  锁定用户密码,使密码无效。

    -s  <shell> 修改用户登入后所使用的shell。

    -u  <uid> 修改用户ID。

    -U  解除密码锁定。

    4.4、userdel

    删除用户帐号

    userdel   [-r]  user  userdel可删除用户帐号与相关的文件。若不加参数,则仅删除用户帐号,而不删除相关文件

    -r   删除用户及其home目录

    userdel   -r   user  删除user及其主目录

    4.5、groupadd

    建立用户组

    -g   gid:指定组ID号

    -r: 创建系统用户组,低于499系统账号

    groupadd  -g  123  userg  添加userg用户组,并指定gid为123

    cat  /etc/group  |  grep  ‘userg’ 查看用户组

    4.6、groupmod

    更改群组识别码或名称

    groupmod  [-g <群组识别码> <-o>] [-n <新群组名称>] [群组名称]

    -g   <群组识别码> 设置欲使用的群组识别码

    -n   <新群组名称> 设置欲使用的新的群组名称

    groupmod  -n  userg1  userg2  将userg2用户组的组名改为userg1

    4.7、groupdel

    删除群组

    groupdel  userg

    注意:需要从系统上删除群组时,可用groupdel指令来完成这项工作。倘若该群组中仍包括某些用户,则必须先删除这些用户后,方能删除群组

    groupdel  userg   删除userg用户组

    5、权限管理

    5.1、ls  -l

    Linux中将文件的权限分为只读、可写、执行三种,分别以r(read)、w(write)、x(execute)表示

     

    •1、表示文件的类型,“d”表示该文件为目录,也就是通常意义的文件夹,“-”表示该文件是一般文件,“l”表示该文件为一个软链接,也就是通常意义的快捷方式。

    •2、表示文件所有者u的权限,其中r为读权限,w为写权限,x为执行权限,

    •3、表示文件所属组g的权限,r,w,x含义同上。

    •4、表示其他人o对该文件拥有的权限,r,w,x含义同上。

    •5、表示(硬)连接数;

    •6、表示文件拥有者;

    •7、表示文件所属组;

    •8、表示文件的大小;

    •9、表示文件创建日期&最后修改日期;

    •10、文件名称

    5.2、chmod

    改变文件或目录的访问权限

    chmod   [-R]   权限  文件名

    chmod  467  filename   修改该文件的权限

    也可以使用下列方法为用户设定指定权限

    •+:添加权限(w、r、x)

    •-:删除权限(w、r、x)

    •u:文件拥有者 g:文件所属组 o:其他人 a:所有人

    •[root@localhost]$ chmod u+x *

    •[root@localhost]$ chmod g+rx *

    •[root@localhost]$ chmod a-r *

    5.3、chown

    修改文件所有者和所属组

    chown  [-R]  权限  文件名

    -R 递归修改目录以及其子目录下的所有文件

    修改文件的用户及用户组

     

     

    5.4、chgrp

    修改文件所属用户组

    chgrp   [-R]  组名  文件名

    -R  递归修改

     

    5.5、diff

    比较两个文件之间的不同

    diff   [options]  from  -file  to  -file

    diff  test1  test2  比较test1和test2文件的不同

     

    diff -u test1 test2 (合并格式)

    •"---"表示变动前的文件,"+++"表示变动后的文件。

    •第二部分,变动的位置用两个@作为起首和结束。

    diff -c test1 test2 (上下文格式)

    •“+” 比较的文件的后者比前着多一行

    •“-” 比较的文件的后者比前着少一行

    •“!” 比较的文件两者有差别的行

  • 相关阅读:
    mysql存储过程
    命令简写 ~/.bash_aliases
    TestCafe 快速上手 (三)
    TestCafe 快速上手 (二)
    OWASP 文档
    读书笔记
    读书笔记
    类数组转化为真正的数组
    Vue子组件向父组件传递数据
    node.js取参四种方法req.body,req.params,req.param,req.body
  • 原文地址:https://www.cnblogs.com/zouyaoyao/p/8727812.html
Copyright © 2020-2023  润新知