文件管理类命令和bash特性之(命令状态返回值和命令行展开)

文件管理类命令

ls

用途:list 列出指定目录下的内容;

语法:ls [OPTION]… [FILE]…

选项:
-a : 显示所有文件,包括隐藏文件;
-A :显示除 . 和 .. 之外的所有文件;
-l :长格式列表,显示文件的详细属性信息;
-h :可以对文件大小进行单位换算是非精确值;
-d:查看目录自身而非其内部文件列表(如果文件符合也会显示出来);
-r:逆序显示;
-R:递归显示(将目录下的文件也会显示出来);

2

 

pwd

用途:printing working directory 显示工作目录,路径显示;

1

cd

用途:change directory 切换目录;

语法:cd [/PATH/TO/SOMEDIR]

  • 切回家目录
    cd
    cd ~
  • 切到指定用户的家目录
    cd ~USERNAME
  • 在上一次所在目录与当前目录之间进行切换
    cd -
  • 返回当前目录的上级目录
    cd ..

3

mkdir

用途:创建新目录

语法:mkdir [OPTION]… DIRECTORY…

选项:
-p: 自动按需创建父目录;
-v: 显示详细过程;
-m MODE: 创建目录时直接给定权限,否则为默认权限;

4

rmdir

用途:删除空目录;

语法:rmdir [OPTION]… DIRECTORY…

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

注意:此命令仅用于删除空目录;

tree

用途:显示目录层级;

语法:tree [options] [directory]

选项:-L 指定显示目录的层级;

5

cp

用途:文件复制命令;

语法:

  • 单源复制: cp [OPTION]… [-T] SOURCE DEST
    • 如果DEST不存在,则事先创建此文件,并复制源文件的数据流至DEST中;
    • 如果DEST存在:
      • 如果DEST是非目录文件,则会覆盖目标文件;
      • 如果DEST是目录文件,则先在DEST目录下创建一个与源文件同名的文件,并复制其数据流到目标文件;
  • 多源复制:cp [OPTION]… SOURCE… DIRECTORY
    • 如果DEST不存在,错误;
    • 如果DEST 存在:
      • 如果DEST是非目录文件:错误;
      • 如果DEST是目录文件,分别复制每个文件至目标目录中,并保持原名;

6

选项:
-i:交互式复制,即覆盖之前提醒用户确认;
-f:强制覆盖目标文件;
-r,-R:递归复制目录;
-d:复制符号链接文件本身,而非其指向的源文件;

mv

用途:移动、重命名文件;

语法:mv [OPTION]… SOURCE… DIRECTORY

选项:
-i:交互式;
-f:强制覆盖;

注意:

  • 在同一个目录下是重命名;
  • 在不同目录下是移动;

rm

用途:删除文件;

语法:rm [OPTION]… FILE…

选项:
-i:交互式,给y表示同意删除;
-r:递归删除,交互式;
-f:强制删除,非交互提示;
-rf:组合使用;

建议:自建回收站目录,把不用的东西 move 到回收站目录,等确定不用了再使用 rm -rf 命令选项删除;


bash特性之—命令状态返回值

命令执行完成之后,其状态返回值会保存在 bash的特殊变量 $? 中,bash通过状态返回值来输出此结果:
成功:0
失败:1-255

9

注意:只针对上一条命令运行结果状态显示;

bash特性之—命令行展开

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

14

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

例:tmp{a,b} 相当于 /tmp/a /tmp/b;

7

15

练习

用命令行展开功能来完成以下练习:
(1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
[root@localhost test]# mkdir -pv /tmp/{a_,b_}{c,d}

10

11

(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@localhost tmp]# 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}}

[root@localhost tmp]# tree /tmp/mylinux

12

13

 

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

(0)
allanallan
上一篇 2018-05-19 12:33
下一篇 2018-05-19 15:16

相关推荐

  • Linux用户组管理及用户权限及管道符应用

    一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ]# who |  cut -d ‘ ‘ -f1 | sort -u who:显示所有已经登录用户的用户名 cut -d ‘ ‘ -f1:取第1列字段数据   sort -u:忽略相同行数据 二、取出最后登录到…

    2018-07-07
  • Linux笔记

    一、计算机系统(系统、硬件、)
    二、安装虚拟机

    2018-07-19
  • 網絡屬性配置2

    網絡屬性配置2 一.ip命令 [root@centos7 ~]# rpm -qf /usr/sbin/ip 或[root@centos7 ~]# rpm -qf `which ip` iproute-3.10.0-87.el7.x86_64 (查看某個文件是由哪個程序包安裝生成) ip – show / manipulate routing, d…

    Linux笔记 2018-05-03
  • YUM安装的MySQL(MariaDB)实现多实例运行

    生产环境中,可能需要多个数据库同时在线。但一台服务器只运行一个数据库实例势必会引起资源的浪费,因此,本文介绍如何将yum安装的MySQL多开,实现多实例运行。(二进制与编译安装步骤与此类似)

    Linux笔记 2018-06-12
  • linux 学习6

    1、简述osi七层模型和TCP/IP五层模型 1、 osi七层模型 1、应用层:OSI 参考模型中最靠近用户的一层,为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。 2、表示层:提供各种用于应用层数据的编码和转换功能,确保一个主机的应用层发送的数据能被另一个主机的应用…

    Linux笔记 2018-07-28
  • MySQL数据库第一部分之简介和安装

    mysql数据库的安装方式:源码安装;二进制安装;yum安装:

    2018-06-04

评论列表(1条)

  • 马哥教育
    马哥教育 2018-05-22 14:40

    最后一个题,看看/usr目录的对吗