首页 > 解决方案 > 对登录的其他用户使用 source 命令

问题描述

我的问题是关于为每个登录的人使用 source 命令。

假设我有一个包含内容的文件:

#!/bin/bash
alias ha='echo test'

现在,如果我找到它并编写它ha,我就会得到消息test

现在,如果有其他人登录,我希望它来自他的帐户怎么办?你能写出类似的东西source (username) (filename)吗?

标签: bashcommand

解决方案


如果其他用户对您的脚本具有读取权限,并且对其目录和父目录具有读取权限,则他们可以获取该文件。假设您的用户名是“thesourcequestion”,并且您将别名文件(我们称之为 alias )保存在您的主目录中,其他用户可以使用以下命令获取它:

source ~thesourcequestion/alias

或者只是(同样的事情):

. ~thesourcequestion/alias

顺便说一句,一些 shell 只接受source关键字(如 c-shell IIRC)。

如果您是该框的管理员,请考虑此处提供的解决方案:

https://askubuntu.com/questions/610052/how-can-i-preset-aliases-for-all-users/986053

简而言之,有可以修改的系统文件将为用户创建别名。他们下次登录时可以使用该别名。

不要忽视我的回答中关于为您的文件提供权限的部分。例如,您可以通过以下方式授予对文件的读取权限:

chmod a+r ~thesourcequestion/alias

上述语法将 (+) 读取属性 (r) 添加到所有 (a)。


推荐阅读