Pid*_*una 1 bash shell sh while-loop
我的任务很小.
我应该写:
data="duke,rock,hulk,donovan,john"
Run Code Online (Sandbox Code Playgroud)
在下一个变量中,我应该更改第一个变量的分隔符.
data2="duke|rock|hulk|donovan|john"
Run Code Online (Sandbox Code Playgroud)
在bash上执行此操作的正确方法是什么?
这是脚本的一小部分,我应该做什么.
例如,我使用构造"WHILE-GETOPS-CASE"来在参数中使用用户名来排除它们.
ls /home/ | egrep -v $data2
Run Code Online (Sandbox Code Playgroud)
您可以使用扩展轻松替换单个字符:
data="duke,rock,hulk,donovan,john"
data2=${data//,/|}
echo "$data2"
Run Code Online (Sandbox Code Playgroud)
打破语法:
${data表示"根据变量中的值进行扩展data;// 意思是"搜索所有出现的";/意思是"用以下内容替换".请注意,某些字符可能需要转义,但不能转义为逗号和竖线.
然后你可以像这样过滤结果:
ls /home/ | egrep -v "$data2"
Run Code Online (Sandbox Code Playgroud)