Can't Make New Dir with Mkdir
When I Run Mkdir. ./. ./Bin/Release_Linux/Resources Im Getting an Error $ Mkdir. ./. ./Bin/Release_Linux/Resources Mkdir: Cannot Create Directory ‘. ./...
When I run
mkdir ../../bin/Release_Linux/Resources
Im getting an error
$ mkdir ../../bin/Release_Linux/Resources
mkdir: cannot create directory ‘../../bin/Release_Linux/Resources’: No such file or directory
Or just
mkdir Release_Linux/Resources
mkdir: cannot create directory ‘Release_Linux/Resources’: No such file or directory
3 Answers
Probably a parent directory in the path does not exist.
You can try with
mkdir -p /path-to-directory/directory-name
See man mkdir
-p, --parents
no error if existing, make parent directories as needed
If you get a permission denied error, you have not permissions to create a directory in the specified path.
Check if you can get around the problem by modifying the group membership or ownership, so that you get the permission needed for the whole directory path involved.
Otherwise you need elevated permissions, so try with sudo
sudo mkdir -p /path-to-directory/directory-name
sudodus's answer appropriately addresses how to create all directories along the given path. Alternative way would be via Python. This is especially useful if you're developing software for Ubuntu in Python and need such functionality. Calling mkdir as external command would add overhead of additional process and extra forking which would waste resources. Luckily Python's standard library, specifically os module has makedirs() function:
$ python3 -c 'import os,sys;os.makedirs(sys.argv[1])' test_1/test2/test_3
$ tree test_1
test_1
└── test2
└── test_3
2 directories, 0 files
Note that such behavior also can be achieved in Perl, which is another scripting language that comes by default with Ubuntu.
I had this when the current directory literally didn't exist anymore.
I was in directory temp:
mark@mark:~/PycharmProjects/temp$ mkdir foo
mkdir: cannot create directory ‘foo’: No such file or directory
I saw the light when the current directory was empty (not even the hidden . and .. existed):
mark@mark:~/PycharmProjects/temp$ ll
total 0
One directory up temp does exist, but it is another directory with the same name. PyCharm must have deleted and recreated the project directory when I was rolling back too much changes and undoing the rollback.
mark@mark:~/PycharmProjects/temp$ cd ..
mark@mark:~/PycharmProjects$ ll
total 12
drwxrwxr-x 3 mark mark 4096 Nov 2 14:26 ./
drwxr-xr-x 40 mark mark 4096 Nov 2 14:50 ../
drwxrwxr-x 3 mark mark 4096 Nov 2 14:42 temp/
mark@mark:~/PycharmProjects$ cd temp
mark@mark:~/PycharmProjects$ mkdir foo
mark@mark:~/PycharmProjects$