sed 替换单引号'eg:echo "mmm'sss" > testcat test把test内容中单引号替换成双引号sed 's/'"'"/'"''/g' test解析下:'s/' => 要进行替换操作,后紧跟匹配字符"'" => 用双引号包裹着单引号/   =>分割符'"'  => 用单引号包裹着双引号'/g' =>分隔符,全局替换
本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理 问题 。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。 目 录 第一部分 shell 第1章 文件安全与权限 1 1.1 文件 1 1.2 文件类型 2 1.3 权限 2 1.4 改变权限位 4 1.4.1 符号模式 4 1.4.2 chmod命令举例 5 1.4.3 绝对模式 5 1.4.4 chmod命令的其他例子 6 1.4.5 可以选择使用符号模式或绝对模式 7 1.5 目录 7 1.6 suid/guid 7 1.6.1 为什么要使用suid/guid 8 1.6.2 设置suid/guid的例子 8 1.7 chown和chgrp 9 1.7.1 chown举例 9 1.7.2 chgrp举例 9 1.7.3 找出你所属于的用户组 9 1.7.4 找出其他用户所属于的组 10 1.8 umask 10 1.8.1 如何计算umask值 10 1.8.2 常用的umask值 11 1.9 符号链接 12 1.9.1 使用软链接来保存文件的多个映像 12 1.9.2 符号链接举例 12 1.10 小结 13 第2章 使用find和xargs 14 2.1 find命令选项 14 2.1.1 使用name选项 15 2.1.2 使用perm选项 16 2.1.3 忽略某个目录 16 2.1.4 使用user和nouser选项 16 2.1.5 使用group和nogroup选项 16 2.1.6 按照更改时间查找文件 17 2.1.7 查找比某个文件新或旧的文件 17 2.1.8 使用type选项 17 2.1.9 使用size选项 18 2.1.10 使用depth选项 18 2.1.11 使用mount选项 18 2.1.12 使用cpio选项 18 2.1.13 使用exec或ok来执行shell命令 19 2.1.14 find命令的例子 20 2.2 xargs 20 2.3 小结 21 第3章 后台执行命令 22 3.1 cron和crontab 22 3.1.1 crontab的域 22 3.1.2 crontab条目举例 23 3.1.3 crontab命令选项 23 3.1.4 创建一个新的crontab文件 24 3.1.5 列出crontab文件 24 3.1.6 编辑crontab文件 24 3.1.7 删除crontab文件 25 3.1.8 恢复丢失的crontab文件 25 3.2 at命令 25 3.2.1 使用at命令提交命令或脚本 26 3.2.2 列出所提交的作业 27 3.2.3 清除一个作业 27 3.3 &命令 27 3.3.1 向后台提交命令 28 3.3.2 用ps命令查看进程 28 3.3.3 杀死后台进程 28 3.4 nohup命令 29 3.4.1 使用nohup命令提交作业 29 3.4.2 一次提交几个作业 29 3.5 小结 30 第4章 文件名置换 31 4.1 使用* 31 4.2 使用? 32 4.3 使用[...]和[!...] 32 4.4 小结 33 第5章 shell输入与输出 34 5.1 echo 34 5.2 read 35 5.3 cat 37 5.4 管道 38 5.5 tee 39 5.6 标准输入、输出和错误 40 5.6.1 标准输入 40 5.6.2 标准输出 40 5.6.3 标准错误 40 5.7 文件重定向 40 5.7.1 重定向标准输出 41 5.7.2 重定向标准输入 42 5.7.3 重定向标准错误 42 5.8 结合使用标准输出和标准错误 43 5.9 合并标准输出和标准错误 43 5.10 exec 44 5.11 使用文件描述符 44 5.12 小结 45 第6章 命令执行顺序 46 6.1 使用&& 46 6.2 使用|| 46 6.3 用()和{ }将命令结合在一起 47 6.4 小结 48 第二部分 文本过滤 第7章 正则表达式介绍 49 7.1 使用句点匹配单字符 50 7.2 在行首以^匹配字符串或字符序列 50 7.3 在行尾以$匹配字符串或字符 5
sed 命令中,使用 单引号 来制定操作,如 sed 's/regular/replace/'。如果想在 单引号 中转义 单引号 采用转义字符是不行的。解决的方法是把 sed 部分用 单引号 分割开,在外面转义。 如:A:  nl /etc/passwd | sed '2a I\'am Dophi!'     --------错误       B: nl /etc/passwd | sed '2a I'\''am D
线上有一个脚本需要 ssh登录远程机,然后完成特定文件中的某个值, 替换 的字符中有 单引号 ,所以需要特定的写法,才能成功   1)、ssh远程执行命令, 替换 字符串中有 单引号 ( ' )   ssh zhuzi@${ip} "cd ${DDIR_APP}/${PRO_NAME}; sed -i \"s/_M.active_env = 'pro'/_M.active_env = 'pre'/g\"...
echo "Cfoo'barxml" | sed "s/'/::/g" | sed 's/::/\\:/g' | sed "s/:/'/g" 替换 单引号 为 \' ------------------------ sed 替换 单引号 'echo "mmm'sss" > testcat test把test内容中 单引号 替换 成双引号 sed 's/'"'"/'"''/g' t
db=$1 mysqldb=$(cat $(find /server/ -name "server.conf")|grep mysql| sed -n "1p"|awk -F "/|?" '{print $4}') 不处理 单引号 的话 sed sed -i '10i if [ "$1" !=
可以在 sed 命令中使用变量,但需要注意变量的引用方式。 例如,假设有一个变量 $name 包含了一个字符串,我们想要用 sed 命令 替换 文本中的某些内容为 $name,可以这样写: sed 's/old_text/'"$name"'/g' input_file > output_file 注意到在 sed 命令中,用 单引号 括起来的部分会被当作字符串,而双引号中的变量会被展开。在这个例子中,我们用双引号括起来了 $name 变量,让它能够被正确展开。 另外,由于 $name 变量中可能包含一些特殊字符(如 /),为了避免这些字符影响 sed 命令的正则表达式,我们可以用 sed 命令的分隔符(在上面的例子中是 /)来 替换 成另一个字符,例如 #: sed 's#old_text#'"$name"'#g' input_file > output_file 这样就可以正确处理包含特殊字符的变量了。