替换换行符

IFS 和echo一起配合才有作用

#!/bin/bash

echo $IFS|od -b
old_if=$IFS
IFS=$'\n'
echo `lsmod|awk '{print $1}'`
IFS=$old_if
echo $IFS|od -b

  结果

0000000 012
0000001
Module binfmt_misc xt_LOG nf_log_syslog xt_set ip6t_rpfilter ip6table_nat ip6table_mangle ip6table_security ip6table_raw ip6t_REJECT nf_reject_ipv6 ip6table_filter ip6_tables iptable_nat nf_nat iptable_mangle iptable_security iptable_raw ipt_REJECT nf_reject_ipv4 xt_conntrack nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_filter ip_tables ebtable_nat ebtable_broute ebtable_filter ebtables ip_set_hash_ip udp_diag tcp_diag inet_diag libcrc32c rfkill ip_set nfnetlink intel_rapl_common intel_uncore_frequency_common isst_if_mbox_msr isst_if_common nfit crct10dif_pclmul crc32_pclmul polyval_clmulni polyval_generic ghash_clmulni_intel sha512_ssse3 sha256_ssse3 sha1_ssse3 aesni_intel crypto_simd cryptd rapl joydev input_leds pcspkr virtio_balloon floppy qemu_fw_cfg i2c_piix4 tcp_bbr sch_fq ext4 mbcache jbd2 virtio_net net_failover virtio_blk virtio_console failover ata_generic pata_acpi crc32c_intel ata_piix cirrus drm_shmem_helper drm_kms_helper serio_raw virtio_pci virtio virtio_pci_legacy_dev virtio_pci_modern_dev virtio_ring drm libata
0000000 

  

[root@hcss-ecs-c16f ~]# echo $IFS|od -b
0000000 012
0000001
[root@hcss-ecs-c16f ~]# echo $IFS

[root@hcss-ecs-c16f ~]# old_if=$IFS
[root@hcss-ecs-c16f ~]# IFS=$'\n'
[root@hcss-ecs-c16f ~]# echo $IFS|od -b
0000000 012
0000001
[root@hcss-ecs-c16f ~]# IFS=$old_if
[root@hcss-ecs-c16f ~]# echo $IFS|od -b
0000000 012
0000001

 

od命令

命令用于转换不同格式的输入内容,以八进制格式为默认格式。在调试 Linux 脚本中是否存在不需要的更改或字符时,此命令特别有用。如果指定了多个文件,od 命令将按列出的顺序将它们连接起来形成输入。它可以以多种其他格式显示输出,包括十六进制、十进制和 ASCII。它对于可视化非人类可读格式的数据非常有用,例如程序的可执行代码。句法

资料
https://www.geeksforgeeks.org/od-command-linux-example/