一口气学完Linux基础(七)——SHELL脚本的常用命令

努力一口气学完Linux基础的第七章,今天学的是:

                                                                                                               SHELL脚本的常用命令  

———————————————————————————————————————————

目录

一. 设置主机名称

1.文件方式

2.命令方式

二. 网络管理命令 nmcli

1. 查看网卡

2. 设置网卡

三. 简单处理字符

1.打印连续数字

​编辑

2.指定格式打印

3.设置步长:

4.反向打印文件内容

5. 打印字符

a) 使用 printf

b) 使用 echo

四. 文件排序与处理

1. 排序 sort

拓展: 

五. xargs 命令

1. 使用 xargs

2. 多行输入单行输出

3. 每行输出指定个数

4. 指定分隔符

5. 用字符代替接收值

6. 其他常用选项


一. 设置主机名称

1.文件方式

修改完文件后,当前shell不会生效。如果需要生效,需重新开启一个新的shell。

2.命令方式

使用命令直接修改主机名,修改后立即生效,无需重启shell。

  vim /etc/hostname
  timinglee.easylee.org
  hostnamectl set-hostname timinglee.easylee.org

二. 网络管理命令 nmcli

1. 查看网卡

ip a s ens160
ifconfig ens160
nmcli device show ens160
nmcli device status

2. 设置网卡

  • 网卡未设置时

设置 DHCP(动态主机配置协议)和静态 IP 配置。

设置 DHCP:

nmcli connection add con-name ens160 type ethernet ifname eth160 ipv4.method auto

设置静态 IP:

nmcli connection add con-name ens160 type ethernet ifname eth160 ipv4.method manual ipv4.addresses 172.25.254.100/24 ipv4.gateway 172.25.254.2

  • 网卡已设置时

修改网卡配置后,需要刷新网卡才能使其生效。

  nmcli connection modify ens160 ipv4.addresses 172.25.254.200/24
  nmcli connection reload
  nmcli connection up ens160

以上操作在以前博客有实验,这里就不在赘述了。

三. 简单处理字符

1.打印连续数字

[root@timinglee ]# seq 1 3
1
2
3

2.指定格式打印

[root@timinglee ]# seq -f "%03g" 1 3
001
002
003

3.设置步长:

[root@timinglee ]# seq 1 2 10
1
3
5
7
9

4.反向打印文件内容

[root@timinglee ]# seq 1 9 > test
[root@timinglee ]# tac test
9
8
7
6
5
4
3
2
1

5. 打印字符

a) 使用 printf
  • 打印字符:

[root@timinglee ]# printf "hello world"
hello world[root@timinglee mnt]#
  • 打印带格式的字符:

printf "hello\tworld\n"
printf "3%%\n"  # 打印百分号
printf "%.0f" "3.1415926"  # 输出 3
printf "%.1f \n" "3.1415926"  # 输出 3.1
b) 使用 echo
  • 打印字符:
echo "hello world"
  • 不换行打印:
echo -n "hello world"

 

  • 解析转义字符:

echo -e "hello\tworld"

四. 文件排序与处理

1. 排序 sort

  • 排序内容,默认按行首字符排序:

sort -n lee  # 数字排序
  • 逆序排序:

sort -r -n lee
  • 去除重复行:

sort -u lee
  • 输出到指定文件:

sort -u lee -o test-t
  • 按分隔符排序:

sort -n -t ":" -k 2 lee

拓展: 

五. xargs 命令

xargs 将标准输入数据转换成命令行参数,可以处理管道或标准输入,将数据转为特定命令的参数。

1. 使用 xargs

将输入的内容转为命令行参数:

echo /mnt/lee{1..3} | xargs touch

2. 多行输入单行输出

合并多行输出为一行:

xargs < /mnt/lee

3. 每行输出指定个数

xargs -n 3 < /mnt/lee

4. 指定分隔符

使用 -d 指定分隔符:

echo "lee:lee:lee" | xargs -d:

5. 用字符代替接收值

使用 -I 来替换特定字符串为命令行参数:

ls /mnt/* | xargs -Iword rm -fr word

6. 其他常用选项

  • -c:合并重复并统计重复个数。
  • -d:显示重复的行。
  • -u:显示唯一的行。
  • -n:指定每次执行命令的参数个数。
  • -p:提示用户确认是否执行命令。
  • -r:当标准输入为空时,不执行命令。

--------------------------------------------------------------------------------------------------------------------------------

以上就是一口气学完Linux基础(七)——SHELL脚本的常用命令的全部内容了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值