You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需重复输入目录名创建同名后缀文件?(Shell技巧)

解决方法

1. 用变量简化重复输入

定义变量存储目录名,避免重复敲写:

dir=Navigation && touch $dir/$dir.jsx

如果需要同时创建目录(假设目录还不存在)和文件,可改成:

dir=Navigation && mkdir -p $dir && touch $dir/$dir.jsx

2. 正确使用括号展开

你之前的写法错误,正确的括号展开方式是将目录和文件名的重复部分合理拆分:

touch {Navigation/}Navigation.jsx

如果要批量创建同结构的组件文件(前提是目标目录已存在),还可以这样扩展:

touch {Navigation,Home,Profile}/{Navigation,Home,Profile}.jsx

这条命令会同时在Navigation、Home、Profile三个目录下,分别创建对应名称的.jsx文件。

3. 自定义Shell函数(长期高效方案)

如果频繁需要这类操作,可在你的Shell配置文件(如~/.bashrc或~/.zshrc)中添加自定义函数:

create_component() {
  mkdir -p "$1" && touch "$1/$1.jsx"
}

保存后执行source ~/.bashrc(对应你的配置文件)生效,之后只需输入:

create_component Navigation

就能自动创建Navigation目录(不存在则创建)和内部的Navigation.jsx文件,完全无需重复输入名称。

更合理的文件夹与文件创建流程
  • 按组件维度规划结构:React项目中建议每个组件单独占一个目录,配套存放样式、测试等文件,比如:
    src/
      components/
        Navigation/
          Navigation.jsx
          Navigation.css
          Navigation.test.jsx
    
  • 借助脚手架与编辑器插件:用create-react-app或Vite初始化项目,它们自带规范结构;编辑器安装如ES7 React/Redux snippets这类插件,可快速生成组件文件和模板代码,比手动敲命令高效得多。
  • 批量创建脚本:如果需要生成大量同结构组件,可写简单的Bash脚本,遍历组件名列表自动完成目录和文件的创建。

内容的提问来源于stack exchange,提问作者Xolkardus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 03:01:08