sed -i '/sdcard/d' /etc/fstab
时间: 2023-09-04 11:06:20 浏览: 75
这也是一个Linux系统中的命令,用于在/etc/fstab文件中删除掉所有包含"sdcard"字符串的行。具体地,该命令使用sed工具对/etc/fstab文件进行编辑,-i选项表示直接在文件中进行修改。其中'/sdcard/d'表示删除所有包含"sdcard"字符串的行。因此,该命令会将/etc/fstab文件中包含"sdcard"字符串的行删除掉,从而达到删除SD卡挂载点的目的。
相关问题
ansible all -m shell -a "sed -i s/\/dev/mapper/centos-swap/\#/dev/mapper/centos-swap /etc/fstab"
这个命令会使用 Ansible 在所有远程主机上执行一个 shell 命令,将 /etc/fstab 文件中的 /dev/mapper/centos-swap 行注释掉。
具体来说,命令中的参数含义如下:
- `ansible all`:表示在 Ansible 的所有主机上执行命令。
- `-m shell`:表示使用 shell 模块,在远程主机上执行 shell 命令。
- `-a`:表示接下来的参数是要在远程主机上执行的命令。
- `"sed -i s/\/dev/mapper/centos-swap/\#/dev/mapper/centos-swap /etc/fstab"`:表示要在远程主机上执行的命令。其中,sed 命令用于编辑文件,-i 参数表示直接修改源文件,s 表示替换操作,/dev/mapper/centos-swap/ 表示被替换的字符串,\# 表示替换后的字符串(即在前面添加 # 注释掉),/etc/fstab 表示要编辑的文件路径。需要注意的是,在命令中使用了双引号,这是为了避免命令中的特殊字符被 shell 解释。
sed -ri 's/.*swap.*/#&/' /etc/fstab和sed -i '/swap/s/^/#/' /etc/fstab的区别
这两个命令都是用来修改文件/etc/fstab中的内容,实现注释掉swap分区的功能。它们的区别在于使用的正则表达式和替换方式不同。
1. `sed -ri 's/.*swap.*/#&/' /etc/fstab`命令使用了扩展正则表达式(-r选项),并且将匹配到的行的整行内容替换为以#开头的注释行。这个命令会直接修改/etc/fstab文件。
2. `sed -i '/swap/s/^/#/' /etc/fstab`命令使用了基本正则表达式,并且只将匹配到的行的开头替换为#。这个命令也会直接修改/etc/fstab文件。
所以,两个命令的区别在于正则表达式的使用方式和替换的粒度。第一个命令会替换整行内容,而第二个命令只替换行的开头部分。