![将单词替换为以[重复]开头的行中的变量](https://linux22.com/image/96030/%E5%B0%86%E5%8D%95%E8%AF%8D%E6%9B%BF%E6%8D%A2%E4%B8%BA%E4%BB%A5%5B%E9%87%8D%E5%A4%8D%5D%E5%BC%80%E5%A4%B4%E7%9A%84%E8%A1%8C%E4%B8%AD%E7%9A%84%E5%8F%98%E9%87%8F.png)
我需要知道如何替换 fstab 中的这一行:
tmpfs /dev/shm tmpfs defaults 0 0
和:
tmpfs /dev/shm tmpfs defaults,size=4G 0 0
我试过:
MEM_SZ=4
sed '/^tmpfs/ s/defaults.*$/defaults,size=${MEM_SZ}G/' /etc/fstab
但输出没有 0 0 并且大小值没有随变量改变:
tmpfs /dev/shm tmpfs defaults,size=${MEM_SZ}G
答案1
我修改了 sed 并将单引号替换为双引号,并添加 \t 来插入选项卡
sed "/^tmpfs/ s/defaults.*$/defaults,size=${MEM_SZ}G\t 0 0/" /etc/fstab