linux常用命令

1. Linux目录结构

linux常用命令

* root目录:超级管理员所在的目录,用~表示

* home目录:普通用户所在的目录

* usr目录:安装用户文件所在的目录

* etc目录:Linux系统管理和配置文件所在的目录

2. 文件夹(目录)操作命令

1)查看

* 语法
        ls [参数]

* 参数解释
        -l  以详细形式查询当前目录下所有文件和目录,不包括隐藏文件和目录
        -a  以精简形式查询当前目录下所有文件和目录,包括隐藏文件和目录
        
* 命令
        cd /        进入根目录
        ls          以精简形式查询当前目录下的内容
        ls -l       以详细形式查询当前目录下的内容,d表示目录,-表示文件;此命令可以简写为ll
        ls -a       以精简形式查询当前目录下的隐藏内容
        ls -la      以详细形式查询当前目录下的隐藏内容,la和al都可
        clear       清屏
        ll          相当于ls -l 查看详情

linux常用命令

2)切换

* 语法
        cd 目录
            绝对路径
                /
            相对路径
                ./ 当前
                ../ 上级
        
* 命令
            cd  ~   当前用户目录
            cd  /   根目录
            cd  -   上一次访问的目录
            cd  ..  上一级目录
            cd      缺省当前用户目录

3)创建

* 语法
        mkdir [参数] 目录

* 参数解释
        -p 一次性创建多级目录,如果目录存在不会覆盖
        
* 命令
        cd /             定位于根目录
        mkdir aaa        在当前目录下创建aaa目录,相对路径
        mkdir ./bbb      在当前目录下创建bbb目录,相对路径
        mkdir /ccc       在根目录下创建ccc目录,绝对路径
        mkdir -p /ddd/eee    在根目录下创建ddd目录和eee子目录

4)搜索

* 语法
        find 目录 -name '条件'
        
* 命令
        cd /
        find / -name  'b'      查询根目录下(包括子目录),名为b的目录和文件
        find / -name  'b*'     查询根目录下(包括子目录),名以b开头的目录和文件
        在Linux中,按ctrl+c     强行终止程序执行

5)修改【伪实现】

* 语法
        mv  旧目录  新目录

* 命令
        cd /
        mv aaa aaaa     将根目录下的aaa目录修改为aaaa

6)剪切

* 语法
        mv  原目录位置   新目录的位置

* 命令
        cd /                    
        mv  /aaaa /bbb       将根目录下的aaaa目录,移动到bbb目录下,在bbb目录下也叫aaaa目录
        mv  bbb  usr/bbbb    将当前目录下的bbb目录,移动到usr目录下,且修改名为bbbb

7)复制【支持改名】

* 语法
        cp   -r 目录   目录的新位置
        
* 参数解释
        -r  递归处理,将指定目录下的文件与子目录一并处理
        
* 命令
        cd /                     定位于/目录
        cp -r  /aaa   /bbb       将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下名字为aaa
        cp -r  /aaa   /bbb/aaaa  将/目录下的aaa目录复制到/bbb目录下,且修改名为aaaa

8)删除【了解】

* 语法
        rmdir   [参数]    目录
        
* 参数解释
        -p 删除目录及其父目录
        
* 命令
        cd  /        
        rmdir bbb/ccc       删除bbb目录下ccc目录
        rmdir -p bbb/ccc    删除bbb目录和ccc子目录

9)小结

1. 查看当前目录下信息
    ll
    
2. 切换目录
    cd
        / 绝对路径
        ../ or [./] 相对路径
        
3. 创建文件夹
    mkdir -p 文件夹名
    
4. 搜索
    find / -name '*.cfg'
    
5. 改名
    mv 旧名 新名
    
6. 剪切
    mv 旧位置 新位置
    
7. 复制【支持改名】
    cp -r 文件名【文件夹】 新位置
    
8. 删除
    rmdir -p 多级目录名

3. 文件操作命令

1)创建

* 语法
        touch   文件名.扩展名
        
        
* 命令
        cd  /soft        定位于/soft目录
        touch  a.java    在soft目录中创建a.java文件
        touch  b.txt     在soft目录中创建b.txt文件
        touch  c.xml     在soft目录中创建c.xml文件

2)查看

* 语法
        cat/more/less/head/tail 文件

* 命令
        cd /soft         
        cat a.java         查看a.java文件的最后一页内容
        more a.java        从第一页开始,按回车键换行,按空格健翻页,q退出
        less a.java        从第一页开始,按回车键换行,按空格健翻页,支持使用PgUp和PgDn翻页,q退出
        head a.java        查看a.java文件的前10行内容
        tail a.java        查看a.java文件的后10行内容
        head -n 7 a.java   查看a.java文件的前7行内容
        tail -n 7 a.java   查看a.java文件的后7行内容
        
* 小结
    如果查看的内容在一页内可以展示:cat
    如果查看的内容过多需要翻页:
        less
            回车 下一行
            空格 下一页
            PGUP 上一页
            PGDN 下一页
    如果想查看前几行内容:head
    如果先查看后几行内容:tail

3)删除【掌握】

* 语法
        rm   [参数]     目录或文件
        
* 参数解释
        -r  递归处理,将指定目录下的所有文件及子目录一并处理,它会询问你,y表示是删除,n表示不删除
        -f  强制删除目录,它不会询问你
        
