Linux是一款广受欢迎的开源操作系统,有时需要在Linux下对文件进行大规模的字符串替换,如果一句一句的去替换的话无论是时间成本还是劳动强度都是很大的,但是大多数情况下,只需要运用 Linux 中的简单操作就可以很好的解决这一问题。
首先,我们需要打开终端,进入到需要批量替换字符串的文件夹下。然后使用 grep 命令来搜索指定的字符串,执行命令如下:
grep -irl ‘string need to be replaced’ .
该命令会搜索当前文件夹中所有文件中出现的字符串,并将找到的文件路径输出到标准输出,我们可以将输出的结果重定向到文件中。例如:```shellgrep -irl ‘string need to be replaced’ . > filenames.txt
该命令将会把结果输出到文件 filenames.txt 中,这样我们就可以获取需要替换字符串的所有文件路径了,接下来就可以批量替换字符串了,使用 -i 参数来指定替换模式,如:
sed -i ‘s/string need to be replaced/the string to replace/g’ `cat filenames.txt`
这样,批量替换字符串就完成了,上面的命令把所有包含指定字符串的文件都替换了,如果觉得不方便,可以改变一下 grep 命令,如:```shellgrep -irnw --include "*.extension" 'string need to be replaced' -e ./
这样的话就可以对特定的文件进行替换了,比如通过 –include 参数可以指定只替换某种特定格式的文件。通过这种方式,就可以快速完成Linux下批量替换字符串,实现节约浪费时间和人力的一些劳动强度,这一功能也是Linux系统最具有特色的。
香港服务器首选树叶云,2H2G首月10元开通。树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云
服务器
和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
linux下为用户备注名称
首先来新建一个用户a ,密码
useradd a -p
然后查看/etc/passwd文件,看到了新增加的用a,以冒号作为分隔符,各段的说明如下:
a 代表用户
x 代表密码,该密码是经过MD5加密生成的
501第一个501代表用户uid,第二个501代表用户gid
::之间的就代表用户的说明
/home/a 代表用户a的家目录
/bin/bash 代表用户的登录shell
现在要给用户a增加备注,使用以下命令
usermod -c ftp user a
下面查看哈,修改的结果
看到那里变成FTP user 了吧。 成功了。 。
说的很明白了哦!
Linux下Grep命令的详细使用方法
在linux中grep命令是非常有用的,它和管道(|)配合使用,非常强大,用于搜索文本文件.如果想要在几个文本文件中查找一字符串,可以使用‘grep’命令。
‘grep’在文本中搜索指定的字符串。
假设您正在‘/usr/src/linux/Documentation’目录下搜索带字符串‘magic’的文件:$ grep magic /usr/src/linux/Documentation/*:* How do I enable the magic SysRQ key?:* How do I use the magic SysRQ key?其中文件‘’包含该字符串,讨论的是 SysRQ 的功能。
默认情况下,‘grep’只搜索当前目录。
如果此目录下有许多子目录,‘grep’会以如下形式列出:grep: sound: Is a directory这可能会使‘grep’的输出难于阅读。
这里有两种解决的办法:明确要求搜索子目录:grep -r或忽略子目录:grep -d skip当然,如果预料到有许多输出,您可以通过 管道 将其转到‘less’上阅读:$ grep magic /usr/src/linux/Documentation/* | less这样,您就可以更方便地阅读。
有一点要注意,您必需提供一个文件过滤方式(搜索全部文件的话用 *)。
如果您忘了,‘grep’会一直等着,直到该程序被中断。
如果您遇到了这样的情况,按
linux命令的tr-c中-c是什么意思?举个例子。。。
tr是translate的简写,可以用一个字符串来替换另一个字符串,或者可以完全除去一些字符,也可以用它来除去重复字符。 tr -c[string2_to_translate_from] [string1_to_translate_to]-c 用字符串2中字符集的补集替换此字符集,要求字符集为ASCII。
发表评论