Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
镜像
koalaman
ShellCheck
提交
46b678fc
S
ShellCheck
项目概览
镜像
/
koalaman
/
ShellCheck
上一次同步 10 个月
通知
42
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
ShellCheck
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
46b678fc
编写于
4月 30, 2023
作者:
V
Vidar Holen
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Minor fixes to POSIX read without variable check
上级
3342902d
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
4 addition
and
7 deletion
+4
-7
src/ShellCheck/Checks/ShellSupport.hs
src/ShellCheck/Checks/ShellSupport.hs
+4
-7
未找到文件。
src/ShellCheck/Checks/ShellSupport.hs
浏览文件 @
46b678fc
...
...
@@ -188,6 +188,7 @@ prop_checkBashisms100 = verify checkBashisms "read -r"
prop_checkBashisms101
=
verify
checkBashisms
"read"
prop_checkBashisms102
=
verifyNot
checkBashisms
"read -r foo"
prop_checkBashisms103
=
verifyNot
checkBashisms
"read foo"
prop_checkBashisms104
=
verifyNot
checkBashisms
"read ''"
checkBashisms
=
ForShell
[
Sh
,
Dash
]
$
\
t
->
do
params
<-
ask
kludge
params
t
...
...
@@ -288,13 +289,6 @@ checkBashisms = ForShell [Sh, Dash] $ \t -> do
argString
=
concat
$
oversimplify
arg
flagRegex
=
mkRegex
"^-[eEsn]+$"
bashism
t
@
(
T_SimpleCommand
_
_
(
cmd
:
args
))
|
t
`
isCommand
`
"read"
&&
length
(
onlyNames
args
)
==
0
=
warnMsg
(
getId
cmd
)
3061
"read without a variable is"
where
notFlag
arg
=
head
(
concat
$
oversimplify
arg
)
/=
'-'
onlyNames
=
filter
(
notFlag
)
bashism
t
@
(
T_SimpleCommand
_
_
(
cmd
:
arg
:
_
))
|
getLiteralString
cmd
==
Just
"exec"
&&
"-"
`
isPrefixOf
`
concat
(
oversimplify
arg
)
=
warnMsg
(
getId
arg
)
3038
"exec flags are"
...
...
@@ -390,6 +384,9 @@ checkBashisms = ForShell [Sh, Dash] $ \t -> do
let
literal
=
onlyLiteralString
format
guard
$
"%q"
`
isInfixOf
`
literal
return
$
warnMsg
(
getId
format
)
3050
"printf %q is"
when
(
name
==
"read"
&&
all
isFlag
rest
)
$
warnMsg
(
getId
cmd
)
3061
"read without a variable is"
where
unsupportedCommands
=
[
"let"
,
"caller"
,
"builtin"
,
"complete"
,
"compgen"
,
"declare"
,
"dirs"
,
"disown"
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录