谁能快速解释一下这些线的作用以及它们的作用是什么?
1) sed -i "/^exampleusername/s/:1000:1000:/:${UID}:${GID}:/g"/etc/passwd
2) sed -i "/^examplegroupname/s/:1000:/:${GID}:/g"/etc/group
我看到了他们here如果您对更多上下文感兴趣。
最佳答案
您应该查看 sed 教程或手册页。这是 #1 分解的(并且不再有效的 sed
)。第二个具有相同的一般形式:
/^exampleusername/ # Perform a command on matching lines (address)
s/ # Substitute command with / as delimiter
:1000:1000: # Pattern to find
/ # Delimiter
:${UID}:${GID}: # String to replace with (expanded by bash)
/ # Terminating delimiter
g # Regex flag (global: replace all matches in line)
所以它只是找到以 exampleusername
开头的行,并将所有出现的 :1000:1000:
替换为您当前用户的 UID/GID。
这有效地使 exampleusername
与您当前的用户相同。
关于linux - 有人可以向我解释这些 "sed"命令以及它们在做什么吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49833264/