zoukankan      html  css  js  c++  java
  • linux命令

    Linux

    一.操作系统
    1.操作系统的作用

    是现代计算机系统中最基本和最重要的系统软件
    承上启下的作用
    向下对硬件设备进行封装
    向上对用户和应用程序提供方便访问硬件的接口

    操作系统的应用领域:

    桌面操作系统(Windows,MacOS,linux)
    服务器操作系统(linux,windows_sever)
    嵌入式操作系统(linux,用于家电操作界面,网络电视,机顶盒)
    移动设备操作系统android(底层也是Linux),IOS,

    2.虚拟机

    虚拟出来的计算机系统:
    硬件系统: vmware
    软件系统: 操作系统(centos) + 应用软件 (例:谷歌)

    3.Linux操作系统:

    a.Linux操作系统的发展史
    Unix--minix--linux
    linux 由林纳斯·托瓦兹 1991年 研发

    b.linux发行版
    1.centos
    2.red hat
    3.ubuntu
    4.debian
    5.android
    拓展题目:(了解)
    centos 与 red hat的区别
    1. centos源于red hat,red hat是商业版,centos是社区版(完全免费)
    centos比ubuntu更稳定,桌面不友好,软件更新慢
    2. ubuntu源于debian,debian是商业版,ubunru是社区版(完全免费)
    ubuntu桌面非常友好,软件更新很快

    4.linux 文件和目录

    1.单用户与多用户操作系统(了解)
    指一台计算机在同一时间可以由多个用户使用
    现在的操作系统都是多用户的操作系统

    文件的访问权限:不同用户对同一文件的访问权限是有差异的

    2.Linux文件系统

    a.根目录'/'
    所有文件都是在'/'根目录下
    b.用户家目录,用户工作目录
    /home/admin
    可简写为'~'
    当前用户对用户家目录及其子目录有绝对的权限:创建,删除文件,文件夹
    c.根目录下面的以及子目录介绍(了解)
    /:根目录
    /home/admin:用户家目录,用户工作目录
    /bin:可执行程序目录/

    二.常见的Linux命令01

    1. ls: list列出文件列表信息
    格式: ls [-option] [parameter]
    ls [选项] [文件]

    常用选项:
    -l : 详细查看
    -a : 查看所有文件(隐藏和非隐藏文件都查看)
    -h : 与-l一起使用,以更人性化的方式显示文件大小


    问题1:详细查看家目录下的文件
    ls -l ~
    ls -l /home/admin/

    问题2:查看家目录下的所有文件
    ls -a ~

    问题3:详细查看家目录下的文件,并且以友好方式显示文件大小
    ls -lh ~

    2. clear : 清除命令终端的屏幕
    快捷键: Ctrl + L

    3. pwd : print work directory 显示当前的工作目录

    4. cd : 切换到指定目录

    a.相对路径 : 相对于当前的路径
    cd ./ 当前目录
    cd .. 上一级目录
    cd 目录/ 该目录的下一级

    b.绝对路径 : 以根目录开始的路径
    / : 根目录
    ~ : 家目录(/home/admin)

    c.常用的目录切换
    cd . 当前目录
    cd .. 切换到 上一级目录
    cd ~ 迅速切换到家目录
    cd - 切换到 上一次目录
    cd / 切换到根目录

    问题1:分别以相对路径和绝对路径进入到桌面目录中(当前目录是用户家目录)

    [admin@localhost ~]$
    相对路径: cd ./桌面/ cd 桌面

    绝对路径:
    cd ~/桌面/
    cd /home/admin/桌面/

    问题2:分别以相对路径和绝对路径进入/bin目录中(当前目录是用户家目录)

    相对路径:
    cd ../../bin/
    绝对路径:
    cd /bin/

    5. mkdir : make directory 创建目录
    格式 : mkdir [选项] 目录


    问题1: 在桌面创建abcdir目录
    (当前目录~) mkdir 桌面/abcdir
    (当前目录桌面) mkdir abcdir

    问题2:在abcdir目录中一次创建a/b/c 级联目录
    mkdir -p a/b/c

    问题3:在abcdir目录中一次创建a1 b1 c1 3个同级的文件夹
    mkdir a1 b1 c1


    6. touch : 创建文件
    格式 : touch [选项] 文件

    问题1: 在桌面的abcdir目录中创建info.txt文件
    (在abcdir中) touch info.txt


    问题2: 在桌面的abcdir目录中一次创建a.txt, b.txt, c.txt三个文件
    (在abcdir中) touch a.txt b.txt c.txt


    7. rm : remove 删除文件或者文件夹
    格式 : rm [选项] 文件

    选项:
    -i : 删除文件时给予提示(确认是否删除)
    -f : 强制删除,假如要删除的文件不存在,也不会报错
    -r : 递归删除,假如要删除的是目录(文件夹),则要用改选项

    问题1:删除桌面的abcdir目录中a.txt的文件
    (在abcdir中) rm a.txt


    问题2:删除桌面的abcdir目录中的a目录
    (在abcdir中) rm -r a

    8. cp : 拷贝,复制
    格式 : cp [选项] <源文件> <目标文件>

    问题1:拷贝桌面的abcdir目录的info.txt到当前a目录下
    (在abcdir中) cp info.txt a/


    问题2:拷贝桌面abcdir目录的info.txt到当前a目录下,且改名为info_backup.txt
    (在abcdir中) cp info.txt a/info_backup.txt


    问题3:拷贝当前a目录到桌面
    (在abcdir中) cp -r a/ ~/桌面
    cp -r a/ ../


    9. mv : 移动到/重命名
    格式 : mv <源文件> <目标文件夹/目标文件>

    (当前的目录是桌面/abcdir)
    问题1: 把桌面abcdir目录的a.txt移到当前a目录下
    mv a.txt ./a/


    问题2:把桌面abcdir目录的b.txt 重命名为body.txt
    mv b.txt body.txt

    问题3:把桌面abcdir目录下的a目录移动到家目录下
    注意:移动文件夹的时候不需要 -r
    mv a ~/

    10. 通配符

    1 * : 代表0个多个任意字符
    问题1: 查看列举/bin目录中以r开头的所有文件
    ls r*

    2 ?: 代表1个任意字符
    问题2: 查看列举/bin目录中以r开头的只有两个字符的文件
    ls r?


    3 [] : 字符集,匹配字符集中任意一个字符,可使用-表示范围([a-z])
    问题3: 查看列举/bin目录中以文件名是以数字结尾的文件
    ls *[0-9]

    4 : 转义字符
    问题4: 在桌面创建文件名为hello1.txt hello2.txt hello*.txt的文件 ,然后再只删除 hello*.txt文件

    touch hello1.txt hello2.txt hello*.txt
    rm hello*.txt(注意:如果只是写rm hello*.txt, 会把hello1.txt hello2.txt也删除了,因为*有特殊意义,所以需要转移符号来将*转义成普通字符*)


    三. 常见的Linux命令02

    1. 重定向命令 > 和 >>

    将命令结果重定向到一个文件,本应显示在终端上的内容保存到指定的文件中

    (当前目录在桌面)
    问题1:把家目录的文件信息写到桌面的files.txt文件中
    ls ~ > files.txt

    问题2:把test目录下的文件信息追加到files.txt内容后面
    ls test >> files.txt

    注意:>输出重定向会覆盖原来的内容, >> 输出重定向会追加到文件尾部


    2. cat : 在终端直接查看文件内容,或者配合重定向符号>完成合并文件内容
    格式 : cat [文件]

    问题1:在桌面创建one.txt, two.txt文件,并且通过cat查看文件内容
    touch one.txt two.txt
    gedit one.txt ----编辑文本内容
    gedit two.txt
    cat one.txt two.txt


    问题2:把one.txt, two.txt合并到three.txt文件中再通过cat查看three.txt
    cat one.txt two.txt > three.txt
    cat three.txt


    问题3:把/bin目录下的文件内容写到桌面的files02.txt,使用cat查看它的内容
    ls /bin > files02.txt
    cat files02.txt

    3. more : 分屏显示文件内容

    问题1:使用more查看桌面的files02.txt文件内容
    more files02.txt

    最先显示的是第一屏幕的内容
    空格: 显示下一屏内容
    回车: 显示下一行
    数字+回车 : 指定接下来的显示行数
    b: 显示上一屏
    q: 退出

    4. 管道命令

    管道:一个命令的输出可以通过管道作为另一个命令的输入

    问题1:用ls详细查看/bin目录下的内容,且分屏显示
    ls /bin | more


    5. ln : 链接命令
    格式 : ln [选项] <源文件> <链接名>
    选项 -s 用于创建软连接

    问题1:在桌面创建一个01.txt文件,对该文件创建软链接01_s_link.txt
    ln -s 01.txt 01_s_link.txt

    问题2:在桌面创建一个01.txt文件,对该文件创建硬链接01_link.txt
    ln 01.txt 01_link.txt


    软链接与硬链接的相同点和区别:
    1. 软链接和硬链接最终都指向同一个文件
    2. 当源文件名删除,软链接变成无效链接,而硬链接还可以打开源文件内容
    3. 文件详细列表显示时,软链接的文件类型是l ,而硬链接是-
    4. (注意)软链接可以链接文件和目录,而硬连接只能链接文件

    注意:如果软链接文件和源文件不在同一个目录,源文件要使用绝对路径,不能使用相对路径,否则将创建无效文件


    6. grep : 查找文本
    格式 : grep [选项] '搜索内容串' <文件名>
    选项 :
    -i 不区分大小写
    -n 显示匹配行的行号
    -v 显示不匹配的内容(取反)

    问题1:把/bin目录中的文件信息写入桌面的home.txt中,并且查找"d"字符
    ls /bin > home.txt
    grep "d" home.txt

    grep除了上面的格式,另外,还配合管道|使用:cat xxx.txt | grep "s" 表示xxx.txt中查找"s"

    7. find : 查找文件
    格式 : find [路径] [-name/-perm] [匹配原则]

    a.按名称查找
    问题1:查找桌面目录中扩展名是txt的文件
    find ./ -name "*.txt"

    b. 按权限查找
    find ./ -perm 权限值
    问题2:查找出test目录中属主用户有读写执行权限,其他用户只有读和执行权限的文件
    find ./test -perm 755
    755=rwx r-x r-x
    r=4
    w=2
    x=1

    8. tar : 打包压缩命令
    格式 : tar [选项] <打包的文件名> <要打包的文件>

    选项:
    1. c: 创建打包文件,归档文件
    2. v: 显示打包文件名称
    3. f: 指定打包或者拆包文件名称
    4. x: 解包,拆包
    5. z: 以gzip压缩或者解压文件
    6. j: 以bzip2压缩或者解压文件
    7. C: 解压到指定路径, -C选项后面解压后存放文件的目录

    问题1:对test目录下的所有文件打包成my.tar
    (操作目录是test目录) tar -cvf my.tar ./*

    问题2: 对my.tar 文件进行拆包
    tar -xvf my.tar

    问题3: 对test目录下的所有文件打包且以gzip格式压缩成 my.tar.gz文件
    tar -czvf my.tar.gz ./*


    问题4: 对my.tar.gz解压及拆包
    tar -xzvf my.tar.gz

    问题5: 对test目录下的所有文件打包且以bzip2格式压缩成 my.tar.bz2文件
    tar -cjvf my.tar.bz2 ./*

    问题6: 对my.tar.bz2 解压及拆包到桌面到的test2目录中
    (操作目录是test目录) tar -xjvf my.tar.bz2 -C ../test2/


    9. gzip : 压缩解压命令
    格式: gzip [选项] <被压缩文件>
    选项:
    -d 表示解压
    -r 可以压缩文件夹,但无法形成一个压缩包,会把文件夹里的子文件分别单独压缩

    问题1: 对test目录下的rview文件使用gzip格式压缩
    gzip rview

    问题2:使用gzip命令解压文件rview.gz
    gzip -d rview.gz

    10. chmod : 对文件或文件夹设置权限

    a.字母法
    格式:chmod u/g/o/a +/-/= rwx 文件 (顺序不能颠倒,先设置权限再指定文件)

    问题1:对test目录下的raw文件的拥有者用户及同组用户添加执行权限,对其他用户添加写权限
    chmod u+x,g+x,o+w raw

    问题2:对test目录下的raw同组用户移除执行权限,对其他用户设置无权限
    chmod g-x,o= raw

    b.数字法
    格式: chmod 权限数字表示法 文件名

    问题3:对test目录的raw所有用户均设置读写执行权限
    chmod 777 raw


    12. 与用户相关命令(who , exit , passwd)
    a. who : 查看用户登录情况

    b. su root : 切换到超级用户(拥有超级权限#)
    再输入超级用户密码

    c. exit : 退出登录
    1、如果是centos图形界面打开的命令终端,退出当前终端
    2、如果是使用ssh远程登录,退出登录账户
    3、如果是切换后的登录用户,退出则返回上一个登录账号

    d. passwd: 设置密码
    在Unix/Linux中,超级用户可以使用passwd命令为普通用户设置或修改用户密码。
    用户也可以直接使用该命令来修改自己的密码,而无需在命令后面使用用户名。

    问题1:尝试在/opt目录中创建myopt文件夹
    mkdir /opt/myopt
    [admin@localhost 桌面]$ mkdir /opt/myopt
    mkdir: 无法创建目录"/opt/myopt": 权限不够
    [admin@localhost 桌面]$ su
    密码:(root的密码)
    [root@localhost 桌面]# mkdir /opt/myopt
    [root@localhost 桌面]# exit


    13、(了解)关机相关命令(reboot、shutdown)

    a. reboot: 重启
    b. shutdown: 关机
    1. shutdown -r now: 立即重启
    2. shutdown -h now: 立即关机
    3. shutdown -h 20:25: 指定某个时间关机
    4. shutdown -h +10: 10分钟后关机

    四. ssh 服务
    1.ssh介绍
    ssh(Secure Shell):安全外壳,安全网络协议
    SSH是目前可靠的,专为远程登录会话和其他网络服务提供安全性的协议。
    常用于远程登录,以及用户之间进行资料拷贝。利用SSH协议可以有效防止远程管理过程中的信息泄露问题.

    2.远程登录格式: ssh 用户名@IP

    提示:linux上查看ip地址的命令是ifconfig

    问题1:通过远程登录方式,在虚拟机CentOS桌面上创建hello.txt文件
    ssh admin@192.168.85.74
    输入的密码:admin的密码

    五. vim 软件的使用
    1.三种工作模式
    a.命令模式:
    打开文件,默认进入此模式,通过命令的方式,通过命令的方式对文档进行编辑,比如复制,粘贴,删除行等操作

    b.编辑模式:
    在命令模式中按i或者a进入编辑模式,可以输入文本进行编辑文档。按‘esc’退出编辑模式,进入命令模式

    c.末行模式:
    在命令模式按‘:’进入末行模式,在末行模式中可实现查找替换文本、保存退出文件等操作,按‘esc’进入命令模式

    2、命令模式下的vim操作(了解)
    a. 进入编辑模式
    1. i或者a
    b. 移动光标
    1. 方向箭头(上下左右)
    2. hjkl(上下左右)
    3. G和gg(G文档最后一行,gg文档首行,数字G跳到指定行)
    c. 删除命令
    1. dd 或者 数字dd(dd删除所在行,5dd删除指定行数,从光标所在行开始计算)

    d. 撤销与恢复命令
    1. u (撤销)
    2. ctrl+l+r (恢复)

    e. 复制粘贴命令
    1. yy 或者 数字yy(yy复制当前行,5yy复制5行)

    2. p 或者 数字p (p在光标所在位置向下新开一行粘贴, 5p 粘贴5次)

    问题1:复制第2行内容,放在末尾进行粘贴
    光标调到第2行: 2G
    复制第二行内容 yy
    光标移动到最后一行 G
    粘贴 p

    问题2:删除当前光标所在行,及下2行的数据
    3dd

    3、末行模式下的简单操作
    保存和退出
    命令模式下按shift + 冒号进入末行模式
    1. w 只保存
    2. q 退出,没保存会询问
    3. wq: 保存退出(或者x)

    曾经梦想仗剑走天涯,然而bug太多,没时间去
  • 相关阅读:
    mybatis-redis项目分析
    mybatis-redis项目分析
    redis(一)简介
    redis(一)简介
    redis(二)redis+TCMALLOC高性能的缓存服务器的安装配置
    redis(二)redis+TCMALLOC高性能的缓存服务器的安装配置
    redis(三)redis+Keepalived主从热备秒级切换
    redis(三)redis+Keepalived主从热备秒级切换
    redis(五)redis与Mybatis的无缝整合让MyBatis透明的管理缓存二
    jQuery示例
  • 原文地址:https://www.cnblogs.com/wulilou/p/9826467.html
Copyright © 2011-2022 走看看