zoukankan      html  css  js  c++  java
  • 该怎么开始学习Linux?

    ** 1. linux常用命令**

    首先给大家介绍一个比较重要的一个命令。这个命令类似于各种语言的print ,用于回显关键的数据。

    echo hello world
    

    ** 2.Linux的命令分类**

    Linux所有的东西都理解成文件。类似于进程、网络等都是文件的不同表现形式。在Linux的世界里,命令分成以下三大类:

    - 文件:everything is file

    - 进程:文件的运行形态

    - 网络:特殊的文件

    接下来就针对以下这三类,做一个详细的解说。帮助初学者更好的理解Linux
    ,进行Linux学习。Linux是一个非常实用的工具,不管是做数据分析还是查看log,学会Linux让你事半功倍。想系统学习的测试小伙伴,也可以在文章末尾点击「阅读原文」进行系统性的提升

    ** 3. 文件类**

    1. 磁盘与目录

    ls:在Linux下输入ls,即可列举出来你的当前目录下的所有的文件和目录 。当前列出的是根目录下的所有文件

    cd:在Linux下,cd + 目录名称,可以进入到相应的目录。cd不加参数时,默认回到主目录,经常使用的cd命令还有:

    • cd .. 返回上级目录

    • cd ../.. 返回上两级目录

    • cd ~ 进入用户主目录 home 目录

    mkdir:创建一个新的目录 例如:mkdir demo

    df:它会打印出当前磁盘的使用情况,磁盘的大小,使用了多少,可用多少,以及挂载点。

    这些命令的详细用法都可以通过 man 来查看,man 函数可以用来查看帮助文档,相当于Linux里自带的--help 函数。

    例如:man df

    文件编辑

    vi:在Linux上创建一个文件只有一个工具,vi或者vim,两者的区别并不大, vi demo.txt
    回车就进入到一个交互式的界面。刚一进去是命令模式,要对文件进行修改就要先输入一个a或者i,a是在当前字符后输入内容,i是在当前字符前输入内容。要退出编辑模式要按Esc。在命令行模式下按":"是表示要输入一个具体的命令,w是保存
    q是退出 q!是强制退出

    文件权限

    打开目录之后就能看到各类文件了。那么想查看文件权限就需要用 ls -l 可查看文件的读写执行权限。

    例如:

    这里的 drwxrwxr-x 十个字母,第一个字母表示文件的类型,第一组 rwx
    表示当前用户的权限,第二组表示同组的权限,第三组表示不属于当前用户当前组的表示非同组的权限,他们分别对应简写u、g、o。这里的 -
    是表示没有对应的权限的意思。

    这里简单的总结一下:

    • u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。u用户 g组 o其它 a 所有用户(默认)

    • + 表示增加权限、- 表示取消权限、= 表示唯一设定权限。

    • r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

    1. 修改权限chmod

    例如:chmod o+w <文件>

    另外用数字来表示权限位

    chmod abc file
    

    其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

    - 若要rwx属性则4+2+1=7;

    - 若要rw-属性则4+2=6;

    - 若要r-x属性则4+1=5;

    所以,如果需要将一个文件添加读、写、执行的权限,下面的两种权限的写法可以达到相同的效果

    chmod a=rwx file
    
    chmod 777 file
    

    而下图用了一个例子来给大家演示chmod的具体用法。 原始文件里具有读、写、执行的权限。用 chmod a=rw an.jmx
    命令修改权限后,该文件只有读、写权限,没有了执行权限

    2. 修改归属组chgrp

    在Linux的世界里,文件或目录权限的掌控是通过拥有者及所属群组来管理的。我们可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码。

    使用方法:chgrp <选项> <组名> <文件>

    chgrp nobody demo
    
    修改前:drwxr-xr-x   3 xxxxxx  staff       96  3  6 22:53 demo修改后:drwxr-xr-x   3 xxxxxx  nobody       96  3  6 22:53 demo
    

    可以看的到,使用了chgrp命令后,demo文件从原来的组名staff改为了nobody的组名。如果不是相同的组,需要使用root权限哦!

    3. 修改所属人chown:

    他可以修改当前用户也可以修改当前组

    使用方法:chown <文件所属组>:<群体使用者> <文件>

    例如:

    chown nobody:wheel demo drwxr-xr-x   3 nobody    wheel       96  3  6 22:53 demo
    

    就是把demo这个目录从原来的用户改为nobody ,所属组从原来的staff 改为了wheel组。

    文件查找及查看

    find:find比较常用的方法是find ~ -name "*.log" ,
    ~表示当前用户的主目录,-name表示指定要找的文件名字,他支持正则表达式。-maxdepth 2表示显示目录层级,后面的“2”表示显示两层目录。

    例如:

    find ~ -name docker -maxdepth 3/Users/anlinger/docker
    

    此条命令就是查找home目录下名字叫docker且目录层级为3级的文件件。

    cat:可以打开文件并显示文件中所有的内容

    more:more的功能类似于cat 。cat 是将所有的文件内容都显示出来,而more打开文件之后,可以通过空格进行翻页,方便阅读。

    使用方法是:进入目录后 + more <文件名>

    ➜  apache-tomcat-8.5.50 more RUNNING.txt
    

    less:他可以翻页,上下左右都可以滚动,翻到上一页按“b”返回上一页,按“q”退出。搜索用 / 后面加要搜索的内容。

    使用方法:进入目录后 + less <文件名>

    ➜  apache-tomcat-8.5.50 less RUNNING.txt
    

    创建特殊文件

    软链:相当于创建一个快捷方式。语法为:ln -s <文件名> <创建软链名>
    -s表示创建软链,an.jmx是目标文件。Desktop/an.jmx是在桌面上创建了一个叫 an.jmx
    快捷方式文件。这里必须要注意的是:原路径必须要使用绝对路径,软链接可以是相对路径

     ln -s ~/an.jmx Desktop/an.jmx
    

    ** 4. 进程类**

    如果想查看系统进程,那top、ps这两个命令就可以大显身手了哈~

    top命令

    它展示的是一个持续的交互式的界面。相当于windows下的资源管理器。可以实时动态的显示系统中进程的资源占用情况

    ps命令

    它不像top那样,他是一个静态的。ps aux 它显示的页面和top显示的类似。类似的是ps -ef

    使用ps命令,可以显示瞬间进程的动态。如下显示:


      PID TTY           TIME CMD50979 ttys000    0:00.28 login -pf anlinger51213 ttys000    0:00.05 sudo -s51214 ttys000    0:06.50 /bin/zsh53227 ttys000    0:00.00 ps
    

    ps aux与 ps -ef 都可以显示所有包含其他使用者的进程,两者输出略有不同。现在的大部分Linux系统都是可以同时使用这两种方式的。


    USER               PID  %CPU %MEM      VSZ    RSS   TT  STAT STARTED      TIME COMMANDxxxxxx           713  12.5  0.0  6595152   8264   ??  S    三09上午 751:17.07 com.docker.hyperxxxxxx           574   3.7  0.1  4789484  25084   ??  S    三09上午 129:31.25 /Applications/Utxxxxxx        27331   3.4  0.5  5274300  86484   ??  S    五04下午   3:23.03 /System/Applicat
    

    ** 5. 网络类**

    netstat在不同系统有不同的命令,Mac和Linux还是有区别的。可使用:netstat -tlnp

    -tlnp 这个参数会列举出你的机器当前开放的端口,‘t’是列举出tcp协议的端口,‘l’是列举出正在开放的端口,‘n’只列举出数字地址,‘p’打印开启端口的程序名称

    Mac与Linux是不一致的。在mac下使用 netstat -p tcp -n -a 命令,可正常查看。如下图。

    ** _6.
    来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力
    QQ交流群:484590337
    公众号 TestingStudio
    点击获取更多信息

  • 相关阅读:
    网页色彩搭配
    jquery富文本在线编辑器UEditor
    编写、部署、应用JavaBean
    图片存储构架学习
    JVM内存管理(一)
    同步or异步
    分库分表策略的可实现架构
    百万数据查询优化技巧三十则
    匿名内部类
    MySQL limit分页查询优化写法
  • 原文地址:https://www.cnblogs.com/hogwarts/p/15822759.html
Copyright © 2011-2022 走看看