我运行的是 macOS 12.3.1
我在 .zshrc 中添加了几行,即。
export GREP_OPTIONS='--color=always'
export GREP_COLOR='1;35;40'
Run Code Online (Sandbox Code Playgroud)
之后,当我通过管道将 grep 输出传输到 tr 时,它返回相同的行数,但所有行都是空白的
例如:
grep ^.....$ /usr/share/dict/words | tr "[:lower:]" "[:upper:]"
Run Code Online (Sandbox Code Playgroud)
返回 10230 个空行。
这是预期的吗?
例如,gcc 接受不带任何标志的输入文件和带有以下-o
标志的输出文件:
gcc input.c -o output.out
或者
gcc -o output.out input.c
我正在创建一个随机密码生成器 bash 脚本,用户应该能够分别使用 、 、-s
标志-l
指定特殊字符、小写字符和大写字符的数量-u
。他们还应该能够在没有任何标志的情况下指定密码的长度。
用法示例:
./randompassword.sh -s2 -u2 -l3 16
应表示包含 2 个特殊字符、2 个大写字符、3 个小写字符且长度为 16 的密码。
我可以getopts
像这样解析标志:
while getopts s:l:u: flag
do
case "${flag}" in
s) special=${OPTARG};;
l) lower=${OPTARG};;
u) upper=${OPTARG};;
esac
done
Run Code Online (Sandbox Code Playgroud)
但是我不知道如何获取没有标志的长度参数。
我尝试使用$1
,但这个参数应该能够位于命令中的任何位置,就像 gcc 示例一样。