translating

This commit is contained in:
geekpi 2023-02-28 08:42:06 +08:00
parent 08bf0e2898
commit 44ef2ce8d7
2 changed files with 140 additions and 144 deletions

View File

@ -1,144 +0,0 @@
[#]: subject: "Making Directories in Linux Terminal"
[#]: via: "https://itsfoss.com/make-directories/"
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
Making Directories in Linux Terminal
======
In the [previous chapter][1] of the Terminal Basics series, you learned about changing folders in the Linux command line.
I gave an exercise at the end that briefly mentioned making directories.
In this part of the series, I'll discuss how you can make new folders in the Linux command line using the mkdir command.
```
mkdir dir_name
```
mkdir is short of make directories. Let's see about using this command.
📋
In case you didn't know, folders are called directories in Linux.
### Making a new directory in Linux
You should be familiar with the [concept of absolute and relative paths in Linux][2] by now. If not, please refer to this tutorial.
Absolute vs Relative Path in Linux: Whats the Difference?In this essential Linux learning chapter, know about the relative and absolute paths in Linux. Whats the difference between them and which one should you use.![][3]Linux HandbookAbhishek Prakash![][4]
Open the terminal on your system if it is not already opened. Normally, you start with your home directory (/home/username). But for the sake of this tutorial and to recall a couple of things, I presume you are not in your home directory.
So, change to your home directory first.
```
cd
```
Yes. If you simply enter cd without any options and arguments, it takes you to your home directory. You could also use `cd ~` among other methods.
Here, make a new directory called practice.
```
mkdir practice
```
Can you switch to this newly created practice directory?
```
cd practice
```
Great! Now you have a dedicated folder where you'll practice the Linux command line tutorials in this series.
![Example of making new directory in Linux][5]
### Creating multiple new directories
You just created a new directory. What if you have to create more than one? Let's say three of them.
You may use the mkdir command three times in a row for each of them. It will work. However, it is not really needed. You can save time and effort by creating multiple directories at the same time like this:
```
mkdir dir1 dir2 dir3
```
Go on and do that please. You can list the contents of the `practice` directory to see all the newly created directories. More on the ls command later.
![Create multiple new directories in Linux with mkdir command][6]
💡
You cannot have two folders or files of the same name in the same location.
### Making multiple nested subdirectories
So, you now know about creating multiple directories at once.
But what if you have to create a nested directory structure? Let's say that you have to create a directory subdir2 inside subdir1 inside dir1.
```
dir1/subdir1/subdir2
```
The problem here is that subdir1 does not exist. So if you try `mkdir dir1/subdir1/subdir32, you'll get an error:
```
[email protected]:~/practice$ mkdir dir1/subdir1/subdir2
mkdir: cannot create directory dir1/subdir1/subdir2: No such file or directory
```
If you didn't know better, you would go for `mkdir dir1/subdir1` and then run `mkdir dir1/subdir2`. That will work. However, there is a much better way.
You use the `-p` option, which makes parent directories if needed. If you run the command below:
```
mkdir -p dir1/subdir1/subdir2
```
It will create subdir1 and then subdir2 inside subdir1.
> 💡 There is no naming convention, but it is better to avoid spaces in file and directory names. Use underscore or dash instead because handling spaces in file/directory names requires special effort.
### Test your knowledge
This is rather a short tutorial because the mkdir command has only a few options.
Now, let me give you some practice exercises to utilize the `practice` directory you had created earlier.
- Without entering the `dir2` directory, create two new subdirectories in it.
- Without entering the `dir3` directory, create two-level nested subdirectories (subdir1/subdir2)
- Change to the dir2 directory. From here, create a directory named temp_stuff in your home directory. Don't worry; we will delete it later in this tutorial series.
- Go back to the parent `practice` directory and try to create a directory named `dir3`. You see an error. Can you make it go away with the `-p` option?
You can [discuss this exercise in the community forum][7].
In the next chapter of the Terminal Basics series, you'll learn about listing the contents of a directory with the ls command.
Do let me know if you have questions or suggestions.
--------------------------------------------------------------------------------
via: https://itsfoss.com/make-directories/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[译者ID](https://github.com/译者ID)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/abhishek/
[b]: https://github.com/lkxed/
[1]: https://itsfoss.com/change-directories/
[2]: https://linuxhandbook.com/absolute-vs-relative-path/
[3]: https://linuxhandbook.com/content/images/size/w256h256/2021/08/Linux-Handbook-New-Logo.png
[4]: https://linuxhandbook.com/content/images/2021/04/absolute-relative-path-linux.png
[5]: https://itsfoss.com/content/images/2023/02/make-directory-example.svg
[6]: https://itsfoss.com/content/images/2023/02/create-multiple-directories-linux.png
[7]: https://itsfoss.community/t/exercise-in-making-directories-in-linux-terminal/10227

View File

@ -0,0 +1,140 @@
[#]: subject: "Making Directories in Linux Terminal"
[#]: via: "https://itsfoss.com/make-directories/"
[#]: author: "Abhishek Prakash https://itsfoss.com/author/abhishek/"
[#]: collector: "lkxed"
[#]: translator: "geekpi"
[#]: reviewer: " "
[#]: publisher: " "
[#]: url: " "
在 Linux 终端中创建目录
======
在终端基础系列的[上一章][1]中,你学到了在 Linux 命令行中改变文件夹的知识。
我在最后给出了一个练习,简单地提到了创建目录。
在本系列的这一部分,我将讨论如何使用 mkdir 命令在 Linux 命令行中建立新的文件夹。
```
mkdir dir_name
```
mkdir 是 make directories 的简称。让我们来看看这个命令的使用情况。
📋
如果你不知道,文件夹在 Linux 中被称为目录。
### 在 Linux 中创建一个新目录
你现在应该已经熟悉了[Linux中绝对路径和相对路径的概念][2]。如果没有,请参考本教程。
如果你的系统还没有打开终端,请打开它。通常情况下,你从主目录(/home/username开始。但为了本教程和回忆一些事情我假定你不在你的主目录中。
所以,先换到你的主目录。
```
cd
```
是的,如果你简单地输入 cd没有任何选项和参数它就会把你带到你的主目录。你也可以使用 `cd ~` 等方法。
在这里,建立一个新的目录,叫做 practice。
```
mkdir practice
```
你能切换到这个新建立的 practice 目录吗?
```
cd practice
```
很好! 现在你有了一个专门的文件夹,你将在这里练习本系列中的 Linux 命令行教程。
![Example of making new directory in Linux][5]
### 创建多个新目录
你刚刚创建了一个新的目录。如果你要创建不止一个呢?比方说,有三个。
你可以对每个目录连续使用三次 mkdir 命令。这将会起作用。然而,这并不是真的需要。你可以像这样同时创建多个目录来节省时间和精力:
```
mkdir dir1 dir2 dir3
```
请继续这样做吧。你可以列出 `practice` 目录的内容,查看所有新创建的目录。以后会有更多关于 ls 命令的内容。
![Create multiple new directories in Linux with mkdir command][6]
💡
你不能在同一地方有两个同名的文件夹或文件。
### 创建多个嵌套的子目录
你现在知道了一次创建多个目录的方法。
但是,如果你要创建一个嵌套的目录结构呢?比方说,你必须在 dir1 里面的 subdir1 里面创建一个目录 subdir2。
```
dir1/subdir1/subdir2
```
这里的问题是 subdir1 并不存在。所以如果你尝试 `mkdir dir1/subdir1/subdir32`,你会得到一个错误:
```
[email protected]:~/practice$ mkdir dir1/subdir1/subdir2
mkdir: cannot create directory dir1/subdir1/subdir2: No such file or directory
```
如果你不知道的话,你会选择 `mkdir dir1/subdir1`,然后运行 `mkdir dir1/subdir2`。这将会起作用。然而,有一个更好的方法。
你使用`-p`选项,它会在需要时创建父目录。如果你运行下面的命令:
```
mkdir -p dir1/subdir1/subdir2
```
它将创建subdir1然后在subdir1里面创建subdir2。
> 💡 没有命名惯例,但最好在文件和目录名中避免空格。使用下划线或破折号代替,因为处理文件/目录名中的空格需要额外精力。
### 测试你的知识
这是一个相当简短的教程因为mkdir命令只有几个选项。
现在,让我给你一些实践练习,以利用你先前创建的 `practice` 目录。
- 不进入 `dir2` 目录,在其中创建两个新的子目录。
- 不进入 `dir3` 目录创建两级嵌套子目录subdir1/subdir2
- 进入 dir2 目录。在这里,在你的主目录下创建一个名为 temp_stuff 的目录。不要担心,我们将在本系列教程的后面删除它。
- 回到父目录 `practice`,尝试创建一个名为 `dir3` 的目录。你看到一个错误。你能用 `-p` 选项使它消失吗?
你可以[在社区论坛讨论这个练习][7]。
在终端基础系列的下一章中,你将学习如何用 ls 命令列出一个目录的内容。
如果你有问题或建议,请告诉我。
--------------------------------------------------------------------------------
via: https://itsfoss.com/make-directories/
作者:[Abhishek Prakash][a]
选题:[lkxed][b]
译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://itsfoss.com/author/abhishek/
[b]: https://github.com/lkxed/
[1]: https://itsfoss.com/change-directories/
[2]: https://linuxhandbook.com/absolute-vs-relative-path/
[5]: https://itsfoss.com/content/images/2023/02/make-directory-example.svg
[6]: https://itsfoss.com/content/images/2023/02/create-multiple-directories-linux.png
[7]: https://itsfoss.community/t/exercise-in-making-directories-in-linux-terminal/10227