我想在括号中设置一个变量(x = 100),例如
x=100
for i in {0.."$x"..50} ;do
echo $i
done
我的愿望输出应该是
0
50
100
虽然我得到了输出
{0..100..50}
我有一个文件 file1,具有以下值
50
43
43
39
38
我已经定义了一个常量参数“framei=218”,我想获得以下输出,file2
218 50
218.5 43
219 43
219.5 39
220 38
将类似于以下内容
awk '{print NR*'$framei' " " $s}' file1 > file2
我有两个文件
第一个文件,即 file1,包含具有以下值的三行
17.503766
17.252752
17.348948
第二个文件,即 frame1 包含以下值
38.730
17.270
24.370
45.180
46.510
目标是计算 frame1 文件中的这些值中有多少大于 file1 的 line1 中显示的值。
所以将类似于下面的内容,但是我不知道如何将其设置为标准
awk '($1>??){ ++count } END{ print count }' 'frame1' > 'file-new'
我有一个包含以下数字列表的文件:
0.1131492
0.1231466
0.1327564
0.1017683
5.4356130
0.1360532
5.4258129
0.1433982
0.1124752
.
.
.
如果一行包含大于 1.0000 的值,我想重写此数字列表,然后获取前一行的数字/值,例如:
0.1131492
0.1231466
0.1327564
0.1017683
0.1017683
0.1360532
0.1360532
0.1433982
0.1124752
.
.
.
我想从文件中删除一个字符“[”。我试过了
sed -i 's/[//g' 'filename'
但是我收到以下错误
sed:-e 表达式 #1,字符 6:未终止的 `s' 命令
我有以下输入文件
H1
C1
C2
C3
H2
C4
.
.
.
我想仅使用字符而不是数字获得以下输出格式
H
C
C
C
H
C
.
.
.
我有以下输入格式,
H
O
C
H
H
C
H
H
O
C
H
H
C
我想获得以下输出,
H1
O1
C1
H2
H3
C2
H4
H5
O2
C3
H6
H7
C4
如何从包含字符“H”的文件中删除行?该文件包含以下列:
H1
N1
H2
C1
H3
H4
C2
H5
H6
N2
H7
C3
H8
H9
C4
H10
H11
N3
H12
C5
H13
H14
C6
H15
H16
期望的输出是:
N1
C1
C2
N2
C3
C4
N3
C5
C6
输入文件看起来像这样
H1 O1 C1 H2 H3 C2 H4 H5 O2 C3 H6 H7 C4 H8 H9 O3 C5 H10 H11 C6 H12 ......
我想要以下输出文件
z(A) H1 O1 C1 H2 H3 C2 H4 H5 O2 C3 H6 H7 C4 H8 H9 O3 C5 H10 H11 C6 H12 ...... OW HW1 HW2
以便在行首包含“z(A)”并在末尾包含“OW HW1 HW2”
in 文件看起来像这样
-17.3644 0.00000000 0.00000000 ....
-17.2703 0.00000000 0.00000000 ....
-17.1761 0.00000000 0.00000000 ....
-16.5173 0.00000000 0.00000000 ....
-16.4232 0.00000000 0.00000000 ....
期望的输出应该是
-173.644 0.00000000 0.00000000 ....
-172.703 0.00000000 0.00000000 ....
-171.761 0.00000000 0.00000000 ....
-165.173 0.00000000 0.00000000 ....
-164.232 0.00000000 0.00000000 ....
所以我想将第一列乘以 10,但同时还要保留其他 1000 列。你只打印第一列,awk '{print $1*10}' infile > outfile
我怎么能保留其他列?
如何尽快将第 2 列除以第 1000 列除以 1000?
awk '{printf $"{2..1000..1}"/1000}' file 1 > file2
我想在新文件的列中打印以下内容
1_number_density_per_atom_1.xvg
1_number_density_per_atom_2.xvg
1_number_density_per_atom_3.xvg
.
.
.
1_number_density_per_atom_653.xvg
所以我想这个想法会是写类似的东西
printf "%s\n" "1_number_density_per_atom_1.xvg" "1_number_density_per_atom_2.xvg" "1_number_density_per_atom_3.xvg" ... "1_number_density_per_atom_653.xvg" > test.dat
我有如下所示的输入文件:
H1
O1
C1
H2
H3
O2
C2
Br1
我想要一个具有以下输出的输出文件
H1 = 1
O1 = 8
C1 = 6
H2 = 1
H3 = 1
O2 = 8
C2 = 6
Br1 = 35
因此,当存在氢时,我希望等于 1(等于 1 个电子),因此当碳等于 6 时,当氧等于 8 时,当溴等于 35 时。
我有以下顺序,
N
H
CB
CB
CG1
CG2
C
O
N
H
CB
CB
CG
CD
.
.
.
当“CB”在下面的行中重复时,我想用“CA”替换第一个“CB”,从而得到以下序列
N
H
CA
CB
CG1
CG2
C
O
N
H
CA
CB
CG
CD
.
.
.
我有以下数据结构
HG2 MET
HG1 THR
HG2 THR
HG2 GLN
愿望输出将是
HG1 MET
HG1 THR
HG2 THR
HG1 GLN
不知何故,我需要做以下事情
for i in MET GLN
do
sed 's/HG2 $i/HG1 $i/g'
done
或者如果可以指定我不想将 HG2 更改为 THR 但仍更改所有其他
我在文件中有一个数据列表,例如
-0.2947990000000000
0.1722064000000000
0.1722064000000000
0.1722064000000000
0.0315420000000000
我想重复这个数据序列 35 次,以便有一个输出文件,例如
-0.2947990000000000
0.1722064000000000
0.1722064000000000
0.1722064000000000
0.0315420000000000
.
.(x35 times)
.
-0.2947990000000000
0.1722064000000000
0.1722064000000000
0.1722064000000000
0.0315420000000000
我有一个看起来像这样的文件
18DMA H 9996 0.886 5.687 5.320
18DMA H 9997 1.019 5.764 5.247
18DMA Np 9998 0.947 5.584 5.151
18DMA H 9999 1.033 5.541 5.113
18DMA Cn10000 0.880 5.674 5.050
18DMA H10001 0.831 5.616 4.971
18DMA H10002 0.814 5.751 5.091
18DMA H10003 0.957 5.735 5.003
18DMA Cn10004 0.837 5.486 5.185
期望的输出是删除第 3 列,但是由于从某个行/行开始,接下来在原子名称和编号之间没有空格,我无法按列进行删除。有没有办法通过选择一定数量的字符来进行删除?期望的输出应该是
18DMA H 0.886 5.687 5.320
18DMA H 1.019 5.764 5.247
18DMA Np 0.947 5.584 5.151
18DMA H 1.033 5.541 5.113
18DMA Cn 0.880 5.674 5.050
18DMA H 0.831 5.616 4.971
18DMA H 0.814 5.751 5.091
18DMA H 0.957 5.735 5.003
18DMA Cn 0.837 5.486 5.185