我的unix / linux课程的作业是创建一个shell脚本并显示某个用户是否登录的输出。我们被分配了实验室合作伙伴,我们为这项任务交换了用户名,因为我们需要确定我们的实验室合作伙伴是否使用shell脚本登录系统。如果它是相关的,我使用bash shell。我尝试在编辑器中使用who命令,但它并没有将其识别为命令。帮助
答案 0 :(得分:0)
如果你在VI(或更好的VIM)编辑器中,那么你可以:
1):!who
在shell中运行who
命令
2)在命令模式:.!who
中执行相同操作并将结果粘贴到当前的curspor位置
3)编写一个vi函数来执行和处理who
的结果,并将其与call
调用一起使用,该调用可以获取有趣用户名或其他任何参数。
一些例子:https://www.linux.com/learn/vim-tips-working-external-commands
如果您在命令行中,则who | vi -
将打开vi编辑器并插入who
的结果。您还可以使用vi的-c
选项来组合上面的示例。
希望这会有所帮助。
答案 1 :(得分:-1)
尝试使用ps -o user= -p $$ | awk '{print $1}'
或echo $SUDO_USER
或echo $user
或w
或users