Linux文件管理命令,命令状态返回值及命令展开

ls命令

功能:
    列出目录下的所有文件和目录  
语法格式:
    ls [OPTION]... [FILE]...
常用选项:
        -a :列出所有文件和目录
        -A :列出除.和..的所有文件
        -l :长选项,显示文件的详细属性信息
            -rw-------.  1 root root 1.4K May  1 00:50 anaconda-ks.cfg
                -:文件类型
                    -:普通文件                
                    d: 表示目录
                    c: 字符设备文件
                    b:表示块设备文件
                    l:符号链接文件(软连接文件)
                    p:命名管道文件;
                    s:套接字文件;                                        
                rw-------:表示所有者,所属组,和其他用户的权限                                           
                . 表示该文件或目录有隐藏属性
                1 :数字表示文件被硬连接的次数
                root root:表示所有者和所属组
                1.4k:表示文件或目录大小
                May  1 00:50 :表示最近修改时间
                anaconda-ks.cfg : 文件名
        -h :--human-readable:对文件大小单位换算
        -d 查看目录自身
        -r :reverse,逆序显示
        -R:recursive:递归显示

cd命令

功能:
    切换工作目录
常用格式:
    cd [/PATH/TO/DIR]:切到指定目录
    cd .. :返回上一级目录
    cd :切换回当前用户家目录
        注意:bash中,~表示家目录
    cd ~USERNAME:切换到指定用户的家目录
    cd - :在上一次目录与当前目录来回切换

mkdir命令

功能:
    创建目录
语法格式:
    mkdir [OPTION]... DIRECTORY...
常用选项:
    -p: 如果没有父目录,则按需创建父目录
    -v:显示详细信息
    -m:创建时给定目录权限
示例:
    [root@localhost ~]# mkdir -pvm 770 hello/world
    mkdir: created directory ‘hello’
    mkdir: created directory ‘hello/world’

    [root@localhost ~]# ll -d hello/world/
    drwxrwx--- 2 root root 6 May 25 14:34 hello/world/

rmdir命令

功能:
    删除空目录
语法格式:        
    rmdir [OPTION]... DIRECTORY...
常用选项:
    -p:删除某目录后,如果父目录为空,则父目录一并删除
    -v 显示详细信息
示例:
    [root@localhost ~]# rmdir -pv hello/world/
    rmdir: removing directory, ‘hello/world/’
    rmdir: removing directory, ‘hello’

more命令

功能:
    分页显示文件内容
语法格式:
    more FILE
常用操作:
    Enter键:向下翻一行
    Space键:向下翻一页
    H键:显示帮助信息
    B键:向上翻一页
    F键:向下翻一页
    Q键:退出
特点:翻屏至文件尾部自动退出

less命令

less 与 more 类似

head命令

功能:查看文件的开始部分
语法格式:
    head [OPTION]... [FILE]...
常用选项:
    -n # 查看前#行,默认前10行
示例:
    [root@localhost ~]# head -n 2 /var/log/messages
    May 20 13:41:03 localhost rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x-pid="898" x-info="http://www.rsyslog.com"] rsyslogd was HUPed
    May 20 13:50:01 localhost systemd: Started Session 20 of user root.

tail命令

功能:
    查看文件的结尾部分
语法格式:
    tail [OPTION]... [FILE]...
常用选项:
    -n # :显示文件后#的内容
    -f :查看文件尾部内容结束后不退出,跟随显示新增的行

stat命令

功能:
    查看文件状态(属性信息)
语法格式:
    stat [OPTION]... FILE...
示例:
    root@localhost ~]# stat /etc/passwd
     File: ‘/etc/passwd’
    Size: 2409          Blocks: 8          IO Block: 4096   regular file
    Device: fd00h/64768d    Inode: 67575495    Links: 1
    Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
    Access: 2018-05-25 13:40:01.999513472 +0100
    Modify: 2018-05-24 13:30:38.483527612 +0100
    Change: 2018-05-24 13:30:38.485527612 +0100
    Birth: -

touch命令

功能:
    修改文件的时间戳
语法格式:
    touch [OPTION]... FILE...
