我使用以下命令
创建了一个目录/usr/bin/mkdir -p "${exa}/isrvce-backup";
exa ---> /样品/示例
我看到isrvce-backup已创建,当我尝试访问该文件夹时,收到以下错误消息
isrvce-backup is not a Directory
任何人都可以帮助解决此问题,我使用的是Shell脚本
当我执行ls
命令时,我可以在该列表中看到isrvce-backup
条目
我尝试访问该文件夹,如cd isrvce-backup
命令
编辑:执行ls -l isrvc*
命令后,我得到以下输出
-rwx------+ username none 37 date/time isrvce-backup
如果我看到isrvce-backup文件夹的desc,它似乎是文件。
我想知道mkdir将如何创建一个包含文件持久性的文件夹,而不是一个完整的目录
2)我尝试直接在unix框中创建相同的目录,它工作正常 但有些人如何从shell脚本中解脱出来。
答案 0 :(得分:3)
我不能重现你提到的错误。我使用bash-3.2并查看正在创建的目录。如果您尝试使用bash,那么请指定您的bash版本(或任何其他shell),确切的代码片段导致此错误以及以下命令的输出正在创建的目录(cat,ls -l,file,stat)等。
$ cat mkdir.sh
#! /bin/bash
exa="/sample"
mkdir -p "${exa}/c"
touch "${exa}/c/d"
file "${exa}/c/d"
$ sudo bash mkdir.sh ## asks password as the dir is being created on /
Password:
/sample/c/d: empty
$ ls -l /sample/
total 0
drwxr-xr-x 3 root wheel 102 Mar 9 18:02 c
$ ls -l /sample/c
total 0
-rw-r--r-- 1 root wheel 0 Mar 9 18:07 d