Linux怎么创建指定目录并进入

你想在Linux中创建指定目录并直接进入该目录,有两种常用实现方式,分别适用于快速操作和脚本编写/严谨场景,具体如下:

一、快捷方式:一行命令直接创建并进入(最常用)

通过 && 连接 mkdir(创建目录)和 cd(进入目录)命令,实现"创建即进入",无需分步操作,语法和示例如下:

基本语法

bash 复制代码
mkdir 目标目录路径 && cd 目标目录路径

常用示例

  1. 创建当前目录下的子目录并进入

    bash 复制代码
    # 创建 test 目录,然后进入 test 目录
    mkdir test && cd test
    
    # 创建多层级子目录(如 dir1 下的 dir2)并进入最内层
    mkdir -p dir1/dir2 && cd dir1/dir2
  2. 创建绝对路径目录并进入

    bash 复制代码
    # 创建 /home/user/app 目录,然后进入该目录
    mkdir -p /home/user/app && cd /home/user/app

关键说明

  • &&:表示"前一个命令执行成功后,再执行后一个命令"(若目录创建失败,不会执行进入操作,避免报错)
  • -p:可选参数,用于创建多层级目录 (如 dir1/dir2),若目录已存在也不会报错,更安全实用

二、严谨方式:先判断目录是否存在,再创建并进入(适合脚本)

若在Shell脚本中使用,或需要避免"目录已存在"的提示,可先通过 if [ ! -d "目录路径" ] 判断目录是否不存在,再执行创建和进入操作,语法如下:

基本语法(脚本/手动执行均可)

bash 复制代码
# 定义目标目录路径(可替换为自己的目录)
target_dir="你的目录路径"

# 判断目录是否不存在,不存在则创建,最后进入目录
if [ ! -d "$target_dir" ]; then
    mkdir -p "$target_dir"
fi
cd "$target_dir"

示例

bash 复制代码
# 目标目录:~/Downloads/project
target_dir="~/Downloads/project"
if [ ! -d "$target_dir" ]; then
    mkdir -p "$target_dir"
fi
cd "$target_dir"

关键说明

  • [ ! -d "$target_dir" ]:判断条件,! 表示"非",-d 表示"判断是否为目录",整体意为"如果目标目录不存在"
  • 该方式不会因"目录已存在"而抛出 mkdir: cannot create directory: File exists 提示,更适合自动化脚本

三、补充技巧

  1. 创建并进入多层目录(必加 -p
    若直接创建 a/b/c 这种多层目录,不加 -p 会报错,必须搭配 -p 参数:

    bash 复制代码
    mkdir -p a/b/c && cd a/b/c
  2. 验证是否成功进入
    进入目录后,可通过 pwd 命令查看当前工作目录,确认是否在目标目录中:

    bash 复制代码
    pwd  # 输出当前目录路径,验证是否正确

四、总结

  1. 快速手动操作(优先推荐):mkdir -p 目录路径 && cd 目录路径-p 适配多层目录)
  2. 脚本/严谨场景:先通过 if [ ! -d "目录" ] 判断,再创建+进入,避免报错
  3. 核心命令:mkdir(创建)、cd(进入),通过 && 实现一键联动,-p 实现多层目录创建
相关推荐
不会C语言的男孩9 分钟前
Docker 在嵌入式设备中的常用玩法
运维·docker·容器
ylscode18 分钟前
CVE-2026-31694 漏洞深度分析:Linux 内核 FUSE 组件存在本地提权风险,普通用户可直取 root 权限
linux·运维·服务器
智脑API平台1 小时前
Codex CLI 怎么用 .env 配置 API Key?本地项目和自动化脚本接入教程
运维·自动化
无足鸟ICT1 小时前
【RHCA+】bash命令
linux·开发语言·bash
weixin_307779132 小时前
Linux下Docker Compose里运行的MySQL数据库故障诊断Shell脚本
linux·运维·mysql·docker·自动化
小生不才yz2 小时前
Shell脚本精读 · S14-02 | 脚本模板:从 20 行工具到可维护项目
linux
x-cmd2 小时前
Linus 9 年前说「模糊测试有效」——今天已成 OSS-Fuzz 时代铁律
linux·ai·rust·开源·自动化·agent·安全性测试
流浪0013 小时前
Git篇(三):吃透远程协作:SSH 密钥、分支、标签全流程实战指南
运维·git·ssh
六点_dn3 小时前
Linux学习笔记-chmod命令
linux·笔记·学习
AOwhisky3 小时前
Python 基础语法(上篇 + 下篇)——综合自测题
linux·windows·python