Linux文件编辑、替换的常用命令

这篇具有很好参考价值的文章主要介绍了Linux文件编辑、替换的常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

查看文件权限

# 进入指定目录
cd /test
# 查看文件夹内所有文件权限
ls -l
# 或者使用ll查看文件权限
ll

linux系统命令被替换,linux,运维,服务器
linux系统命令被替换,linux,运维,服务器

为某个文件赋权限

权限各字符在Linux中所代表的含义

linux系统命令被替换,linux,运维,服务器
参考上图:
在bin文件夹对应的第一个参数是d,d 在 Linux 中代表该文件是一个目录文件。

  • 在 Linux 中第一个字符代表这个文件是目录、文件或链接文件等等。

说明:
当为 d 则是目录;
当为 - 则是文件;
若是 l 则表示为链接文档(link file);
若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

  • 接下来的字符中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。这三个权限的位置不会改变,如果没有权限,就会出现减号 - 。

其权限对应关系:
linux系统命令被替换,linux,运维,服务器

chgrp 和 chown

在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。文件所有者以外的用户又可以分为文件所属组的同组用户和其他用户。
Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。

# chgrp:更改文件属组 
# -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
chgrp [-R] 属组名 文件名

# chown:更改文件属主,也可以同时更改文件属组
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
# 举例: 将文件夹中test.log文件的拥有者改为test这个账号
chown test test.log
# 举例: 将test.log的拥有者与群组改回为root
chown root:root test.log

chmod

Linux文件属性有两种设置方法,一种是数字,一种是符号。
使用数字来代表各个权限,各权限的分数对照如下:

  • r:4
  • w:2
  • x:1
    每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: -rwxrwx— 分数则是:
  • owner = rwx = 4+2+1 = 7
  • group = rwx = 4+2+1 = 7
  • others= — = 0+0+0 = 0
    所以设定权限的变更时,该文件的权限数字就是 770。
# 变更权限指令
# xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。
# -R : 进行递归(recursive)的持续变更,以及连同次目录下的所有文件都会变更
chmod [-R] xyz 文件或目录

# 举例: 为文件1赋所有权限
sudo chmod -R 777 /test/file1

linux系统命令被替换,linux,运维,服务器

符号类型改变文件权限

u, g, o 来代表三种身份的权限, a 则代表 all,即全部的身份。读写的权限可以写成 r, w, x。

命令 角色 动作 可使用字符 作用对象
chmod u +(加入)/-(除去)/=(设定) r、w、x 文件或目录
chmod g +(加入)/-(除去)/=(设定) r、w、x 文件或目录
chmod o +(加入)/-(除去)/=(设定) r、w、x 文件或目录
chmod a +(加入)/-(除去)/=(设定)) r、w、x 文件或目录
# 举例 修改 test1 权限为-rwxr-xr--
chmod u=rwx,g=rx,o=r  test1  
# 举例 给所有用户赋读写权限,但不赋执行权限
chmod a-x test1

批量替换文件中的内容

vi/vim 替换(需打开文件)

  • vi/vim 中可以使用 冒号( : ) ➕ 小写字母( s )来替换字符串。
冒号( : ) ➕  小写字母( s )/well/good/g 替换当前行所有 well 为 good

直接替换文件中的字符串(不用打开文件,且可以批量替换多个文件)

perl命令替换,参数含义如下:

  • -a 自动分隔模式,用空格分隔$_并保存到@F中。相当于@F = split ”。分隔符可以使用-F参数指定
  • -F 指定-a的分隔符,可以使用正则表达式
  • -e 执行指定的脚本。
  • -i<扩展名> 原地替换文件,并将旧文件用指定的扩展名备份。不指定扩展名则不备份。
  • -l 对输入内容自动chomp,对输出内容自动添加换行
  • -n 自动循环,相当于 while(<>) { 脚本; }
  • -p 自动循环+自动输出,相当于 while(<>) { 脚本; print; }
# 用法示例:将所有C程序中的foo替换成bar,旧文件备份成.bak
perl -p -i.bak -e 's/\bfoo\b/bar/g' *.c
# 将当前文件夹下lishan.txt和lishan.txt.bak中的“shan”都替换为“hua”
perl -p -i -e "s/shan/hua/g" ./lishan.txt ./lishan.txt.bak
# 将每个文件中出现的数值都加一
perl -i.bak -pe 's/(\d+)/ 1 + $1 /ge' file1 file2

sed 替换

sed命令下批量替换文件内容文章来源地址https://www.toymoban.com/news/detail-775231.html

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

# 例如:我要把mahuinan替换 为huinanma,执行命令: 
sed -i "s/mahuinan/huinanma/g" 'grep mahuinan -rl /www'
  • -i 表示inplace edit,就地修改文件
  • -r 表示搜索子目录
  • -l 表示输出匹配的文件名
  • s表示替换,d表示删除
