文件名前$ 1的含义是什么

时间:2019-11-07 12:48:56

标签: linux bash shell

function copy_nfs_files {
        [ -f /proc/self/mountstats ] && cp /proc/self/mountstats $1/proc-self-mountstats.$2 >/dev/null 2>&1
        [ -f /proc/net/rpc/nfsd ] && cp /proc/net/rpc/nfsd $1/proc-net-rpc-nfsd.$2 >/dev/null 2>&1
}

此bash函数复制两个文件/proc/self/mountstats/proc/net/rpc/nfsd$1/proc-self-mountstats.$2是什么意思?我在文件名前看到$1,在文件末尾看到$2吗?

我知道$0是基本名称,$1是第一个参数,$2是第二个参数,依此类推。我想知道的是,当他们像$1/proc-self-mountstats.$2一样使用时会产生什么。假设$1 = 123$2 = 100。您是说它会变成123/proc-self-mountstats.100吗?

我四处搜寻以了解含义,但对此一无所获。

2 个答案:

答案 0 :(得分:0)

  

我想知道的是当他们使用$1/proc-self-mountstats.$2时会产生什么。假设$1 = 123$2 = 100。您是说它会变成123/proc-self-mountstats.100吗?

是的,没错。扩展值与文字部分结合在一起,形成一个大字符串。

答案 1 :(得分:-2)

在函数$ 1之外,代表脚本的第一个参数。 在函数内$ 1代表该函数的第一个参数。