use*_*419 3 linux sed putty awk text-processing
我需要知道这个命令的作用。
sed '/^#/d' ~/.profile
Run Code Online (Sandbox Code Playgroud)
该命令给我的输出是这样的:
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
Run Code Online (Sandbox Code Playgroud)
我知道这个命令:
sed '/^$/d' file.txt
Run Code Online (Sandbox Code Playgroud)
意思是删除 中的空白行file.txt。
我知道这#可能意味着命令或注释的结束。
我知道$表示命令开始。
具体命令是什么
sed '/^#/d' ~/.profile
Run Code Online (Sandbox Code Playgroud)
做?
命令sed行
sed '/^#/d' ~/.profile
Run Code Online (Sandbox Code Playgroud)
将删除从文件的一行开头开始的所有 shell 注释~/.profile,例如以下两行的第一行,但不是第二行:
# comment
# indented comment
Run Code Online (Sandbox Code Playgroud)
#它通过尝试在行的开头 ( )进行匹配来实现此目的^,并将删除 ( d) 任何匹配的行。
要从 shell 脚本中删除缩进注释,请使用
sed '/^[[:blank:]]*#/d' file
Run Code Online (Sandbox Code Playgroud)
[[:blank:]]将匹配空格字符和水平制表符。
$仅表示“命令的开始”,因为它是 shell 使用的常见提示符,提示您在命令行上键入某些内容。
#是在 shell 中引入注释的字符。sed除了匹配#输入1中的 a 之外,它在脚本中没有任何作用。我从未见过它用来表示“命令结束”。
1如果在命令之间使用,该角色也会在脚本#中引入注释。sed