美文网首页
Linux基础(2)

Linux基础(2)

作者: rspclei | 来源:发表于2018-07-23 11:16 被阅读0次

    1、Linux上的文件管理类命令

    pwd命令

    作用:显示当前工作路径的绝对路径

    用法:pwd [选项]

    常用选项:

    -p  显示真实物理路径

    -L 显示链接路径(默认)

    实例:

    显示当前工作路径

    [root@gongzy bin]# pwd

    /bin

    显示当前工作路径的真实物理路径

    [root@gongzy bin]# pwd -P

    /usr/bin

    cd命令

    作用:改变当前路径

    用法:cd [-L|-P] [dir]

    常用选项:

    -P 如果是链接目录则进入真实物理目录

    特殊用法:

    cd .. 切换到父目录

    cd    切换到当前用户家目录

    cd-   切换到上次的工作目录

    相关环境变量

    PWD:当前工作路径

    OLDPWD:上一次的目录路径

    实例:

    更改路径到/binD的真实物理目录

    [root@gongzy ~]# cd -P /bin

    [root@gongzy bin]# pwd

    /usr/bin

    ls命令

    作用:列出当前或指定目录的内容

    用法:ls [选项] [目录…]

    常用选项

    -a 列出所有文件包括隐藏文件

    -l 显示额外的信息

    -R 递归列出遇到的子目录

    -d 列出目录本身

    -r 逆序排列

    -1 单列输出

    -S 由大到小排列

    -t 按mtime排列

    -u 按atime从新到旧排列

    -U不排序,按照磁盘上的位置列出

    -X 按照后缀排序

    实例:

    按照mtime列出/etc目录下的所有文件包括隐藏文件详细信息

    [root@gongzy ~]# ls -alt /etc/

    stat命令

    作用:查看文件inode内容

    用法:stat 文件名 [文件名 … ]

    说明:metatime

    access time:访问时间atime

    modify time:修改时间mtime,文件内容更改

    change time:改变时间ctime,文件属性更改,包括所有者,权限,大小,等元数据

    实例:

    查看文件etc/fstab的inode内容

    [root@gongzy ~]# stat /etc/fstab

    文件:"/etc/fstab"

    大小:445 块:8 IO 块:4096 普通文件

    设备:fd01h/64769d Inode:196610 硬链接:1

    权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

    最近访问:2018-01-09 18:22:26.986000000 +0800

    最近更改:2018-03-19 16:17:21.635669788 +0800

    最近改动:2018-03-19 16:17:21.635669788 +0800

    创建时间:-

    touch命令

    作用:修改文件时间戳

    用法:touch [选项]… 文件…

    常用选项:

    -a仅改变 atime和ctime

    -m仅改变 mtime和ctime

    -t指定atime和mtime的时间戳

    -c如果文件不存在,则不予创建

    特殊用法:如果指定文件不存在,则创建空文件

    实例:

    修改/etc/motd的atime,mtime为为2016年6月6日

    [root@gongzy ~]# touch -t 201606060000.00 /etc/motd

    [root@gongzy ~]# stat /etc/motd

    文件:"/etc/motd"

    大小:0 块:0 IO 块:4096 普通空文件

    设备:fd01h/64769d Inode:196655 硬链接:1

    权限:(0644/-rw-r--r--) Uid:( 0/ root) Gid:( 0/ root)

    最近访问:2016-06-06 00:00:00.000000000 +0800

    最近更改:2016-06-06 00:00:00.000000000 +0800

    最近改动:2018-05-18 17:39:40.390859127 +0800

    创建时间:-

    cp命令

    作用:复制文件和目录

    用法:

    单源复制:cp [OPTION]… [-T] SOURCE DEST

    多源复制:cp [OPTION]… SOURCE… DIRECTORY

    cp [OPTION]… -t DIRECTORY SOURCE…

    如果DEST不存在:则事先创建此文件,并复制源文件的数据流至DEST中;

    如果DEST存在:

    如果DEST是非目录文件:则覆盖目标文件;

    如果DEST是目录文件:则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流;

    常用选项

    -i 覆盖前提醒

    -f 强制覆盖,不提示

    -r,-R递归复制目录

    -d 复制符号链接文件本身,而非其指向的源文件

    -a 相当于-dR –preserve=all, archive,用于实现归档

    -p  等同–preserv=mode,ownership,timestamp

    -v 显示过程

    -u  只复制源比目标更新文件或目标不存在的文件

    –backup=numbered 目标存在,覆盖前先备份加数字后缀

    –preserv=保留源文件的属性

    mode:权限

    ownership:属主和属组

    timestamps: 时间戳

    context:安全标签

    xattr:扩展属性

    links:符号链接

    all:上述所有属性

    实例

    将/etc/目录下所有文件,备份到/testdir独立的子目录下,并要求子目录格式为 backupYYYY-mm-dd,备份过程可见

    [root@gongzy ~]# cp -av /etc/ /testdir/bakup`date +%F`

    mv命令

    作用:移动文件

    用法

    mv [OPTION]… [-T] SOURCE DEST

    mv [OPTION]… SOURCE… DIRECTORY

    mv [OPTION]… -t DIRECTORY SOURCE..

    常用选项:

    -i 交互

    -f  强制

    实例:

    将a文件重命名为b

    [root@gongzy ~]# mv a b

    rm命令

    作用:移除文件

    用法:rm [options”]file…

    常用选项

    -i 交互

    -f 强制删除

    -r递归

    –no–preserve-root 忽略对跟的保护

    实例:

    自杀

    [root@gongzy ~]# rm -rf /*

    mkdir命令

    作用:创建目录

    用法: mkdir [选项] 目录…

    常用选项:

    -p: 自动按需创建父目录

    -v: verbose,显示详细过程

    -m MODE: 创建目录时直接指定权限

    实例:

    创建目录 /1/2/3

    [root@gongzy ~]# mkdir -pv /1/2/3

    mkdir: 已创建目录 "/1"

    mkdir: 已创建目录 "/1/2"

    mkdir: 已创建目录 "/1/2/3"

    rmdir命令

    作用:删除空目录

    用法:rmdir [选项] 目录…

    常用选项:

    -p:删除某目录后,如果其父目录为空,则一并删除之

    -v: 显示过程

    实例:

    删除空目录/1/2/3

    [root@gongzy ~]# rmdir -pv /1/2/3

    rmdir: 正在删除目录 "/1/2/3"

    rmdir: 正在删除目录 "/1/2"

    rmdir: 正在删除目录 "/1"

    rmdir: 正在删除目录 "/"

    rmdir: 删除目录 "/" 失败: 设备或资源忙

    tree命令

    作用:显示目录树

    用法:tree[选项] 目录

    常用选项:

    -d 只显示目录

    -L  指定显示的层级数目

    -P pattern: 只显示由指定pattern匹配到的路径

    实例:

    查看/etc目录树,显示到第二级只显示目录

    [root@gongzy ~]# tree -dL 2 /etc/

    2、bash的工作特性

    (1)命令执行状态返回值

    linux命令执行的状态结果为linux状态返回值,bash通过状态返回值来输出此结果,其中

    成功:0

    失败:1-255

    命令执行完成之后,其状态返回值保存于bash的特殊变量$?中

    实例:

    成功

    [root@gongzy ~]# ls

    123 tmp

    [root@gongzy ~]# echo $?

    0

    失败

    [root@gongzy ~]# la

    -bash: la: 未找到命令

    [root@gongzy ~]# echo $?

    127

    (2)命令行展开

    ~:自动展开为用户的家目录,或指定的用户的家目录;

    {}:可承载一个以逗号分隔的路径列表,并能够将其展开为多个路径

    实例:

    创建tmp/a 与tmp/b

    [root@gongzy ~]# mkdir -pv tmp/{a,b}

    mkdir: 已创建目录 "tmp"

    mkdir: 已创建目录 "tmp/a"

    mkdir: 已创建目录 "tmp/b"

    3、命令行展开功能练习:

    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d

    [root@gongzy ~]# mkdir -v /tmp/{a,b}_{c,d}

    mkdir: 已创建目录 "/tmp/a_c"

    mkdir: 已创建目录 "/tmp/a_d"

    mkdir: 已创建目录 "/tmp/b_c"

    mkdir: 已创建目录 "/tmp/b_d"

    (2)、创建/tmp/mylinux目录下的:

    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@gongzy ~]# mkdir -pv /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}

    mkdir: 已创建目录 "/tmp/mylinux"

    mkdir: 已创建目录 "/tmp/mylinux/bin"

    mkdir: 已创建目录 "/tmp/mylinux/boot"

    mkdir: 已创建目录 "/tmp/mylinux/boot/grub"

    mkdir: 已创建目录 "/tmp/mylinux/dev"

    mkdir: 已创建目录 "/tmp/mylinux/etc"

    mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d"

    mkdir: 已创建目录 "/tmp/mylinux/etc/rc.d/init.d"

    mkdir: 已创建目录 "/tmp/mylinux/etc/sysconfig"

    mkdir: 已创建目录 "/tmp/mylinux/etc/network-scripts"

    mkdir: 已创建目录 "/tmp/mylinux/lib"

    mkdir: 已创建目录 "/tmp/mylinux/lib/modules"

    mkdir: 已创建目录 "/tmp/mylinux/lib64"

    mkdir: 已创建目录 "/tmp/mylinux/proc"

    mkdir: 已创建目录 "/tmp/mylinux/sbin"

    mkdir: 已创建目录 "/tmp/mylinux/sys"

    mkdir: 已创建目录 "/tmp/mylinux/tmp"

    mkdir: 已创建目录 "/tmp/mylinux/usr"

    mkdir: 已创建目录 "/tmp/mylinux/usr/local"

    mkdir: 已创建目录 "/tmp/mylinux/usr/bin"

    mkdir: 已创建目录 "/tmp/mylinux/usr/sbin"

    mkdir: 已创建目录 "/tmp/mylinux/var"

    mkdir: 已创建目录 "/tmp/mylinux/lock"

    mkdir: 已创建目录 "/tmp/mylinux/log"

    mkdir: 已创建目录 "/tmp/mylinux/run"

    [root@gongzy ~]# tree /tmp/mylinux/

    /tmp/mylinux/

    ├── bin

    ├── boot

    │   └── grub

    ├── dev

    ├── etc

    │   ├── network-scripts

    │   ├── rc.d

    │   │   └── init.d

    │   └── sysconfig

    ├── lib

    │   └── modules

    ├── lib64

    ├── lock

    ├── log

    ├── proc

    ├── run

    ├── sbin

    ├── sys

    ├── tmp

    ├── usr

    │   ├── bin

    │   ├── local

    │   └── sbin

    └── var

    相关文章

      网友评论

          本文标题:Linux基础(2)

          本文链接:https://www.haomeiwen.com/subject/kfbdmftx.html