# 示例 把当前目录下lishan.txt里的shan都替换为hua
sed -i "s/shan/hua/g"  lishan.txt
# 使用变量替换(使用双引号)
sed -e "s/$var1/$var2/g" filename

perl 语法

find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

到了这里,关于Linux文件编辑、替换的常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【运维小知识】(四)——linux常用命令

    运维专栏:运维小知识 目录  1.🍁🍁用mv命令修改文件名 2.🍃🍃创建及删除文件夹即文件夹下所有文件 3.🍂🍂移动文件夹并重命名 4.🌿🌿复制文件 5.🍄🍄统计当前目录下文件的个数(不包含文件夹或子文件夹) 6.🌵🌵统计当前目录下文件的个数(包含子目录中的文件

    2024年02月16日
    浏览(34)
  • Linux操作系统设置图形化界面及目录和文件管理常用命令

    目录 1.安装图形化界面  2.开机启动图形化界面 dos界面与图形化界面切换快捷键 3.Windows与Linux文件系统的差别  4.Linux文件系统常用命令  5.使用pwd命令显示工作目录路径 6.绝对路径和相对路径  7.使用ls命令列出目录和文件信息 Linux默认情况下是不会安装图形界面的,所以需要

    2024年02月05日
    浏览(74)
  • Linux Vim文本编辑器-Vim常用命令

    距离上次Linux的学习,今天又是一个崭新的起点,我们用五天的时间学了一些Linux一些常用的操作命令,但掌握这些还是远远不够的,这个世界就是这样,将生于此,既是幸运也是不幸,只有不断地学习才能有自己的一席之地,话不多说,开始我们今天的Linux学习之旅。 目录

    2024年02月06日
    浏览(64)
  • Linux 文件编辑命令

    一、三种模式介绍 命令模式 插入模式(编辑模式) 末行模式 二、模式切换 1.命令模式切换到插入模式 (1) a //进入到当前光标后开始编辑 (2) A //进入到当前光标所在行的行末开始编辑 (3)i //进入当前光标位置开始编辑 (4)I //进入当前光标所在行的行头开始编辑 (5)

    2024年02月08日
    浏览(29)
  • Linux:概述 、安装 、文件与目录结构 、vim编辑器 、网络配置 、远程登录 、系统管理 、基础命令 、软件包管理 、克隆虚拟机 、shell编程

    2.1.1、Linux是什么? Linux是一个操作系统(OS) 所谓的操作系统就是直接用来操作计算机底层硬件的软件。 2.1.2、Linux的出现 官网: https://www.centos.org/ 进入官网进行下载 有很多的镜像,以阿里云的为例: 3.3.1、下载 官网: https://www.vmware.com/ 这是下载的企业版,30天试用期,可

    2024年02月05日
    浏览(65)
  • Linux学习,使用sed命令对文件内的指定字符串进行替换

    一、创建一个txt文件,用于做测试 vi huawei.txt 二、替换每行第一个huawei为apple,第三个“/”后,不加参数就是只替换第一个 sed -i \\\"s/huawei/apple/\\\" huawei.txt 实现效果: 三、替换每行所有的xiaomi为iphone,第三个“/”后,加参数g就是替换所有 sed -i  \\\"s/xiaomi/iphone/g\\\" huawei.txt 实现效果

    2024年02月17日
    浏览(57)
  • Linux:使用sed命令替换文件内容实操及各种报错问题解决

    工作遇到需要在页面一键操作,后端进行自动化运维部署的事情,这里就用的了 sed 命令,linux的学问真的要花时间好好学习一番了! 上面图片是AI创作生成!如需咒语可私戳哦! 以下为实际工作简化后描述 简要说明下流程 原来的流程 : 每次新增连接服务,都要进行命令行

    2023年04月09日
    浏览(77)
  • Linux系统运维:性能监视和分析工具sar命令详解

    目          录 一、sar工具介绍 二、sar工作原理 (一)原理概述 (二)sar数据收集器 三、sar命令语法 四、sar主要功能介绍 (一)功能概述 (二)CPU统计数据 (三)磁盘I/O统计数据 (四)网络统计数据 1、是使用-n DEV选项的sar输出 2、关于网络错误的信息可以用sar -n EDE

    2024年02月21日
    浏览(73)
  • Linux(Ubuntu、CentOS)命令行编辑文件后如何保存退出

    在 Ubuntu、CentOS 命令行中编辑文件后,可以使用以下步骤保存并退出: 按下键盘上的 Ctrl 键和 X 键组合,以退出编辑模式。 如果文件已更改,你将看到提示,询问是否保存更改。按下 Y 键来确认保存更改,或按下 N 键取消保存。 如果你选择保存更改,Ubuntu、CentOS 将显示一个

    2024年02月14日
    浏览(41)
  • Linux常用命令_文件搜索命令

    作为find的补充命令

    2024年02月11日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包