mkdir 创建目录

1、命令格式

mkdir [option]   <目录名>...

2、命令功能

通过 mkdir 命令可以实现在指定位置创建以 DirName(指定的文件名)命名的文件夹或目录。要创建文件夹或目录的用户必须对所创建的文件夹的父文件夹具有写权限。

同一个目录下不能有同名的(区分大小写)文件和目录。 

3、常用参数

-m, 设定权限<模式> (类似 chmod)

-p,在创建目录之前的目录不存在,先创建上级目录 ,即创建目录之前先创建父目录

-v,  每次创建新目录都显示信息

--help   显示此帮助信息并退出

 --version  输出版本信息并退出

4.常用范例

1:在当前目录下创建test目录

命令:mkdir test

[root@server ~]# mkdir test
[root@server ~]# ls -d test/
test/
[root@server ~]#


2:在当前目录下创建1/2/3目录,如果上级目录不存在则先创建上级目录

命令:mkdir -pv1/2/3

[root@server ~]# mkdir -pv 1/2/3
mkdir: created directory `1'
mkdir: created directory `1/2'
mkdir: created directory `1/2/3'


3:在/tmp/下创建logs目录

命令:mkdir /tmp/logs

[root@server ~]# mkdir  /tmp/logs
[root@server ~]# ll -d /tmp/logs/
drwxr-xr-x. 13 root root 4096 Dec  1 20:53 /tmp/logs/


4:在当前目录下,创建权限为777test1目录

命令:mkdir -m 777 test1

[root@server ~]# mkdir -m 777 test1
[root@server ~]# ll -d test1/
drwxrwxrwx. 2 root root 4096 Dec  7 20:45 test1/
[root@server ~]#


5:一个命令创建多个目录,用命令行展开实现

创建 mylinux/usr/local/bin,mylinux/usr/local/sbin mylinux/etc/systconfig mylinux/etc/init.d mylinux/bin mylinux/sbin

命令:mkdir -pv mylinux/{usr/local/{bin,sbin},etc/{sysconfig,init.d},bin,sbin}

提示:命令行展开mkdir{test1,test2};创建目录test1和目录test2

[root@server ~]# mkdir -pv /tmp/mylinux/{usr/local/{bin,sbin},etc/{sysconfig,init.d},bin,sbin}
mkdir: created directory `mylinux'
mkdir: created directory `mylinux/usr'
mkdir: created directory `mylinux/usr/local'
mkdir: created directory`mylinux/usr/local/bin'
mkdir: created directory`mylinux/usr/local/sbin'
mkdir: created directory `mylinux/etc'
mkdir: created directory`mylinux/etc/sysconfig'
mkdir: created directory `mylinux/etc/init.d'
mkdir: created directory `mylinux/bin'
mkdir: created directory `mylinux/sbin'
[root@server ~]# tree mylinux/
mylinux/
├── bin
├── etc
│  ├──init.d
│  └──sysconfig
├── sbin
└── usr
    └── local
        ├── bin
        └── sbin
 
9 directories, 0 files

常用小命令

pwd 显示所在目录的路径

命令格式:pwd [-L|-P]

basename:取路径基名

命令格式:basename  DIRECTORY

dirname:取路径目录名

命令格式:dirname  DIRECTORY

 

常用实例

显示当前路径

命令:pwd

[root@server~]# pwd
/root
[root@server~]#


取/etc/sysconfig/network-scripts/ifcfg-eth0的基名
命令:basename/etc/sysconfig/network-scripts/ifcfg-eth0

[root@server~]# basename /etc/sysconfig/network-scripts/ifcfg-eth0 
ifcfg-eth0
[root@server~]#


取/etc/sysconfig/network-scripts/ifcfg-eth0的路径名

[root@server~]# dirname /etc/sysconfig/network-scripts/ifcfg-eth0 
/etc/sysconfig/network-scripts
[root@server~]#

basename和dirname常用于脚本编程中