我真的是新的bash,但它是学校的主题之一。其中一个练习是:Bash:从命令输出的grep模式
给出关于您自己的登录信息的文件“/ etc/passwd”的行号。
假设USERNAME
是我自己的登录ID,我能完全做到这样:
cat /etc/passwd -n | grep USERNAME | cut -f1
它只是给了需要的行号(也有可能是一个更优化的方式)。不过,我想知道是否有办法让命令更通用,以便它使用whoami
的输出来表示grep模式,而不使用脚本或使用变量来代表。换句话说,以保持一个易于阅读的一个行命令,像这样:
cat /etc/passwd -n | grep (whoami) | cut -f1
很抱歉,如果这是一个非常noob问题。
好的,反引号......当然:)谢谢! – MarioDS 2012-04-23 12:55:18
没有锚定,如果您的登录名称与该行其他地方匹配,则可能会产生错误匹配。我以前在本地系统上有一个简短的登录名,它恰好匹配(“系统操作员”的子字符串),所以当我不是时,一些愚蠢的软件认为我是“root”。 – tripleee 2014-11-17 11:58:41