zoukankan      html  css  js  c++  java
  • Linux常用操作(基于Centos7)

    一:Linux的登录

    打开终端,输入登录用户和密码即可完成登录。Linux的超级管理员用户是root,密码不会回显。如果登录的是root账号则命令窗口会显示#,如果是普通账户登录,则显示$
    如果需要切换到root账户,可使用 su root进行切换,需要输入密码。理论上我们使用Linux应该使用普通账号登录,因为安全。为了方便,我们会选择使用root账户。

    二:网络连接

    1. 通过客户端远程连接Linux

    1.1 Linux客户端工具

    我们通常使用的Linux客户端工具有SecureCRT、Xshell,可以通过客户端工具远程操作Linux。但是远程工具只提供了字符界面,通过命令来操作Linux。
    我们的SecureCRT和Xshell远程连接所采用协议主要有:SSH或telnet协议。

    1.2 创建远程连接

    创建远程连接需要提供的内容有:主机IP、端口、用户名和密码。用户名有自建的用户名和系统管理(root),如果登录成功。自建用户(普通用户)其终端会出现$,如果是root用户则会在终端出现#

    2. 网络相关内容

    2.1 查看Linux IP地址:

    在终端输入 ifconfig 可以查看到其IP地址,如果输入的是ifconfig -a则会显示IP地址的详情。我们的IP地址会在 inet addr: xxx.xxx.xxx.xx 这个位置显示
    但查看结果如果出现127.0.0.1则表示Linux没有正确配置ip地址,则需要配置ip地址。
    如果虚拟使用的是桥接模式则会出现192.168.1.x网址,如果是NAT模块,则会出现192.168.xx.xxx的网址。否则就是错误的IP地址,需要重新配置IP地址。

    2.2 更换IP地址

    配置ip地址有两种,一种是设置固定ip,一种是设置自动获取ip地址。为了简单,一般会选择设置自动IP地址,设置自动IP的命令为:dhclient
    如果输入dhclient,提示dhclient(1551) is already running,则关闭这个进程方可启动dhclient,其操作为:kill -9 1551 其中1551是dhclient这个进程的编号
    再次使用ifconfig便可获取到由系统生成的ip地址,如果是192.168.xx.xxx则表示成功获取了ip地址。

    2.3 关于桥接模式和NAT模式

    桥接模式是由网关来分配IP地址,其分配的IP地址和物理机的IP地址是同一网段(即IP前三段相同)。NAT模式是由物理机给虚拟机分配IP,所以会出现IP地址前两段相同后两不同的情况。

    2.4 检查网络连通性

    ping命令的原理是本机往目标电脑扔一个网络数据包,如果目标电脑能接收到这个数据包则会返回一个对应的网络数据包。如果我能看到对应的网络数据包,我就知道网络的连通情况。

    三:Linux基本操作

    1. 文件和文件夹操作

    1.1 Linux文件系统说明


    在Linux系统会有如下的目录:

    • bin:是Linux中的可执行文件所在目录,一般Linux命令文件在此目录中。除此还有一个sbin,这是系统级的可执行文件所在目录。
    • boot:Linux的启动文件都在该目录下,相当于windows中的c:windows目录
    • dev:是设备文件,在Linux中所有的硬件设备在操作系统层面是以文件的方式进行管理的。
    • home:每一个Linux普通用户都会在home目录下创建一个自己用户名命名的文件夹。一般用户文件都会默认存储在home目录下。如果是root账户其以自己名称命名的文件夹在根目录下,即/root。我们可以使用 cd ~ 切换到home目录
    • lib:是第三方扩展文件
    • mnt:相当于光盘驱动器
    • opt:操作文件,一般也是用来放置一些需要被操作的文件,这里对文件没有特殊要求。
    • proc:是一些进程数据信息,进程数据信息理论上可以查看也可以修改
    • usr:Linux中很多软件安装之后,会在该目录下。即软件默认安装在usr目录下
    • var:是软件的一些文件,包含配置文件等信息。

    1.2 Linux的几个基本操作

    ls操作

    我们输入ls可以显示当前目录的文件和文件夹,但是我们展示效果不明显,可以使用 ls -l进行显示,效果会更好。ls -l操作我们会用得特别多,在Linux中使用了 ll 这个命令来简化ls -l操作。下列显示了当前文件下的详细信息,第1位表示文件属性如果第1位是-表示普通文件,如果是 d 表示目录,如果是 l 表示快捷方式

    平时我们用得特别多提ls -alt用来按时间倒序排序显示这个文件夹下所有的信息。也可以使用ll这个命令来替代ls -l

    cd 操作

    cd是切换工作目录的操作,其命令为: cd 目录名称 要求当前工作目录有这个目录名称。
    已知当前目录下有Desktop这个目录,要切换到这个目录下来可使用:cd Desktop即可。
    如果我们要切换到home目录,在当前目录下是没有的,所以我们切换不过去。这时候我们要使用绝对路径,已知home的绝对路径为: /home 所以可以使用cd /home来实现。注意:第一个 / 是根目录,所以一定要注意。
    我们可以通过cd ..回到上一级目录,可以使用cd /回到根目录,可以使用cd ~回到该用户的home目录,可以使用cd -回到上一次的工作目录。

    pwd操作

    可以使用pwd操作来查看当前工作目录在哪里,直接输入pwd即可。print work directory打印当前工作路径
    当前显示/root表示在根节点的root目录下,第1个/表示根目标,后面的/都表示分隔符。
    先查看当前工作路径在哪里,再查看当前目录有哪些文件和文件夹
    分别使用cd操作,检查都cd到哪里去了,那些目录都有哪些文件。

    clear清屏

    输入clear,可以清除屏幕上的文字,让光标回到第1行。

    1.3 目录管理

    mkdir创建目录

    该命令是make dir即为创建目录,创建目录的命令为: mkdir 目录名称
    小练习:在/home目录下创建一个administrator的目录,在这个目录创建test1和test2两个目录。

    rmdir删除目录

    rmdir是删除目录的意思,但是只能删除空目录。其命令为:rmdir 目录名称

    1.4 文件操作

    touch创建文件

    mkdir只能创建目录,touch只能创建文件。创建文件命令为:touch 文件名.扩展名
    小练习:分别在test1和test2中创建file和file.txt两个文件

    rm删除文件

    rm是删除文件的操作,同时也能够删除文件夹。其操作为:rm 文件名称 。其有三个参数分别是: i(询问) r(递归) f(强制),如果是rm -i 文件名称 则表示会让用户确认是否删除。 如果是rm -rf 文件名称 则表示不会让用户确认,同时喜欢用这个操作来完成对目录的删除。

    cp 拷贝文件

    cp是copy拷贝文件的意思,拷贝文件是指将一个文件拷贝到另外一个目录下。所以其操作为cp 源文件 目标位置
    这时候我们可以实现将administrator的test1目录中的内容拷贝到/root下。如果使用提cp test1 /root是无法拷贝test1中的内容,会略过目录。解决方案可以是cp test1/* /root是可以完成的。也可以使用-r参数实现递归,即把test1中的所有文件和文件夹都拷贝过去。

    mv移动、重命名

    mv和cp是差不多的,只是有是否保存源文件的区别。所以mv是移动操作,其操作为:mv 源文件 目标位置,完成的是剪切操作。但是mv也有重命名操作,命令为:mv 文件名 新文件名
    小练习:将file文件重命名为:file.log

    find查找文件

    find是在文件夹中查找文件,其最常用的语法为:find / -type f -name 文件名
    find后面直接跟文件路径,即在哪里开始进行查找。-type表示查找的文件类型,如果是f表示普通文件,如果是d表示文件夹,也可以查找快捷方式(l)。但到的是文件的绝对路径。
    小练习:在Linux中查找stdio.h文件,并把这个文件复制到/home目录下。

    ln软连接和硬连接

    Linux的软连接相当于快捷方式,可以通过ln -s 文件 另一个目录/文件名 的方式创建软连接,我们在另一个目录会得到此文件的快捷方式,因为可以正常操作这个文件。

    1.5 文件查看

    cat查看文件

    cat是查看文件全部内容,其命令为:cat 文件名 。但是我们也可以在显示全部内容的时候,同时显示行号,其命令为:cat -n 文件名。

    wc字符统计

    wc是字符统计操作,统计某个文件有多少行、多少个单词、多少个字符。其操作为:wc 文件名,它有很多参数,但没有参数是最全的。

    more和less分页显示

    more和less都可以进行分页显示文件内容,more和less的操作基本相似:more 文件名 或 less 文件名 。会分页显示内容,要翻到下一页可以是回车和空格,要退出可以是:q ctrl+c或esc中的某一个。

    head显示文件头

    head显示文件的前面若干行内容,如果只要显示一部分内容并且是文件最前面,用head是最合适的。其操作为:head -num 文件名,其中num为任意数字。例如要查看文件的前30行内容,则为:head -30 stdio.h

    tail 显示文件尾

    tail是显示文件末尾若干行内容,其操作为:tail -num 文件名,num也为任意数字。例如要查看最后50行内容,则为:tail -50 stdio.h

    查看文件中间

    查看文件中间没有一个专门的命令,由head和tail组合使用来完成。例如查看文件第30到50行内容,其操作为先显示前50行内容,再从这中间显示后20行内容即为中间30-50行内容。其操作为:head -50 stdio.h | tail -20 ,用 | 管道符来组合我们的操作。
    小练习:查看文件末尾50行,同时显示行号。

    grep命令

    是在文件中查找指定内容,如果某行包含指定内容,则显示整行。其命令为:grep 关键字 文件名。例如在stdio.h中查询带include关键字的行。如果同时要显示行号,可以grep -n 关键字 文件名 即可。
    grep可以与其他命令组合使用,例如要查看ip地址,可以组合到grep。用ifconfig查到所有内容,然后再用grep显示带关键字的行。参考命令:ifconfig | grep "192"

    2. 权限及用户操作

    2.1 关于用户操作

    useradd创建用户

    可以使用useradd来创建用户,其命令为:useradd 用户名即可。但是只能在root用户下进行创建,其他用户没有此权限。

    passwd更改密码

    使用passwd更改用户密码,其命令为:passwd 用户名,回车后输入密码即可,密码不会在终端显示。

    su切换用户

    使用su可以切换用户,其命令为:su 用户名即可切换用户。切换用户之后可能需要输入密码。如果是su - root,多加一个 - 是同时更改环境变量。

    userdel删除用户

    其命令为:userdel 用户名

    2.2 权限相关命令

    chown命令

    chown修改文件拥有者,我们通过ls -l命令可以查看到这个文件的所有者和所属组,可以通过chown修改文件的所有者。其操作为chown 用户 文件 例如:chown qianli stdio.h

    chmod修改权限

    通过ls -l命令查看文件信息,会得到如下显示:

    第一段总十位,其中2-10位表示文件的权限,权限是每3位一段,共3段。每段表示拥有的权限分别为:rwx即读写执行,第一段表示文件所有者的权限user(一般最大),第二段表示文件所属组group的权限,第三段表示其他用户other权限(一般最小)
    修改权限的命令为:chmod +权限 文件 或chmod -权限 文件 ,例如要给stdio.h文件增加执行权限,则操作为:chmod ug+x stdio.h,想弄到rwxr-xr--权限,如何操作?在Linux中允许使用数字来表示权限,chmod 754 stdio.h,最大权限是:777
    我们也可以将一个文件下所有文件的权限设置为某个:chmod -R 777 www,使用大写R做递归操作,表示将文件夹所有文件进行权限设置。

    3. vi文件编辑

    vi是对Linux中的文件进行编辑操作,相当于Windows中的记事本。它的操作包含4个部分:

    用vi打开文件

    用vi打开文件,其操作为:vi 文件名称,注意文件名称必须为文件的全称,即带扩展名的,否则会创建一个新文件,vi也不能够编辑一个目录。

    用vi修改文件内容

    vi编辑器不能直接修改文件内容,要修改需要先输入: i I a A的任意一个字符,可进入到Insert模式,在Insert模式下可以做出编辑行为。

    退出vi编辑器

    要退出之前,先按ESC键确保vi不在INSERT模式,再按 :wq 保存退出,:不可少。w是写入,q是退出,!保存强制行为。

    vi的编辑操作:

    可以通过一些快捷操作完成,整行拷贝、整行删除、查找文件内容、撤销等操作。
    注:copy拷贝 paste粘贴 delete删除 word单词 undo撤销 next下一个

    • 如果进行整行拷贝,先退出INSERT模式,再输入yy,再输入p会在光标下粘贴内容。
    • 如果要删除整行内容,则输入dd即可整行删除。也可以输入dw删除一个单词。
    • 如果要撤销操作:则输入u
    • 如果要查找,输入 /要查询的内容 即可进行查找,输入n查找下一个
      如果要找上一个shift+n或N,如果是要从下往上查找,可以输入shift+/
    • 在vi中可以直接跳转至某行,输入numG,num为任意数字例如:5G
    • 在vi中可以显示行号,输入:set nu,如果不要显示行号,输入:set nonu
      在/var/www/html目录下创建一个test.html文件,然后再写一段内容,保存后退出。
    <html>
        <head>
            <title> this is title</title>
        </head>
        <body>
            <h1>hello world</h1><br/>
            <maquee>china hunan changsha luguqiye squ</marquee>
        </body>
    </html>
    

    四:Linux下软件安装和运行

    搭建测试环境就是在Linux系统中安装一个软件,并且运行起来。在Linux中的软件类型rpm程序等可执行文件和压缩文件。
    Linux中的文件来源,还可以上传文件。上传文件可以通过FTP工具上传,也可以通过rz命令来完成。

    4.1 Linux中的可执行文件

    rpm是Linux中常见的一种可执行文件,其可以通过rpm进行安装、卸载、升级等操作。

    • rpm的安装命令为:rpm -ivh xx.rpm(软件名)
    • rpm的卸载命令为:rpm -e xx(应用程序名)
    • 查看应用程序:rpm -qa|grep 关键字

    4.2 Linux中的压缩文件

    在Linux中还有一种通过解压缩的软件,解压缩后只需要进行编译就可运行。通常这种软件都会能tar.gz的方式进行压缩。

    tar.gz文件

    我们需要解压缩tar.gz文件,tar.gz文件的解压缩方式为:tar -zxvf xx.tar.gz 。

    • z是解决gz文件类型的
    • x是extract解压缩的意思,
    • v是view,在可视模式下执行
    • f是format,使用默认格式

    zip文件

    我们如果涉及到解压缩zip文件的方法是:unzip xx.zip即可。

    源文件编译

    编译安装需要经历3步分别是:./configure配置,和make编译以及make install安装

    crontab定时任务

    可以在Linux中创建定时任务,让Linux自动执行。我们可以使用crontab -e来编辑定时任务,可以通过crontab -l来查看定时任务。编写语法是:
    * * * * * 要执行的文件,注一般为.sh文件
    我们先在/home目录创建一个hello.sh文件,里面的内容为:

    cd /home
    ls -l >> a.txt
    

    将其保存,并设置shell.sh文件拥有可执行权限。接下来使用crontab -e来编辑定时任务,定时任务中如下表达: * * * * * /home/hello.sh,再:wq保存退出即可。此时hello.sh文件会每分每时每日每月每周运行一次。
    定时任务的核心就是这五颗星,我们可以设置各种特色任务。例如:每5分钟执行一次,周一到周五运行,每日1号运行都可以。

    • 星号(*):代表所有可能的值,如month字段为星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。
    • 逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”
    • 中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”
    • 正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。
  • 相关阅读:
    node.js 安装后怎么打开 node.js 命令框
    thinkPHP5 where多条件查询
    网站title中的图标
    第一次写博客
    Solution to copy paste not working in Remote Desktop
    The operation could not be completed. (Microsoft.Dynamics.BusinessConnectorNet)
    The package failed to load due to error 0xC0011008
    VS2013常用快捷键
    微软Dynamics AX的三层架构
    怎样在TFS(Team Foundation Server)中链接团队项目
  • 原文地址:https://www.cnblogs.com/laoluoits/p/14218835.html
Copyright © 2011-2022 走看看