Ubuntu 20.04 整合 bash 命令,并简化命令

0 背景

使用某个服务器时,经常先到目录下,再启动

bash 复制代码
$ cd ~/softwares/trojan
$ ./trojan
Welcome to trojan 1.16.0
[2024-09-02 16:54:36] [WARN] trojan service (client) started at 127.0.0.1:1080

如果直接使用绝对路径执行,就会报错

bash 复制代码
$ ~/softwares/trojan/trojan
Welcome to trojan 1.16.0
[2024-09-02 16:56:29] [FATAL] fatal: config.json: cannot open file
[2024-09-02 16:56:29] [FATAL] exiting. . . 

怀疑找不到 config.json ,与路径有关

1 整合命令

1.1 方法1

bash 复制代码
cd ~/softwares/trojan && ./trojan

&&:逻辑AND操作符,仅当前一个命令成功时,才会执行后一个命令

1.2 方法2

bash 复制代码
pushd ~/softwares/trojan > /dev/null && ./trojan && popd > /dev/null
  • pushd ~/softwares/trojan:将当前目录压栈,然后切换到指定目录。
  • /dev/null:将命令输出重定向到/dev/null,避免显示目录切换信息。

    *./trojan:执行程序。

  • popd > /dev/null:执行完毕后,将原先的目录弹出栈并切换回去,同时将输出重定向到/dev/null。

2. 简化命令

在.bashrc或.bash_aliases文件中设置别名:

bash 复制代码
alias trojan="cd ~/softwares/trojan && ./trojan"

or

bash 复制代码
alias trojan="pushd ~/softwares/trojan > /dev/null && ./trojan && popd > /dev/null"

然后

bash 复制代码
$ source ~/.bashrc
$ trojan
Welcome to trojan 1.16.0
[2024-09-02 17:16:44] [WARN] trojan service (client) started at 127.0.0.1:1080
相关推荐
2739920294 小时前
Ubuntu 文件系统修复指南
linux·ubuntu·fsck
i建模5 小时前
Ubuntu 中使用 LVM(逻辑卷管理)挂载磁盘
linux·运维·ubuntu
夜星辰20235 小时前
在 Ubuntu 里创建 Docker 容器,与在 Windows 上安装 VMware Workstation Pro 虚拟机的区别
windows·ubuntu·docker
AzusaFighting6 小时前
Dify (Ubuntu 24.04 Noble x64)部署教程
linux·运维·ubuntu
Darkdreams6 小时前
Java进阶-在Ubuntu上部署SpringBoot应用
java·spring boot·ubuntu
Roselind_Yi6 小时前
云计算实验实操|Keystone安装配置+CloudSim仿真平台部署(超详细图文版)
java·经验分享·笔记·ubuntu·云计算·vim·虚拟机
守护安静星空7 小时前
ubuntu vscode 调试 at32f435vmt7基于AT32IDE
linux·运维·笔记·vscode·ubuntu
nudt_qxx7 小时前
Ubuntu 26.04 换国内源 清华源 阿里源 中科大源 华为源
linux·windows·ubuntu
森叶8 小时前
深入解析:Claude 桌面应用与 Chrome 扩展的 Native Messaging 通信机制
前端·chrome
bitbrowser8 小时前
2026 PC端多Chrome账号管理指南:从日常切换到防关联实战
前端·chrome