美文网首页
linux命令使用笔记

linux命令使用笔记

作者: AibWang | 来源:发表于2018-12-18 13:15 被阅读0次

shell中数组的定义和使用

1. 将某个目录下的文件存在一个数组内

allfiles=((ls ${indir}/*.txt))

2. 自定义数组

arr=(00 01 02 03 04 05 06 07)

3. 遍历数组元素

for elem in ${arr[@]}
do
  conmand
  ...
done

4. 获取数组的长度

num_elem=${#arr[@]}

shell中的最大向右删除

在某些情况下,我们想去掉路径单独获取文件名,那么就会用到最大向右删除

inf="../haha/apple/2018.123.txt"
fnm=${inf##*/}

上述获取的fnm2018.123.txt

5. 将一个文本文件中的全部行存入一个array

如果一个文本文件input.txt中的各行存在空格,如下:

# 2008 06 01 00 01 30.000 3110 10325     0.0  1.8      1
LYS    PG 2008 06 01 00 01 34.200
LYS    SG 2008 06 01 00 01 36.800

那么,arr1=($(cat input.txt))的元素是这样的

[#, 2008, 06, 0, ...]

即shell解释器将空格当做元素的分割符,将文本中的所有元素作为array的元素加入array

  • 那么,如何将带空格的各行文本存入array呢?修改IFS变量并未达到目标,因此只能采取“笨办法”了:通过循环,逐行赋值给array
# Algorithm 1
n=0
while read line1
do
    lines[n]=$line1
    let n++
done < input.txt

# Algorithm 2
n=0
for line1 in `cat input.txt`
do
    lines[n]=line1
    let n++
done

bash使用sed输出指定行

objline=12
sed -n ''$objline'p' $inf

使用awk来实现上述过程:

awk -v nn=$objline '{if(NR==nn) print $0}'

相关文章

  • Linux将图片转为raw

    整理旧笔记 使用linux下的ImageMagick自带的convert命令,进行raw格式转换,命令为: 注:u...

  • docker基本用法

    title: docker基本使用tags: 学习笔记 docker linux 以下的命令有的需要root权限,...

  • 实战:阿里云ecs上部署mongoDB的docker容器

    title: docker基本使用tags: 学习笔记 docker linux 以下的命令有的需要root权限,...

  • Hello Linux

    目录 一,Linux笔记 二,英语词汇 一,Linux笔记 Linux命令行/MacOS终端命令行 Java的世界...

  • 1.linux常用命令

    linux常用命令 熟练使用 Linux常用的命令

  • Linux 学习笔记 1

      继 Linux 学习笔记 0 安装 Linux 后开始学习 Linux 命令。首先学习的是获得命令帮助,最常用...

  • Linux命令

    Linux命令 @(存笔记) Linux、Unix、Mac等常用命令 创建用户 Ubunturoot用户密码 创建...

  • Linux基础(四)

    1.4. Linux命令概述 1.4.1. 命令使用方法 Linux命令格式: command [-options...

  • Linux常用命令笔记

    Linux常用命令笔记 标签: 笔记 根据慕课网达人养成计划归纳总结的相关笔记 Linux简介 1、Linux分为...

  • Linux运维之道(4)——Linux命令帮助

    @(Linux)[Linux命令, 帮助获取] 在我们使用Linux操作系统的时候,经常会使用一些命令,但是由于时...

网友评论

      本文标题:linux命令使用笔记

      本文链接:https://www.haomeiwen.com/subject/beokkqtx.html