`

sed 脚本分隔符引起的问题unknown option to `s'

 
阅读更多

 

 

执行脚本sed:

source ../../conf.properties

target_dir=data_process_$DATE
current_date=$(date +%Y/%m/%d/%H)
echo $current_date
rm -rf $target_dir > /dev/null 2>&1
mkdir $target_dir

# Generate the ql from the merge_table directory
for ql in `ls merge_table | grep ql`
do
  sed "s/%CHINADAASREDUCETASKS%/$MAPRED_REDUCE_TASKS/g" merge_table/$ql > $target_dir/$ql
  sed -i "s/%CHINDAASDATE%/$DATE/g" $target_dir/$ql
  sed -i "s/%current_date%/$current_date/g" $target_dir/$ql
done

 报错如下:

 

 

sed: -e expression #1, char 25: unknown option to `s'

 

 

原因:

因为路径里面包含有“/”作为分隔符,这会和sed的替换操作的分隔符“/”引起混淆;所以,只要不使用“/”做分隔符就可以解决这个问题。

分享到:
评论

相关推荐

    SED单行脚本快速参考 / sed1line

    - Unix环境下的DOS行结束符(CR/LF)转换为Unix格式(LF):可以使用`sed 's/.$//'`命令,假设所有行以CR/LF结束,或者在bash/tcsh环境下使用`sed 's/^M$//'`(其中^M需要通过Ctrl-V来输入)。 - Unix环境下的Unix...

    《SED 单行脚本快速参考》

    - 解析:特定版本的 `sed` 可以使用 `s/\r//` 替换每行的回车符。 - **DOS环境的略过**: 其他版本的 `sed` 不支持此功能,但可以使用 `tr` 命令实现。 5. **将每一行前导的“空白字符”(空格,制表符)删除使之...

    sed单行脚本快速参考

    - 将文件中的行分隔符`\n`替换为制表符`\t`:`sed 'N;s/\n/\t/'` - 去掉每行的首尾空白字符并用制表符分割每6个字符:`sed 'N;s/^//;s/*\(.\{6,\}\)\n/\1/'` 2. **计算行数**:`sed '/./='`或`sed -n '$='` 3. *...

    Linux Shell脚本编程--sed命令详解.zip_shell sed_命令介绍_脚本 shell

    在Linux系统中,Shell脚本编程是日常自动化任务和系统管理的重要工具,而`sed`(流编辑器,Stream Editor)则是Shell脚本中的一个强大工具。本文将深入讲解`sed`命令的基本概念、功能以及在Shell脚本中的具体应用。 ...

    SED单行脚本快速参考

    ### SED单行脚本快速参考 #### 一、简介 `sed` 是 Unix/Linux 系统中的流编辑器(Stream Editor),它主要用于过滤和修改输入数据。`sed` 支持基本的编辑命令,例如查找、替换、删除、添加等,并能够处理连续的...

    实战Shell脚本—sed,awk使用

    例如,`awk -F ',' '{print $1}' file.csv`会打印`file.csv`中所有行的第一列,其中`-F ','`设定了字段分隔符为逗号。 结合这两个工具,开发者可以在Shell脚本中实现更复杂的数据处理任务。例如,可以先用`sed`...

    SED单行脚本快参考

    s/\n/\t/'`可以创建更复杂的行号格式,如行号与文本间的制表符分隔。 2. **非空白行行号标注**:`sed'/./='filename|sed'/./N;s/\n//'`仅对非空白行添加行号,适合于统计有意义的行。 3. **行数计算**:模仿`wc -l`...

    sed-4.2.1-setup

    )或行分隔符执行,实现更复杂的文本操作。 5. **行地址范围**:使用行编号或正则表达式指定操作的范围。如`sed '10,20 s/pattern/new/g'` 会在第10行到第20行之间执行替换操作。 6. **命令重定向**:结合Linux ...

    sedsed:sed脚本的调试器和代码格式化程序

    镇静sed脚本的调试器和代码格式化程序,作者:Aurelio Jargas。 网站: : 下载/安装Sedsed可作为pip包提供,只需安装即可: pip install --user sedsed与Python 2.7和Python 3.x兼容许可证:GPLv3以获取每个版本中...

    sed&awk101 Hacks

    awk内置变量如FS(输入字段分隔符)、OFS(输出字段分隔符)、RS(记录分隔符)、ORS(输出记录分隔符)、NR(记录序号)、FILENAME(当前处理的文件名)、FNR(文件中的NR)、以及每行的字段总数(NF)。...

    sedsed工具

    3. **脚本文件**:复杂操作可以写入脚本文件,如`sed -f script.sed file.txt`,`script.sed`包含一系列连续的`sed`命令。 ### 总结 `sedsed`工具在`sed`基础上增强了删除操作的便利性,简化了文本处理流程,尤其...

    SED与AWK 高清第三版

    sed的操作主要包括插入、删除、替换、打印等,而awk则需要理解其工作模式(BEGIN、END、模式规则)、字段分隔符、内置变量和函数等概念。通过实际的案例练习,可以更好地掌握这两个工具的使用。 这本书的第三版可能...

    sed awk单行脚本快速参考

    ### sed与awk单行脚本快速参考指南 #### 一、文本间隔操作 **1.1 在每一行后面增加一空行** - **sed**: 使用`G`命令可以在每行后添加一行之前的内容,首次执行时为空,因此形成了空行效果。 - 示例命令:`sed G`...

    sed and wak 101

    `sed`替换分隔符 默认情况下,替换命令使用斜杠作为分隔符,但也可以更改分隔符以避免与模式中的字符冲突。例如,使用`#`作为分隔符: ``` sed 's#pattern#replacement#g' file.txt ``` 这将全局替换文件`file....

    linux script 好用的sed命令

    【sed命令详解与应用】 ...总之,sed命令是Linux系统中不可或缺的文本处理工具,熟练掌握它可以提高工作效率,解决各种文本处理问题。通过学习和实践,你将能够编写出高效的sed脚本来处理复杂的文本任务。

    Sed AWK编程指南

    默认情况下,替换命令使用 `/` 作为分隔符,但也可以使用其他字符作为分隔符。 示例: ``` sed 's;old;new;g' file.txt ``` ##### 15. 多个替换命令影响同一行 可以在同一个`sed`命令中使用多个替换命令来处理...

Global site tag (gtag.js) - Google Analytics