小编Bla*_*tal的帖子

如何使用包含 ' 和 " 的命令创建别名

几篇文章前有人问过如何以百分比显示内存。有人回复:

free | awk '/^Mem/ { printf("free: %.2f %\n", $4/$2 * 100.0) }'
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以将此命令转换为 ~/.bashrc 中的别名。但是别名的语法是:

alias aliasname='command'
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?该命令同时包含'"。我尝试了不同的方法,但没有奏效。这甚至可能吗?我错过了什么吗?

bash alias quoting

10
推荐指数
2
解决办法
671
查看次数

如何将2个数组合并为一个关联数组

我需要将ARRAY1和组合ARRAY2成一个关联数组,如ARRAY. 我正在使用此代码:

 mapfile -t ARRAY1 < <(/bin/awk '{ print $ 1 }' /output/gen_branch)
 mapfile -t ARRAY2 < <(/bin/awk '{ print $ 6 }' /output/gen_code )
 declare -A ARRAY

 for ((i=0; $i<${#ARRAY1[@]}; i++))
 do
 ARRAY+=( ["${ARRAY1[i]}"] = "${ARRAY2[i]}" )
 done

 ##added this loop to check output
 for value in "${!ARRAY[@]}"
 do
 echo "branch: $value"
 echo "code: ${ARRAY[$value]}"
 done 
Run Code Online (Sandbox Code Playgroud)

我希望这样的事情在bash的其他部分使用它们(即价值是很重要的第一个元素ARRAY1第一元素ARRAY2等):

ARRAY1=( b1 b2 b3 )
ARRAY2=( c1 c2 …
Run Code Online (Sandbox Code Playgroud)

bash array shell-script merge associative-array

2
推荐指数
1
解决办法
2354
查看次数

如何按列对脚本进行排序并删除重复的脚本

我有一个将近 2000 行的文件。文件格式是这样的:

12 34
0 2
2 3
7 9
1 2
306 237
0 9
12 134
2 7
2 9
306 3
  
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写一个 bash 脚本来删除重复的第一列并按第二列进行组织。我希望这个输出:

0 2 9 
1 2
2 3 7 9
7 9 
12 34 134
306 237 3
Run Code Online (Sandbox Code Playgroud)

我尝试了一些代码,但没有得到所需的输出。我怎样才能做到这一点,我应该使用什么?

awk text-processing sort datamash

0
推荐指数
1
解决办法
94
查看次数