linux下执行bin不加./怎么直接运行

Linux运行Bin文件
本文介绍如何在Linux环境下,不使用'./'前缀直接运行可执行bin文件的方法。通过将bin文件所在路径添加到环境变量$PATH中实现。

    在linux平台下,我们编译的可执行bin文件,如果需要运行,则直接./test  即可运行, 如果我们不想加上./怎么直接运行test这个bin呢?

    我们先来分析下这个./test是啥意思,首先test是可执行bin的名字,./表示是当前目录,那么简单了,其实./就是告知test的路径。


    我们可以echo  $PATH, 可以查看当前设置的环境变量,我们吧test的路径,加入到PATH变量中去,那么就可以直接执行test了。

在 Windows 系统下,使用 `make build` 执行 `mkdir -p bin/ && go build -ldflags "-X main.Version=$(VERSION)" -o ./bin/ ./...` 命令报错,通常是因为该命令包含了 Unix/Linux 系统的特定语法,Windows 默认的命令提示符(CMD)或 PowerShell 并直接支持这些语法。以下是一些解决办法: ### 1. 使用 Git Bash Git Bash 是 Windows 上的一个模拟 Unix/Linux 环境的工具,它支持 `mkdir -p` 等 Unix/Linux 命令。 - **安装 Git Bash**:如果未安装,可从 [Git 官方网站](https://git-scm.com/downloads) 下载并安装。 - **运行命令**:打开 Git Bash,进入项目目录,然后执行 `make build`。 ### 2. 手动拆分命令 将 `mkdir -p bin/ && go build -ldflags "-X main.Version=$(VERSION)" -o ./bin/ ./...` 拆分成 Windows 系统支持的命令。 #### 使用 CMD ```batch mkdir bin 2>nul set VERSION=your_version_here go build -ldflags "-X main.Version=%VERSION%" -o ./bin/ ./... ``` #### 使用 PowerShell ```powershell New-Item -ItemType Directory -Force -Path bin $env:VERSION = "your_version_here" go build -ldflags "-X main.Version=$env:VERSION" -o ./bin/ ./... ``` ### 3. 修改 Makefile 如果使用的是 Makefile,可以修改其中的命令以适应 Windows 系统。 ```makefile ifeq ($(OS),Windows_NT) MKDIR = mkdir bin 2>nul VERSION_VAR = set VERSION=$(VERSION) && else MKDIR = mkdir -p bin/ VERSION_VAR = VERSION=$(VERSION) endif build: $(MKDIR) $(VERSION_VAR) go build -ldflags "-X main.Version=$(VERSION)" -o ./bin/ ./... ``` ### 4. 使用第三方工具 可以使用 Cygwin 或 MinGW 等工具,它们提供了类似 Unix/Linux 的环境,支持 Unix/Linux 命令。 - **安装 Cygwin 或 MinGW**:从官方网站下载并安装。 - **配置环境**:安装完成后,将其可执行文件路径添加到系统环境变量中。 - **运行命令**:打开相应的终端,进入项目目录,执行 `make build`。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值