我有接受用户密码的脚本。我们知道密码可以有特殊字符。所以有用户有一些特定的字符,我写的脚本不起作用。
看看
./passwrd.sh sohan$23
sohan3
这是脚本片段
#!/bin/sh
#=============================================================================
#
# DESCRIPTION
#
# Script for creating csbuser in weblogic
#
# USAGE ./create.sh <password>
# where password is OPTIONAL.
if [ $# -eq 1 ]; then
echo $1
#csb_password=`echo "$1" | sed -r 's/\$/\\\$/g'`
fi
有谁能告诉我这里可以做些什么。
答案 0 :(得分:1)
当您调用./passwrd.sh sohan$23
这样的脚本时,$23
将会展开。
要将其作为文字字符串,请使用单引号:
./passwrd.sh 'sohan$23'
$ cat a
#!/bin/bash
echo "the var is $1"
$ var=10
$ ./a a$var
the var is a10
$ ./a 'a$var'
the var is a$var