我在我的Linux系统上定义了以下挂载别名:aliasmount='mount|column-t'但我需要在通过此bash别名挂载文件系统和其他用途时绕过它。如何在Linux、*BSD、macOS或类Unix系统上暂时禁用或绕过bashshell?您可以使用alias命令定义或显示bashshell别名。一旦创建了bashshell别名,它们就优先于外部或内部命令。本文将展示如何暂时绕过bash别名,以便您可以运行实际的内部或外部命令。绕过bash别名的4种方法尝试使用以下任何一种方法来运行被bashshell别名绕过的命令。让我们定义一个别名如下:aliasmount='mount|column-t'运行如下:mount示例输出:sysfson/systypesysfs(rw,nosuid,nodev,noexec,relatime)procon/proctypeproc(rw,nosuid,nodev,noexec,relatime)udevon/dev在/dev/pts上键入devtmpfs(rw,nosuid,relatime,size=8023572k,nr_inodes=2005893,mode=755)devpts键入devpts(rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)tmpfson/runtypetmpfs(rw,nosuid,noexec,relatime,size=1610240k,mode=755)/dev/mapper/ubuntu--vg-rooton/typeext4(rw,relatime,errors=remount-ro,data=ordered)/dev/sda1on/boottypeext4(rw,relatime,data=ordered)binfmt_miscon/proc/sys/fs/binfmt_misctypebinfmt_misc(rw,relatime)lxcfson/var/lib/lxcfstypefuse.lxcfs(rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)方法1-使用\command通过输入以下命令暂时绕过名为mount的bash别名:\mount方法2-使用“command”或“command”来引用挂载命令,如下所示以调用实际的/bin/mount:"mount"or'mount'方法三——使用命令的完整路径使用完整的二进制路径,例如/bin/mount:/bin/mount/bin/mount/dev/sda1/mnt/sda方法四——使用内部命令语法是:commandcmdcommandcmdarg1arg2覆盖.bash_aliases中设置的别名,例如mount:commandmountcommandmount/dev/sdc/mnt/pendrive/“command”直接运行命令或显示信息关于命令。运行带参数的命令将抑制它的shell函数查询或别名,或显示有关给定命令的信息。关于unalias命令的注意事项要从当前会话的已定义别名列表中删除别名,请使用unalias命令:unaliasmount要从当前bash会话中删除所有别名定义:unalias-a确保更新~/.bashrc或$HOME/.bash_aliases。如果要删除定义的别名,必须删除定义的别名:vi~/.bashrc或joe$HOME/.bash_aliases更多信息,请参阅此处的在线手册,或输入以下命令查看:manbashhelp命令帮助unalias帮助别名
