`
阿男bluedash
  • 浏览: 169007 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Linux使用技巧大拼盘(四)

阅读更多
Linux使用技巧大拼盘(四)


grep显示行号


使用grep的`-n`选项可以显示行号:





`/`的inode号是2

power:/ weinanli$ ls -ldi /
2 drwxr-xr-x  40 root  wheel  1428 Oct  9 08:28 /


`ls -F`


ls的manpage对`-F`选项的说明如下:

    -F      Display a slash (`/') immediately after each pathname that is a
             directory, an asterisk (`*') after each that is executable, an at
             sign (`@') after each symbolic link, an equals sign (`=') after
             each socket, a percent sign (`%') after each whiteout, and a ver-
             tical bar (`|') after each that is a FIFO.


其中比较常见的是 `/`(目录),`*`(可执行文件)和`@`(符号链接)。下面是例子:





getcwd


getcwd可以获取进程所在工作目录,类似`pwd`命令的效果:







bash中查看数组中数据的索引号


power:~ weinanli$ foo=(a b c)
power:~ weinanli$ echo ${!foo[@]}
0 1 2


bash中制定数组中数据的标号


power:~ weinanli$  foo=(a [5]=b c)
power:~ weinanli$ echo ${!foo[@]}
0 5 6


bash中查看数组中某一元素的字串长度


power:~ weinanli$ foo=(a b c d e f g)
power:~ weinanli$ echo ${#foo[@]}
7
power:~ weinanli$ foo=(x xy xyz)
# 第一个元素`x`,长度为1
power:~ weinanli$ echo ${#foo[0]}
1
# 第二个元素`xy`,长度为2
power:~ weinanli$ echo ${#foo[1]}
2
# 第三个元素`xyz`,长度为2
power:~ weinanli$ echo ${#foo[2]}
3


bash中查看数组包含的元素个数


power:~ weinanli$ foo=(a b c)
# 查看数组本身的元素个数用`[@]`引用数组本身即可
power:~ weinanli$ echo ${#foo[@]}
3
power:~ weinanli$ foo=(a b c d e f g)
power:~ weinanli$ echo ${#foo[@]}
7


bash中的参数展开


通过使用`!`,我们可以让bash将传入函数的字串转变为变量名:

function not_expand() {
    echo ${1}
}

function expand() {
    echo ${!1}
}

foo=(a b c)
echo "NOT_EXPAND"
not_expand foo
not_expand foo[@]
echo "EXPAND"
expand foo
expand foo[@]


以下是执行结果:





bash中传入数组


power:Desktop weinanli$ ccat in_array.sh
function in_array() {
    foo=${!1}
    bar=${!2}
    echo ${foo[@]}
    echo ${bar[@]}
}

arr1=(a b c)
arr2=(x y z)

in_array arr1[@] arr2[@]
power:Desktop weinanli$ sh in_array.sh
a b c
x y z
power:Desktop weinanli$





更为可靠的方法是这样声明`foo`和`bar`:

    declare -a foo=("${!1}")
    declare -a bar=("${!2}")


其中`declare -a`就是把foo和bar强制声明为数组类型,然后`()`本身就是数组的声明格式。
  • 大小: 19.5 KB
  • 大小: 35.5 KB
  • 大小: 35.5 KB
  • 大小: 43.4 KB
  • 大小: 32.6 KB
  • 大小: 38.3 KB
分享到:
评论

相关推荐

    linux使用小技巧(2)

    linux使用小技巧linux使用小技巧linux使用小技巧linux使用小技巧linux使用小技巧

    Linux使用技巧集/Linux高级技巧集/Linux基础教程

    本资料集包含了"Linux使用技巧集"、"Linux高级技巧集"和"Linux基础教程"三个部分,旨在帮助用户从初级到高级全面掌握Linux系统的使用和管理。 "Linux使用技巧集"涵盖了日常操作中的各种实用技巧,例如: 1. **...

    Linux使用技巧集.zip_linux_linux 技巧

    linux使用技巧

    Linux使用技巧集

    Linux使用技巧集Linux使用技巧集

    Linux命令使用技巧

    Linux 命令使用技巧 一、Linux 基础知识 Linux 是一个开源的操作系统,-gnu 和 Linux 内核相结合,gnu 是一个开源组织。Linux 内核是操作系统的核心程序,相当于人的大脑,负责系统程序和硬件分配及调度。GNU/...

    Linux高级技巧集

    Linux高级技巧集,Linux 教程 -------------------------------------------------------------------------------- File Name 第一课 什么是Linux 第二课 为什么使用Linux 第三课 Linux纵览 第四课 ...

    Linux学习资料(基本命令、使用技巧、基础教程、高级技巧集)

    "Linux使用技巧集"可能包含了提高效率的各种小窍门,比如如何使用管道(|)和重定向(>、<)操作来组合命令,如何利用tab键自动补全命令和路径,以及如何通过alias命令创建自定义快捷方式。此外,可能还涵盖了文件...

    Linux系统使用技巧阅读手册

    Linux系统使用技巧阅读手册

    Linux 编译器的使用技巧

    ### Linux 编译器的使用技巧详解 #### 引言 在Linux环境下,尤其是对于编程爱好者和专业开发者而言,熟练掌握编译器的使用技巧至关重要。本文将深入探讨Linux编译器的使用方法,特别是针对两个常见问题:屏幕滚动...

    Linux 命令行使用技巧思维导图

    Linux 命令行使用技巧思维导图 Linux 命令行使用技巧思维导图是指在 Linux 操作系统中使用命令行界面来进行操作和管理的技巧和方法。本文将从 Linux 基础知识、 shell 基础知识、shell 快捷键、命令行使用技巧、...

    Linux Shell高级技巧实战总结

    Linux Shell高级技巧实战总结 一、将输入信息转换为大写字符后再进行条件判断 二、为调试信息设置输出级别 三、判断参数是否为数字 四、判断整数变量的奇偶性 五、将Shell命令赋值给指定变量,以保证脚本的移植性 六...

    Linux高级技巧集.chm

    Linux高级技巧集.chm

    Linux命令使用技巧集锦.pdf

    ### Linux命令使用技巧集锦 #### 一、处理特殊的文件名 在Linux系统中,文件名可以非常灵活,包括使用一些特殊字符。然而,当文件名以特定字符开头时(如`-`),Linux可能会误认为这是一个命令参数而非文件名本身。...

    Linux技巧总结

    LInux各种技巧总结汇总,运维经验!防火墙,文本编辑,编译技巧,定时任务,系统日志等

Global site tag (gtag.js) - Google Analytics