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
相关推荐
好想有猫猫2 小时前
【Git】初识Git
linux·c++·git·ubuntu·elasticsearch·学习方法
读书,代码与猫5 小时前
【裸机装机系列】3.kali(ubuntu)-更新sources.list并重启
linux·经验分享·后端·ubuntu·debian
Kika写代码17 小时前
Linux与Ubuntu:内核与发行版的关系
linux·运维·ubuntu
rainsc17 小时前
ubuntu莫名的 系统出现文件系统只读
运维·ubuntu
守城小轩21 小时前
Brave编译指南2024 Windows篇:拉取Brave源码(六)
chrome·chrome devtools·指纹浏览器·浏览器开发·brave
xidianjiapei00121 小时前
Ubuntu Juju 与 Ansible的区别
linux·ubuntu·云原生·ansible·juju
StruggleRookie1 天前
ubuntu20.4安装Qt5.15.2
ubuntu·qt5
叶常落1 天前
【chrome插件】只需一键,浏览器的书签信息就可以导出成为CSV了
chrome
the丶only1 天前
获取zabbix API 监控数据shell脚本,自动日常巡检服务器信息、并发送指定群组
linux·运维·服务器·自动化·bash·zabbix
神奇椰子1 天前
Linux中常见的Docker问题及解决方法
linux·ubuntu·docker·eureka·centos·云计算·浪浪云