首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从相邻目录运行NPM脚本,但保留当前工作目录

是指在命令行中执行NPM脚本时,可以指定脚本所在的相邻目录,并且在执行脚本时保持当前工作目录不变。

在NPM中,可以通过使用--prefix参数来指定脚本所在的相邻目录,同时使用--prefix参数可以保持当前工作目录不变。

下面是一个完善且全面的答案:

相邻目录运行NPM脚本,但保留当前工作目录是指在命令行中执行NPM脚本时,可以指定脚本所在的相邻目录,并且在执行脚本时保持当前工作目录不变。这在一些特定的场景下非常有用,例如在一个项目的根目录中执行脚本,但脚本实际上位于项目的子目录中。

要实现这个目标,可以使用NPM的--prefix参数。该参数用于指定脚本所在的相邻目录。同时,使用--prefix参数可以保持当前工作目录不变,确保脚本在执行时使用正确的相对路径。

下面是一个示例,假设我们有一个项目的目录结构如下:

代码语言:txt
复制
- project
  - scripts
    - script.js
  - src
    - index.js
  - package.json

我们想要在project目录下执行script.js脚本,但保持当前工作目录为project。可以使用以下命令:

代码语言:txt
复制
npm run --prefix ./scripts script.js

上述命令中,--prefix ./scripts指定了脚本所在的相邻目录为./scripts,而script.js是要执行的脚本。

这样,无论我们在哪个目录下执行该命令,都会将当前工作目录设置为project,并在project/scripts目录下执行script.js脚本。

推荐的腾讯云相关产品:腾讯云云服务器(CVM)

腾讯云云服务器(CVM)是腾讯云提供的一种弹性计算服务,可为用户提供安全、可靠、高性能的云端计算能力。用户可以根据自身需求选择不同配置的云服务器实例,并根据业务需求灵活调整实例规格。

腾讯云云服务器(CVM)的优势包括:

  1. 弹性扩展:用户可以根据业务需求随时增加或减少云服务器实例的数量,实现弹性扩容和缩容。
  2. 可靠性高:腾讯云云服务器(CVM)采用分布式架构和高可用设计,保证用户的业务在故障发生时能够快速切换到其他可用节点,提供高可靠性的服务。
  3. 网络性能优秀:腾讯云云服务器(CVM)提供高性能的网络传输能力,保证用户的业务能够快速、稳定地进行数据传输。
  4. 安全可靠:腾讯云云服务器(CVM)提供多重安全防护机制,包括网络隔离、访问控制、数据加密等,保障用户的数据安全。

腾讯云云服务器(CVM)适用于各种场景,包括网站托管、应用程序部署、大数据处理、人工智能等。用户可以根据自身需求选择不同配置的云服务器实例,并根据业务需求灵活调整实例规格。

了解更多关于腾讯云云服务器(CVM)的信息,请访问:腾讯云云服务器(CVM)产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

如何在Ubuntu 14.04上运行解析服务器

为了帮助其用户服务转移,Parse发布了一个名为Parse Server的后端的开源版本,可以部署到运行Node.js和MongoDB的环境中。...第1步 - 安装Node.js和开发工具 首先将当前工作路径更改为sudo用户的主目录: cd ~ NodeSource为Debian和Ubuntu Node.js包提供了一个Apt存储库。.../nodesource_setup.sh 接下来,运行nodesource_setup.sh。告诉它保留用户的环境变量以便脚本可以访问它们的-E选项sudo: sudo -E bash ....: cd ~/parse-server-example 使用npm安装依赖性,包括在当前目录的parse-server,: npm install npm将获取所需的所有模块parse-server并将其存储在...第3步 - 测试示例应用程序 使用npm启动该服务。这将运行package.json的start属性中定义的命令。

