linux 创建不可修改的文件

shell学习(20230412)

1、comm命令

作用:用于两个文件之间的比较
结果:
交集:两个文件所共有的行
求差:指定文件所包换且不相同的行
差集:包含在A文件中,但不包括在B文件中的行
PS:comm命令的输入必须是排序过的文件
示例:

[root@spark10 linux_test]# cat input.txt
admin
password
is
end
[root@spark10 linux_test]# cat uniq.txt
start
end
first
ok
ok
is
is
is
[root@spark10 linux_test]# sort input.txt -o input.txt ; sort uniq.txt -o uniq.txt
[root@spark10 linux_test]# comm input.txt uniq.txt
admin
                end
        first
                is
        is
        is
        ok
        ok
password
        start
[root@spark10 linux_test]#

第一列,只在input.txt出现的行,第二列,只在uniq.txt出现的行,第三列,input.txt和uniq.txt都出现的行

其中:
-1 从输出结果中删除第一列
-2 从输出结果中删除第二列
-3 从输出结果中删除第三列
示例:
需要打印两个文件的交集,删除出现的第一、第二列,保留第三列

[root@spark10 linux_test]# comm input.txt uniq.txt -1 -2
end
is
[root@spark10 linux_test]#

示例二
删除第三列,并将第一二列合并成一列

[root@spark10 linux_test]# comm input.txt uniq.txt -3 |sed 's/^\t//'
admin
first
is
is
ok
ok
password
start
[root@spark10 linux_test]#

sed 's/^\t//'命令解析:
s: 替换的意思
/^\t/: ^行首标记,匹配行首\t字符
//: 中间没有字符,用于替代行首的\t字符,用于删除行首的\t字符

2 创建不可修改的文件

chattr命令
A、创建不可修改的文件:chattr +i input1.txt

[root@spark10 linux_test]# chattr +i input1.txt
[root@spark10 linux_test]# rm input1.txt
rm: remove regular file ‘input1.txt’? y
rm: cannot remove ‘input1.txt’: Operation not permitted
[root@spark10 linux_test]#

B、移除不可修改的特性:chattr -i input1.txt

[root@spark10 linux_test]# chattr -i input1.txt
[root@spark10 linux_test]# rm input1.txt
rm: remove regular file ‘input1.txt’? y
[root@spark10 linux_test]#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值