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

     1.ls命令

    红色:表示hello.sh这个文件的所有者是root

    绿色:表示hello.sh这个文件的所属组是root组。

    分所有者和所有组是为了分配权限,rwxr-xr-x,中rwx的权限分配给所有者,即hello.sh这个文件,所有者root有读r,写w,执行x的权限,所属组root的权限是r-x,拥有读和执行的权限,不能写,r-x是分配给其他人,也只有读和执行的权限,也不能写。

    ls -h:将文件的大小从字节变成m

    root@ubuntu:/home/yanyanzhang/shell_study/sh# ll -h
    total 12K
    drwxr-xr-x 2 root root 4.0K May  3 15:57 ./
    drwxr-xr-x 3 root root 4.0K May  3 16:46 ../
    -rwxr-xr-x 1 root root   33 May  3 15:57 hello.sh*

    ls-d:显示目录的信息

    root@ubuntu:/home/yanyanzhang/shell_study/sh# ll -d /home/
    drwxr-xr-x 9 root root 4096 Feb  4 17:26 /home//

    ls -l:显示长信息 == ll

    2.cd命令

    cd - : 显示上次所在目录

    root@ubuntu:/home/yanyanzhang/shell_study# cd -
    /home/yanyanzhang/shell_study/sh

    3.mkdir命令

    mkdir -p:递归创建

    root@ubuntu:/home/yanyanzhang# mkdir -p 11/22
    root@ubuntu:/home/yanyanzhang/11/22# pwd
    /home/yanyanzhang/11/22

    4.rm命令

    rm -rf 强制删除递归文件,删除就没有了

    extundelete插件,可以帮助恢复误删的数据。

    5.touch命令

    创建新文件及修改文件时间

    6. stat命令

    查看文件的信息,修改时间,还是比较有用

    root@ubuntu:/home/yanyanzhang/shell_study# stat count.sh 
      File: 'count.sh'
      Size: 101           Blocks: 8          IO Block: 4096   regular file
    Device: 801h/2049d    Inode: 565777      Links: 1
    Access: (0755/-rwxr-xr-x)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2021-05-03 16:20:40.323253971 +0800  # 访问时间
    Modify: 2021-05-03 16:20:24.262662082 +0800  # 数据修改时间
    Change: 2021-05-03 16:20:33.643002162 +0800  # 状态修改时间,例如改权限
     Birth: -

    7.cat命令

    查看文件内容

    root@ubuntu:/home/yanyanzhang/shell_study# cat count.sh 
    #! /bin/bash
    
    # args1
    a=$1
    # args2
    b=$2
    # must use double () for int plus int
    sum=$((a+b))
    echo $sum

    -n 显示行号输出,常用

    root@ubuntu:/home/yanyanzhang/shell_study# cat -n count.sh 
         1    #! /bin/bash
         2    
         3    # args1
         4    a=$1
         5    # args2
         6    b=$2
         7    # must use double () for int plus int
         8    sum=$((a+b))
         9    echo $sum

    -A 显示所有的隐藏符号,排错有用

    #! /bin/bash$
    $  代表回车 ^table符
    # args1$
    a=$1$
    # args2$
    b=$2$
    # must use double () for int plus int$
    sum=$((a+b))$
    echo $sum$

    8. more命令

    按页显示,空格向下翻页,b向上翻页,q退出,/字符串 搜索: 适合查看大文档内容

    9. less命令

    按行显示,上下箭头翻行,q退出。

    10. head命令

    显示文件头,默认10行,head -100 xxx.py 从头显示100行

    11.tail命令

    显示文件尾,默认10行, tail -100 xxx.py 从尾向上显示100行

    -f :监听文件新增的数据,比较适合查看日志信息, 新增内容会在监听中显示,比较常用。

    12.ln连接

    硬链接:ln 源文件 新文件(不存在) ,新文件一定不要提前创建,硬链接会自动创建的。

    root@ubuntu:/home/yanyanzhang/11# ln ../shell_study/count.sh count_ln.sh 
    ln: failed to create hard link 'count_ln.sh': File exists
    root@ubuntu:/home/yanyanzhang/11# ls
    22  count_ln.sh
    root@ubuntu:/home/yanyanzhang/11# rm -rf count_ln.sh 
    root@ubuntu:/home/yanyanzhang/11# ln ../shell_study/count.sh count_ln.sh 
    root@ubuntu:/home/yanyanzhang/11# ls
    22  count_ln.sh

    给count.sh写入数据, 连接的新文件信息也增加了,相当于python中的对象多了一个引用而已。删除其中一个,另一个也可以正常使用,只是这个文件的引用数量少了1个而已。

    root@ubuntu:/home/yanyanzhang/shell_study# echo "testteste" >> count.sh 
    root@ubuntu:/home/yanyanzhang/shell_study# cat ../11/count_ln.sh 
    #! /bin/bash
    
    # args1
    a=$1
    # args2
    b=$2
    # must use double () for int plus int
    sum=$((a+b))
    echo $sum
    testteste

    缺点:不能给文件夹建立硬链接。标记不清,很难确认硬链接文件位置。不推荐使用

    软连接:ln -s 

    root@ubuntu:/home/yanyanzhang/11# ln -s ../shell_study/test01.sh test01_sn.sh
    root@ubuntu:/home/yanyanzhang/11# ls
    22  count_ln.sh  count.sh  test01_sn.sh
    root@ubuntu:/home/yanyanzhang/11# ll -i ./test01_sn.sh ../shell_study/test01.sh 
    565779 -rwxr-xr-x 1 root root 65 May  3 16:35 ../shell_study/test01.sh*
    557055 lrwxrwxrwx 1 root root 24 May  3 19:35 ./test01_sn.sh -> ../shell_study/test01.sh*  # 软连接的标记非常清楚,建议使用软连接
    root@ubuntu:/home/yanyanzhang/11# 

    root@ubuntu:/home/yanyanzhang/11# cat test01_sn.sh
    #! /bin/bash

    echo "$* is $*"
    echo "$@ is $@"
    echo "$# is $#"
    root@ubuntu:/home/yanyanzhang/11# cat ../shell_study/test01.sh
    #! /bin/bash

    echo "$* is $*"
    echo "$@ is $@"
    echo "$# is $#"

    给软连接写入文件后,查看源文件,都能共享

    root@ubuntu:/home/yanyanzhang/11# echo "xffawfwfwf" >> test01_sn.sh
    root@ubuntu:/home/yanyanzhang/11# cat test01_sn.sh
    #! /bin/bash

    echo "$* is $*"
    echo "$@ is $@"
    echo "$# is $#"
    xffawfwfwf
    root@ubuntu:/home/yanyanzhang/11# cat ../shell_study/test01.sh
    #! /bin/bash

    echo "$* is $*"
    echo "$@ is $@"
    echo "$# is $#"
    xffawfwfwf

    特点:删除软连接,源文件不受影响,删除源文件,软连接无法使用。软连接可以连接目录。注意:软连接一定要写绝对路径

    # TODO

  • 相关阅读:
    js选中文本的功能
    css中2端对其布局
    融合渐变轮播图和左右点击轮播图的js
    Hibernate入门一
    SpringDay01
    使用DoTwenn动画的不正常播放
    转载 利用WWW类获取图片并且在unityUGUI的Image中显示
    转载 Unity进阶技巧
    Unity中导入iTween插件问题
    转载 [Unity3D]引擎崩溃、异常、警告、BUG与提示总结及解决方法
  • 原文地址:https://www.cnblogs.com/meloncodezhang/p/14728055.html
Copyright © 2011-2022 走看看