SHELL脚本之常用文本处理命令练习

1 定义一个ipadd的变量,此变量的内容为ens33的网卡ip,并要求此变量在所有的shell中都能生效

先用正则匹配出该网卡的ip地址

[root@localhost ~]# ifconfig ens33 | grep 'inet\>' | awk '{print $2}'
192.168.159.129

因为要求在所有shell中生效(登录和非登录),所以应该将变量追加到~/.bashrc文件中

[root@localhost ~]# echo ipadd=`ifconfig ens33 | grep 'inet\>' | awk '{print $2}'` >> ~/.bashrc 

2 将系统环境变量PATH的值改为/bin,然后执行passwd 修改当前用户的密码能成功么

$PASH为全局变量,使用export命令修改

[root@localhost ~]# export PATH=/bin

尝试修改密码,发现是可以成功的,原因

[root@localhost ~]# which passwd
/bin/passwd

3 将当前的系统的语言环境变成中文(如已是中文则切换成英文),并永久生效

系统语言环境配置文件为/etc/locale.conf

[root@localhost ~]# echo 'LANG=zh_CN.UTF-8' > /etc/locale.conf

4 找出系统中小于1k的文件并复制到/var/tmp/find_dir中,并放入后台执行

[root@localhost ~]# find / -size -1k | xargs -I{} cp {} /var/tmp/find_dir &

5 对系统的组账户文件统计,并对他们的gid做排序,输出到文件~/gid txt,并对输出做行数统计

[root@localhost ~]# cut -d: -f3 /etc/group | sort -n | tee ~/gid.txt | wc -l
87
[root@localhost ~]# sort -t: -k3 -n /etc/group | tee ~/gid.txt | wc -l
87
[root@localhost ~]# awk -F: '{print $3}' /etc/group | sort -n | tee ~/gid.txt | wc -l
87

6 使用sed直接对文件~/install.log做修改,将x86_64全部修改为i386,并生成备份文件

[root@localhost ~]# sed -i.bak 's/x86_64/i386' ~/install.log
发布了67 篇原创文章 · 获赞 2 · 访问量 1385

猜你喜欢

转载自blog.csdn.net/weixin_42511320/article/details/105013399