specie...">
美文网首页
一点文件操作命令

一点文件操作命令

作者: 记号晴系 | 来源:发表于2019-04-22 21:20 被阅读0次

删除文本中多余的东西

> > > ~~~
> > > 
> > > # notepad++查找并删除重复行只需要一条命令
> > > ^(.*?)$\s+?^(?=.*^\1$) 
> > > 
> > > # 直接全部替换,注意勾选:正则和匹配行
> > > 
> > > ~~~
> > >
> > > 
  • 文件里的文件名写入

    ls reads / | sed  "s/.gz//g" > species.txt #将reads文件夹后缀名为.gz的文件名导入TXT里,在reads外输入
    
  • sed命令下批量替换文件内容

格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 文件名

-i 表示inplace edit,就地修改文件

 -r 表示搜索子目录

 -l 表示输出匹配的文件名
s表示替换,d表示删除

示例:

sed -i "s/shan/hua/g"  lishan.txt # 把当前目录下lishan.txt里的shan都替换为hua
sed的其他用法如下:

1、删除行首空格
   sed 's/^[ ]*//g' filename
   sed 's/^ *//g' filename
   sed 's/^[[:space:]]*//g' filename

2、行后和行前添加新行
   行后:sed 's/pattern/&\n/g' filename
   行前:sed 's/pattern/\n&/g' filename
   &代表pattern

3、使用变量替换(使用双引号)
    sed -e "s/$var1/$var2/g" filename

4、在第一行前插入文本
    sed -i '1 i\插入字符串' filename

5、在最后一行插入
    sed -i '$ a\插入字符串' filename

6、在匹配行前插入
    sed -i '/pattern/ i "插入字符串"' filename

7、在匹配行后插入
   sed -i '/pattern/ a "插入字符串"' filename

8、删除文本中空行和空格组成的行以及#号注释的行
   grep -v ^# filename | sed /^[[:space:]]*$/d | sed /^$/d
  • tr命令的使用手册
1、将文件file中出现的"abc"替换为"xyz"
 


代码如下:

# cat file | tr "abc" "xyz" > new_file

【注意】这里,凡是在file中出现的"a"字母,都替换成"x"字母,"b"字母替换为"y"字母,"c"字母替换为"z"字母。而不是将字符串"abc"替换为字符串"xyz"。
 
2、使用tr命令“统一”字母大小写
(小写 --> 大写)

代码如下:

# cat file | tr [a-z] [A-Z] > new_file

(大写 --> 小写)

代码如下:

# cat file | tr [A-Z] [a-z] > new_file
3、把文件中的数字0-9替换为a-j
 

代码如下:

# cat file | tr [0-9] [a-j] > new_file
4、删除文件file中出现的"Snail"字符
代码如下:

# cat file | tr -d "Snail" > new_file

【注意】这里,凡是在file文件中出现的'S','n','a','i','l'字符都会被删除!而不是紧紧删除出现的"Snail”字符串。
 
5、删除文件file中出现的换行'\n'、制表'\t'字符
代码如下:

# cat file | tr -d "\n\t" > new_file

不可见字符都得用转义字符来表示的,这个都是统一的。
 
6、删除“连续着的”重复字母,只保留第一个
代码如下:

# cat file | tr -s [a-zA-Z] > new_file
7、删除空行
代码如下:

# cat file | tr -s "\n" > new_file
8、删除Windows文件“造成”的'^M'字符
代码如下:

# cat file | tr -d "\r" > new_file

或者

代码如下:

# cat file | tr -s "\r" "\n" > new_file

【注意】这里-s后面是两个参数"\r"和"\n",用后者替换前者
 
9、用空格符\040替换制表符\011
代码如下:

# cat file | tr -s "\011" "\040" > new_file

10、把路径变量中的冒号":",替换成换行符"\n"
代码如下:

# echo $PATH | tr -s ":" "\n"
11、若要将大括号转换为小括号,请输入:
代码如下:

tr '{}' '()' < textfile > newfile

这便将每个 {(左大括号)转换成 ((左小括号),并将每个 }(右大括号)转换成 )(右小括号)。所有其它的字符都保持不变。
12、若要将大括号转换成方括号,请输入:
代码如下:

tr '{}' '\[]' < textfile > newfile

这便将每个 {(左大括号)转换成 [(左方括号),并将每个 }(右大括号)转换成 ](右方括号)。左方括号必须与一个 "\"(反斜扛)转义字符一起输入。
13、若要将小写字符转换成大写,请输入:
代码如下:

tr 'a-z' 'A-Z' < textfile > newfile
14、若要创建一个文件中的单词列表,请输入:
代码如下:

tr -cs '[:lower:][:upper:]' '[\n*]' < textfile > newfile

这便将每一序列的字符(除大、小写字母外)都转换成单个换行符。*(星号)可以使 tr 命令重复换行符足够多次以使第二个字符串与第一个字符串一样长。
15、若要从某个文件中删除所有空字符,请输入:
代码如下:

tr -d '\0' < textfile > newfile
16、若要用单独的换行替换每一序列的一个或多个换行,请输入:
代码如下:
tr -s '\n' < textfile > newfile
或
代码如下:

tr -s '\012' < textfile > newfile
17、若要以“?”(问号)替换每个非打印字符(有效控制字符除外),请输入:

代码如下:

tr -c '[:print:][:cntrl:]' '[?*]' < textfile > newfile

这便对不同语言环境中创建的文件进行扫描,以查找当前语言环境下不能打印的字符。
18、要以单个“#”字符替换 <space> 字符类中的每个字符序列,请输入:
代码如下:

tr -s '[:space:]' '[#*]'

相关文章

  • Linux常用命令大全

    文件和目录 操作命令 文件搜索 命令 文件权限 操作命令 查看文件内容 命令 查看文件内容 命令 文本处理 命令 ...

  • 记录日常工作中常用的一些Linux命令,以后用的可以速查

    Linux常用命令收集 文件和目录 操作命令 文件搜索 命令 文件权限 操作命令 查看文件内容 命令 文本处理 命...

  • linux基础命令分类总结

    危险的系统命令 线上查询及帮助命令 目录操作命令 文件操作命令 文件查看以及处理命令 文件打包压缩命令 信息显示命...

  • Shell 常用命令汇总

    文件操作命令 目录及其操作命令 联机帮助命令 有关进程管理的命令 文件压缩和解压缩命令

  • linux常用命令

    linux的命令操作 日常操作命令 文件系统操作 文件权限的操作 基本的用户管理 系统管理操作

  • OS Experiment-01

    实验目的:熟悉Linux命令 目录操作命令 文件操作命令 文本文件查看命令 用户系统命令 网络相关命令 U盘的使用...

  • Linux 之开发常用命令

    文件操作命令 目录操作 查找和搜索 文件上传和下载 压缩和解压命令 系统安装相关命令

  • linux常用命令(文件权限)

    软件操作命令 服务器硬件资源和磁盘操作 文件和文件夹操作命令 系统用户操作命令 防火墙相关设置 提权操作sudo ...

  • linux的简单命令操作

    Linux目录介绍:文件目录 作用 Linux简单的操作命令: Linux查看文件操作:ls命令:产看文件夹...

  • ## MAC 终端命令

    目录操作 文件操作 选择操作 安全操作 编程操作 进程操作 时间操作 Korn Shell 命令 其它命令 文/K...

网友评论

      本文标题:一点文件操作命令

      本文链接:https://www.haomeiwen.com/subject/vhcpgqtx.html