3K10
  • 12 Dockerfile

    WORKDIR 设置当前工作目录。我们可以在 Dockerfile 中重复使用这条指令来设置不同的工作目录。...当容器运行时,ARG 变量将不可用。如果我们想在正在运行的容器上保留变量,请使用 ENV 指令。 CMD 它用于在正在运行的容器中执行命令。只能由一个 CMD,如果由多个 CMD,则仅适用于最后一个。..../ 上面的行会将package.json和package-lock.json文件主句目录复制到容器中的当前工作目录。...将行将所有文件和文件夹主机目录复制到容器中的当前工作目录。 暴露端口(EXPOSE) 如果我们的应用程序需要监听特定的端口,则需要在 Dockerfile 中公开暴露该端口。...Dockerfile 示例 # 拉取官方镜像 FROM node:14 # 设置工作目录 WORKDIR /app # 主机复制文件到工作目录 COPY package*.json ./ # npm

    18611

    .gitlab-ci.yml关键词完整解析(一)

    你只需要在这里写你的项目安装,编译执行,如 npm install 另外值得一提的是,脚本的工作目录就是当前项目的根目录,所有可以就像在本地开发一样。...此外script可以是单行或者多行 单行脚本 job: script: npm install 多行脚本 job: script: - npm config set sass_binary_site...每个任务可以指定一个Runner,可以指定多个标签,runner却只能一个。以一个为准。tags是在我们注册Runner是配置的,后续也可以更改。...缓存是将当前工作环境目录中的一些文件,一些文件夹存储起来,用于在各个任务初始化的时候恢复。...以备后用 cache下的参数有 paths 当前工作环境下的目录 key 存储的key,key不变不会重新生成缓存, prefix 使用一些文件制作成文件hash值,当做key的一部分, untracked

    1K21

    接口测试|HttpRunner简介及安装

    HttpRunner简介及安装HttpRunner简介HttpRunner 是一款面向HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控...HttpRunner运行环境HttpRunner 是一个基于Python 开发的测试框架,可以运行在macOS、Linux、Windows 系统平台上Python 版本:HttpRunner 支持Python...虽然HttpRunner 暂时保留了对Python 2.7 的兼容支持,强烈建议使用Python 3.4 及以上版本操作系统:推荐使用macOS/LinuxHttpRunner设计理念充分复用优秀的开源项目...,存储项目中逻辑运算函数该文件存在时,将作为项目根目录定位标记,其所在目录即被视为项目工程的根目录当前工作目录CWD)该文件不存在时,运行测试的路径将被视为当前工作目录CWD测试用例文件中的相对路径(...例如.csv)均需基于当前工作目录CWD运行测试后,测试报告文件夹(reports)会生成在当前工作目录CWD.env(可选):存储项目环境变量.csv(可选):项目数据文件,用于进行数据驱动reports

    45520

    teprunner测试平台部署到Linux系统Docker

    WORKDIR定义了镜像当前工作目录,意思是在执行后面COPY操作时,镜像目录用哪一个。...这里的Shell脚本有两个阶段,第1阶段是使用node编译: docker run # 运行镜像 --rm # 运行后删除容器 -v $(pwd)/...../:/data/src # $(pwd)指当前工作目录,把根目录挂载到data/src -v /root/.npm/_logs:/root/.npm/_logs # 挂载日志文件 -w /data/...src/ # 镜像当前工作目录 $BUILDER_IMAGE # 运行镜像为node:latest,用node编译前端代码 /bin/sh -c "npm install && npm run build...小结 本文先介绍了本地运行和Nginx部署的示意图,涉及到跨域访问和反向代理。接着编写deploy脚本,编译代码,构建镜像。最后部署到Ubuntu系统的Docker中运行起来。

    1.5K10

    写给前端同学的终端修炼手册

    ❝它本质上是一个符号,表示“这里的内容是要在终端中运行的!” 即使在许多现代shell语言如Zsh中不再使用$作为提示符字符,这种符号的意义仍然保留了下来。...我们可以使用 ls 命令查看当前目录的内容(ls是List的缩写): $ ls 运行 'ls' 命令,显示当前工作目录中的所有文件和文件夹 我们可以使用 cd(Change Directory)命令在文件系统中移动...然后运行 'pwd' 以确认新位置 这相当于在GUI文件资源管理器中双击PersonWorkSpace目录。 细心的朋友可以看到,提示符波浪号(~)变为PersonWorkSpace。...运行 NPM 脚本 当第三方库已经下载到本地后,接下来我们就可以通过对应的命令执行操作了。...在 IDE 中打开项目 当我想开始一个项目时,我首先在终端中导航到项目的根目录。然后我运行以下命令: cd path/to/project code . 如前所述,. 指的是当前工作目录

    13310

    拥抱 Vite2.0 系列(一)

    Vite固执己见,并具有开箱即用的明智默认值,通过其Plugin API和JavaScript API具有完全键入支持,它也可以高度扩展。 浏览器支持 对于开发:需要本地ESM动态导入支持。...例如,要搭建Vite + Vue项目,请运行: # npm 6.x npm init @vitejs/app my-vue-app --template vue # npm 7+, extra double-dash...Vite还能够处理解析为根目录以外的文件系统位置的依赖项,即使在基于Monorepo的设置中也可以使用。 指定备用根 运行vite时以当前工作目录为根目录启动开发服务器。...命令行界面 在安装了Vite的项目中,您可以vite在npm脚本中使用二进制文件,也可以直接通过运行它npx vite。...这是脚手架Vite项目中的默认npm脚本: { "scripts": { "dev": "vite", // start dev server "build": "vite build

    83310

    如何在 npm 上发布二进制文件?

    f_cli_darwin_arm64 f_cli_darwin_x64 f_cli_windows_x64 对于快速构建一个npm目录我们可以使用npm init然后一路回车。...这意味着我们可以发布单独的软件包,每个软件包只包含一个特定于平台的二进制文件,其中的os和cpu字段指明了这些软件包适用的体系结构,软件包管理器将自动安装正确的软件包。...❞ 目录结构 其实主包的目录结构也很简单。...) } ❝这段代码的作用是根据当前的操作系统和架构, Npm 下载特定平台的二进制文件,并将其写入磁盘。 ❞ 大部分的代码都有注释,具体的功能也一目了然,这里就不再过多解释。...如果你当前工作环境中只有一个Node环境,因为我们cli中存在文件的写入操作,此时在执行命令时,会有一个写入操作权限的错误警告。 其实这是一类错误,也就是npm在执行时候需要sudo的操作权限。

    20610

    打造高效前端工作环境-tmuxinator

    前言  虽然tmux能让我们方便组织工作环境,每次重新打开会话时都需要手动重新创建窗口、窗格和执行各种程序,能不能像VS那样以工程为单位保存窗口、窗格和各种所需执行的程序的信息呢?...l  安装Tmuxinator $ gem install tmuxinator  配置别名mux和tmuxinator子命令智能补全 自动根据使用的shell(bash,zsh,fish)下载配置脚本...root: ~/repos/note/ # 可在窗口下通过root来配置该窗口下各命令的当前工作目录 panes: - vim pugjs.md...这样我们就能在任意目录下通过命令mux 打开项目了。  一旦误删了项目配置那么就要重新设置了,能不能把它也挪到项目中通过版本管理器(git etc.)作保障呢?...当下次版本管理器下载项目后,直接执行 $ ln -s ~/repos/demo/.tmuxinator.yml ~/.tmuxinator/demo.yml 2.引入变量到项目配置文件中  参数形式

    1.4K100

    三种方法在CVM安装Node.js

    -o nodesource_setup.sh 您可以使用nano(或者其他您喜欢的编辑器)检查此脚本的内容: nano nodesource_setup.sh 使用sudo运行以下脚本: sudo bash...Nodesource运行安装脚本后,您可以像上面一样安装Node.js包: sudo apt install nodejs 要检查在这些初始步骤之后安装了哪个版本的Node.js,请输入: nodejs...npm使用主目录中的配置文件来跟踪更新。它将在您第一次运行时创建npm。...: nano install_nvm.sh 使用bash运行脚本: bash install_nvm.sh 它会将软件安装到主目录的子目录中~/.nvm。...这将安装包: ~/.nvm/versions/node/node_version/lib/node_modules/express 全局安装模块将允许您从命令行运行命令,但是您必须将程序包链接到本地范围以程序中请求它

    3.4K50

    使用 docker 作为 Web 开发服务器

    php,python 等脚本类的 web 开发也可以使用这个方法,只需要更换相应的 server 镜像作为容器运行的基础环境。 前提条件 安装了 docker:安装方法略。...这个例子使用了 python 作为脚本语言。 以下脚本我在 mac 中运行通过。...,如果能自动刷新浏览器就圆满了。下面咱们试着来解决此问题。 开发过程中的自动刷新 我想直接通过外部脚本监控文件的改变。并自动刷新浏览器。 docker 脚本也放在里面一起执行算了。...FileSystemEventHandler # 启动浏览器,并访问目标地址 driver = webdriver.Chrome() driver.get('http://localhost:8500') # 当前工作目录...我使用了 chome,提示无法找到 chromedriver,下载一个安装好了,从这里下载:http://npm.taobao.org/mirrors/chromedriver,找到和你当前浏览器版本匹配的安装包

    3K126

    如何在Ubuntu 16.04上安装Node.js

    x -o nodesource_setup.sh 您可以使用nano(或您喜欢的文本编辑器)检查此脚本的内容: nano nodesource_setup.sh 用sudo并运行脚本: sudo bash...nodesource运行安装脚本后,您可以像上面一样安装Node.js包: sudo apt-get install nodejs 要检查在这些初始步骤之后安装了哪个版本的Node.js,请输入: nodejs...npm使用主目录中的配置文件来跟踪更新。它将在您第一次运行时创建npm。...nvm脚本将利用这些工具构建必要的组件: sudo apt-get update sudo apt-get install build-essential libssl-dev 安装必备软件包后,可以项目的...-o install_nvm.sh 用nano检查安装脚本: nano install_nvm.sh bash运行脚本: bash install_nvm.sh 它会将软件安装到主目录~/.nvm的子目录

    7.2K61
    领券