如何将文件从目录移动到当前目录中的文件夹?我试过这个命令,但没有用。
move /home/document/query/template.xlsm $CWD/accuracy_results_folder
如何将文件从目录移动到当前目录中的文件夹?我试过这个命令,但没有用。
move /home/document/query/template.xlsm $CWD/accuracy_results_folder
我的输入文件是file_1.txt、file_2.txt、file_3.txt等等。这些文件包含数据,例如
$ head file_*.txt
==> file_1.txt <==
----- Reset Loop 1 -------
Test #1
data
Test #2
data
Test #3
Test #4
data
==> file_2.txt <==
----- Reset Loop 2 -------
Test #1
Test #2
data
Test #3
Test #4
data
==> file_3.txt <==
----- Reset Loop 3 -------
Test #1
data
Test #2
data
Test #3
Test #4
只有当输入文件中每个测试下可用的数据为:
#!/bin/bash
awk '
FNR==1 {
testId = ""
split(FILENAME,f,/[_.]/)
fileId = f[4]
}
testId != "" {
if (NF) {
print testId > "1_val.txt"
print fileId > "2_val.txt"
}
testId = ""
}
sub(/^Test #/,"") {
testId = $0
}
' file_*.txt
我从这段代码中得到的输出:
1_val.txt
1
2
4
2
4
1
2
2_val.txt
ਲਲਲਲਲਲਲਲਲਲਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਲ਼ਵਵਵਵਵਵਵਵਵਵ
我的操作系统或其他问题可能存在问题,因为我的输出文件中有奇怪的字符。我已经想到了一种替代方法,即在输入文件的第一行中获取列出的数据的数字1_val.txt.
我为此提供的代码是,awk 'NR==1' file_*.txt
但我不太确定在脚本中的何处插入此特定命令。
The expected output:
2_val.txt
1
1
1
2
2
3
3
编辑:这是我正在运行以创建输出文件的确切命令。
thulasyc > cat data_collect.sh
#!/usr/bin/env bash
awk '
FNR==1 {
testId = ""
fileId = $4
}
testId != "" {
if (NF) {
print testId > "1_val.txt"
print fileId > "2_val.txt"
}
testId = ""
}
sub(/^TX PTP Command #/,"") {
testId = $0
}
' "${@:--}"
thulasyc > ./data_collect.sh ptp_log_reset_*.txt
thulasyc > head *_val*
==> 1_val.txt <==
1
2
3
5
6
11
12
13
15
16
==> 2_val.txt <==
1
1
1
1
1
1
1
1
1
1
输出文件内容的显示:
我的输入文件是file_1.txt
, file_2.txt
,file_3.txt
等等。这些文件包含数据,例如
$ head log_file_reset_*.txt
==> file_1.txt <==
Test #1
data
Test #2
data
Test #3
Test #4
data
==> file_2.txt <==
Test #1
Test #2
data
Test #3
Test #4
data
==> file_3.txt <==
Test #1
data
Test #2
data
Test #3
Test #4
Test
只有当Test
输入文件中每个可用的数据是:
#!/bin/bash
#################################################################################################
CWD=$(pwd)
for j in {1..5}
do
sed -n '
/^Test #/ {
s///
=
p
}
$=
' file_$j.txt \
| paste - - \
| awk -F '\t' '
NR > 1 && $1 - prevLine > ($2 ? 2 : 0) {print prev}
{prevLine = $1; prev = $2}
' >> 1_val.txt
我从此代码中获得的输出存储在1_val.txt
:
1_val.txt
1
2
4
2
4
1
2
我可以知道如何修改代码以获取列出的数据的文件名(只是数字)1_val.txt
并将其存储在另一个名为的文件中2_val.txt
吗?
预期输出:
2_val.txt
1
1
1
2
2
3
3
我的输入文件:
{empty line}
Test #1
data
{empty line}
Test #2
data
{empty line}
Test #3
{empty line}
Test #4
data
{empty line}
Test #5
预期输出:
1
2
4
如果使用简单的 bash 脚本在每个测试下都有可用数据,如何获取序列号(在主题标签之后)?
编辑:每个测试下的数据包含很少的值,例如日期、时间、差异等。两个Test之间有不止一根数据线。每个测试之间有一个空白行。“测试”数字始终是严格递增的正整数序列,从 1 开始。
我有三个文本文件,我想在我的 Linux 机器上将它们合并到一个文本文件中。
输入文件:
1_val.txt
0x0000000000060b7c02555b80
0x0000000000060b7c026c6580
0x0000000000060b7c0285ff80
2_val.txt
0x0000000000060b7c0257a180
0x0000000000060b7c026eab80
0x0000000000060b7c02884580
3_val.txt
2.2734
2.2734
2.2734
预期输出:
值.txt
0x0000000000060b7c02555b80 0x0000000000060b7c0257a180 2.2734
0x0000000000060b7c026c6580 0x0000000000060b7c026eab80 2.2734
0x0000000000060b7c0285ff80 0x0000000000060b7c02884580 2.2734
生成的输出:第一列和第二列中的最后三个值缺失。
0x0000000000060b7c02555 0x0000000000060b7c0257a 2.2734
0x0000000000060b7c026c6 0x0000000000060b7c026ea 2.2734
0x0000000000060b7c0285f 0x0000000000060b7c02884 2.2734
我用来完成这项工作的代码,
pr -m -t 1_val.txt 2_val.txt 3_val.txt > values.txt