* 命令
        cd  /soft
        rm -rf a.java      强行式删除当前目录下的a.java文件
        rm -rf ./a*        强行式删除当前目录下以a开头的所有文件
        rm -rf /*           自杀

4)编辑 (Vi和Vim)

? linux 下的vi 是一种文字编辑器,后来的升级版本是vim。vi 分为三种模式:命令行、插入、底行模式。

* 简单使用
        vim a.java
        i 切换到插入模式
        esc 切换到命令行模式
        :wq! 保存并退出 | :q! 直接退出


* 切换到插入模式
        i 在当前位置前插入
        I 在当前行首插入
        a 在当前位置后插入
        A 在当前行尾插入
        o 在当前行之后插入一行
        O 在当前行之前插入一行

* 切换到命令行模式
         按Esc键
         yy 复制当前行
         p  粘贴
         dd 删除当前行
         G  到文件的最后一行
         gg 到文件的第一行  
        
* 切换到底行模式
        按 :(冒号)
        :wq 保存退出
        :q  退出vi(文件无修改的情况下)
        :q! 不保存强制退出

4.文件压缩命令

windows的压缩文件的扩展名: ?.zip或.rar

Linux中的打包文件扩展名:.tar

Linux中的压缩文件扩展名:.gz

Linux中打包压缩的文件扩展名:.tar.gz

1)打压缩包

* 语法
        tar -zcvf? 打包压缩后的文件名  要打包的文件
        tar -zcvf  xxxxx.tar.gz  a.java b.java c.xml
        tar -zcvf  xxxxx.tar.gz  *
        
* 参数解释
        -z:调用gzip压缩命令进行压缩
        -c:打包文件
        -v:显示运行过程
        -f:指定文件名
        
* 命令
        cd /soft            定位于/soft目录
        tar   -zcvf     haha.tar.gz   a.java  b.java  c.java
        或
        tar   -zcvf     haha.tar.gz   ./*  将当前目录下的所有文件打包压缩成haha.tar.gz文件

2)解压缩包

* 语法
        tar -zxvf??压缩文件 
            解压后的文件放在当前目录中
        tar -zxvf??压缩文件?–C指定目录
            解压后的文件放入指定目录中,注意-C是大写字母C,后面不用接空格符
            
* 参数解释
        -z   自动识别压缩或解压
        -x   取出文件中的内容
        -v   输出文件清单
        -f   文件名由命令台设置
        
* 命令
        cd  /soft                   定位于/soft目录
        rm -rf  ./*.java            强制式删除当前目录下所有扩展名为java的文件
        tar  -xvf  haha.tar.gz      解压haha.tar.gz这个压缩文件,里面的文件释放到当前目录下
        tar  -xvf  haha.tar.gz -C/usr/local 
                                 解压haha.tar.gz这个压缩文件,里面的文件释放到/usr/local目录下

5. 文件权限命令

Linux中对每个目录和文件都做了规定,只能由满足条件的用户才能操作,这个规定叫权限。

linux常用命令

* 语法
        chmod   [参数]    [<权限范围><符号><权限代号>]
        
* 参数解释
        -R 递归处理,将指定目录下的所有文件及子目录一并处理
        
* 权限范围
        u:User,即文件或目录的拥有者。 
        g:Group,即文件或目录的所属群组。 
        o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。 
        a:All,即全部的用户,包含拥有者,所属群组以及其他用户。
        
* 符号解释
            + 添加权限
            - 取消权限
            = 重置权限
            
* 权限代号
            r:读取权限,数字代号为"4"
            w:写入权限,数字代号为"2"
            x:执行或切换权限,数字代号为"1"
            -:不具任何权限,数字代号为"0"
            
* 命令
        chmod u+x 1.txt    给1.txt的拥有者添加执行权限,这种写法稍微有点麻烦,开发中一般使用数字代号
        chmod 755 1.txt    给1.txt的拥有者设置读写执行权限,给所属组添加读和执行权限,给其他用户添加                           读和执行权限
        chmod -R 777 a.txt     给所有人添加对此文件操作的所有权限

6. 其他命令

1)显示工作目录

* 语法
        pwd

2)查看进程

* 语法
        ps -au 当前客户端连接linux后,运行的进程信息
        ps -ef linux系统所有的进程信息       
        
* 参数解释
        -a   显示所有用户通过终端启动的所有进程
        -A   显示所有进程
        -u   显示所有用户通过终端启动的所有进程详细信息
        -x   显示所有用户通过终端和非终端启动的所有进程详细信息
        -e   此参数的效果和指定"A"参数相同,显示所有程序
        -f   显示UID,PPID,C与STIME栏位

3)杀死进程

* 语法
        kill 进程号        温柔杀死
        kill -9 进程号     强制杀死

4)搜索(针对文件)

* 语法
        grep    [参数]    搜索字符串   文件名 

* 参数解释
        -i   搜索时不区分大小写,大小写不敏感
        -n   显示匹配行及行号,大小写敏感
        -v   显示不匹配行及行号,大小写敏感
        
* 命令
        cd /
        grep as 123.txt             在123.txt文件中搜索as字符串,大小写敏感,显示行        
        grep -n as 123.txt          在123.txt文件中搜索as字符串,大小写敏感,显示行及行号
        grep -v as 123.txt          在123.txt文件中搜索as字符串,大小写敏感,显示没搜索到行
        grep -i as 123.txt          在123.txt文件中搜索as字符串,大小写不敏感,显示行
        grep -ni "Q q" 123.txt      在123.txt文件中搜索Q q字符串,大小写不敏感,显示行及行号

5)管道

* 语法
        xx | xx
        一个命令的输出用作另一个命令的输入
        
* 命令
        ls --help | more    分页查询帮助信息
        ps -au | grep system    在ps -au的结果中,搜索字符串a

linux常用命令

6)关机

* 语法
        poweroff

7)重启

* 语法
        reboot

相关推荐