我可以使用 sudo 运行从 .bashrc 加载的命令吗?

syn*_*gma 6 bash sudo bashrc

我的.bashrc文件中定义了一些自定义函数和别名。有时我需要以 root 身份执行 whem。然后我做这样的事情:

$ sudo custom_cmd 80                                                                                                                                   
sudo: custom_cmd: command not found
Run Code Online (Sandbox Code Playgroud)

如何使用 root 权限执行此类命令?

编辑:当然要实现这一点,我可以简单地将我的源.bashrc作为 root,但我想知道是否有一些快速(在需要打字方面)的方法来做到这一点。如果可能的话,我也想避免任何定制(例如.bashrc自动采购)。

mur*_*uru 7

通过你的 shell 运行它:

sudo bash -c 'source /home/reachus/.bashrc; custom_cmd 80'
Run Code Online (Sandbox Code Playgroud)

或者,编写一个脚本.bashrc为您提供资源,例如/usr/local/bin/my

#! /bin/bash
source /home/reachus/.bashrc
"$@"
Run Code Online (Sandbox Code Playgroud)

然后做:

sudo my custom_cmd 80
Run Code Online (Sandbox Code Playgroud)