常用选项:
    -c, --no-create 指定的文件不存在时不予创建        
    -a:仅修改access time 
    -m:仅修改modify time 
    -t:指定时间 
        [[CC]YY]MMDDhhmm[.ss]

cp命令

功能:
    拷贝文件和目录
语法格式:
    cp [OPTION]... [-T] SOURCE DEST (单文件复制)
        如果DEST不存在,则先创建此文件,并复制源文件的数据至DEST
        如果DEST存在:
            如果DEST是非目录文件,则覆盖目标文件
            如果DEST是目录文件,则先在DEST下创建与源相同的文件,然后把源文件复制到DEST下

    cp [OPTION]... SOURCE... DIRECTORY (多文件复制)
    cp [OPTION]... -t DIRECTORY SOURCE...(多文件复制)
常用选项:
    -i:交互式复制,即覆盖之前提醒用户
    -f:强制覆盖目标文件
    -R, -r, --recursive 递归复制
    -d:复制符号链接本身,而非其指向的源文件   
    -p:连同属性一起复制过去    
    -a, --archive 用于实现归档
        same as -dR --preserve=all

mv命令:

功能:
    移动或重命名文件
语法格式:
    mv [OPTION]... [-T] SOURCE DEST (单文件移动)
    mv [OPTION]... SOURCE... DIRECTORY (多文件复移动)
    mv [OPTION]... -t DIRECTORY SOURCE...(多文件移动)
常用选项:
    -i:交互式
    -f:强制 

rm命令

功能:
    删除文件或目录
语法格式:
    rm [OPTION]... FILE...
常用选项:
    -i:交互式
    -f:强制
    -r, -R, --recursive 递归 

bash工作特性之命令执行状态返回值

命令执行的状态结果,bash通过状态返回值来输出此结果
    成功:0
    失败:1-255
    命令执行完成之后,其执行状态结果保存于 bash的特殊变量$?中(最近执行的命令)
示例:  
    [root@localhost ~]# ls -dl /etc/
    drwxr-xr-x. 141 root root 8192 May 27 08:19 /etc/
    [root@localhost ~]# echo $?
    0
    状态返回值为0,表明ls -dl /etc 执行时成功的

    [root@localhost ~]# ls -dlw /etc/
    ls: invalid line width: /etc/
    [root@localhost ~]# echo $?
    2
    状态返回值为2,表明ls -dlw /etc 执行失败

bash基础特性之:命令行展开

~:自动展开为用户的家目录,或指定的用户的家目录
{}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径
示例:
    [root@localhost tmp]# mkdir ~/test
    [root@localhost tmp]# cd /root/
    [root@localhost ~]# ls
    Desktop    Downloads  initial-setup-ks.cfg  Pictures  Templates  tmp.5nVn1PZY3B  Videos
    Documents  fstab      Music                 Public    test       tmp.yKmRuzdNHC

    [root@localhost ~]# mkdir /tmp/{a_c,a_d,b_c,db_d}
    [root@localhost ~]# ll /tmp/
    total 0
    drwxr-xr-x 2 root root 6 May 27 09:01 a_c
    drwxr-xr-x 2 root root 6 May 27 09:01 a_d
    drwxr-xr-x 2 root root 6 May 27 09:01 b_c
    drwxr-xr-x 2 root root 6 May 27 09:01 db_d

    [root@localhost tmp]# mkdir -p /tmp//mylinux/{bin,boot/grub,dev,etc/{rc.d/init.d,sysconfig/network-scripts},lib/modules,lib64,proc,sbin,sys,tmp,usr/local/{bin,sbin},var/{lock,log,run}}
    [root@localhost tmp]# tree /tmp/
    /tmp/
    └── mylinux
        ├── bin
        ├── boot
        │   └── grub
        ├── dev
        ├── etc
        │   ├── rc.d
        │   │   └── init.d
        │   └── sysconfig
        │       └── network-scripts
        ├── lib
        │   └── modules
        ├── lib64
        ├── proc
        ├── sbin
        ├── sys
        ├── tmp
        ├── usr
        │   └── local
        │       ├── bin
        │       └── sbin
        └── var
            ├── lock
            ├── log
            └── run

    25 directories, 0 files

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/99567

发表评论

登录后才能评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班