如何创建一个允许文件作为命令行参数的bash脚本,并使用egrep命令在屏幕上打印长度超过12个字符的所有行?
答案 0 :(得分:2)
您可以使用:
egrep '.{13}'
.
将匹配任何字符,{13}
正好重复13次。您可以将它放在shell脚本中,如:
#!/bin/sh
# Make sure the user actually passed an argument. This is useful
# because otherwise grep will try and read from stdin and hang forever
if [ -z "$1" ]; then
echo "Filename needed"
exit 1
fi
egrep '.{13}' "$1"
$1
指的是第一个命令参数。您还可以使用$2
,$3
等,$@
引用所有命令行参数(如果您希望在多个文件上运行它,则非常有用):< / p>
egrep '.{13}' "$@"