关于shell:在bash脚本中,如何清理用户输入?

In a bash script, how do I sanitize user input?我正在寻找进行简单输入的最佳方法:
并通过删除非字母数字字符,小写(大写)并用下划线替换空格来清理它。
顺序重要吗? 正如dj_segfault指出的那样,shell可以为您完成大部分操作。看起来,您将不得不依靠外部的东西来降低字符串的大小写。为此,您有很多选择,例如上面的perl单行代码等,但是我认为tr可能是最简单的。
这里的顺序有些重要。我们要去除下划线,并用下划线替换空格,因此我们必须确保先去除下划线。通过等待将内容传递到tr直到结尾,我们知道我们只有字母数字和下划线,并且可以确保没有空格,因此我们不必担心shell会解释特殊字符。 Bash可以自己完成所有操作,非常感谢。如果查看参数扩展手册页中的部分,您会看到bash具有内置的替换,子字符串,修剪,rtrim等。 要消除所有非字母数字字符,请执行
那是奥卡姆的剃刀。无需启动另一个进程。 您可以通过perl运行它。
我在这里使用的是ksh样式的subshel??l,我不太确定它是否可以在bash中工作。 关于shell的好处是,您可以使用perl,awk,sed,grep...。 快速又肮脏:
经过一番环顾,看来
我想是奥卡姆的剃刀。 |
相关内容
win10多任务按键怎么设置在底部详细方法
win10多任务按键怎么设置在底部详细方法,按键,任务,在使用电脑...
电脑密码号怎么输入不了|电脑密码号怎么输入不
电脑密码号怎么输入不了|电脑密码号怎么输入不了字母,,电脑密...
百度输入法怎么添加城市词库
百度输入法怎么添加城市词库,词库, ...
设置里程碑|设置里程碑的方法有哪些
设置里程碑|设置里程碑的方法有哪些,,1. 设置里程碑的方法有哪...
Outlook的PST文件损坏的修复方法
Outlook的PST文件损坏的修复方法,文件, ...
你支持800万用户Firefox吗如何能在火狐浏览器上
你支持800万用户Firefox吗如何能在火狐浏览器上中国的道路,,2...
手提电脑手写怎么设置|电脑手写设置方法
手提电脑手写怎么设置|电脑手写设置方法,,电脑手写设置方法看...
如何设置用户权限|如何设置用户权限密码
如何设置用户权限|如何设置用户权限密码,,如何设置用户权限密...
IE脚本错误如何做Web脚本错误解决技巧
IE脚本错误如何做Web脚本错误解决技巧,,这个问题是由于这样的...
打印机常见故障排除方法HP5000打印机为例
打印机常见故障排除方法HP5000打印机为例,,HP 50005100打印机...
wps同时选择多个内容|WPS选中多个单元格,同时输
wps同时选择多个内容|WPS选中多个单元格,同时输入同样的内容...
手机版wps里如何给字加拼音|wps在文字上加拼音
手机版wps里如何给字加拼音|wps在文字上加拼音的方法wps怎么...
小编辑器教你减少计算机网络流量的最简单方法
小编辑器教你减少计算机网络流量的最简单方法,,核心提示:教你如...
Android手机模拟器的安装方法_模拟器安装教程在
Android手机模拟器的安装方法_模拟器安装教程在计算机技能,,核...
苹果6设置输入法|苹果6设置输入法9宫格
苹果6设置输入法|苹果6设置输入法9宫格,,苹果6设置输入法9宫格...