我有88个文件夹,每个文件夹都包含“对.‘数字’”文件。(对3472,对7829等)。我需要使用awk来处理文件,以提取第二列,但我需要保存数字。如果我试着:
#!/bin/bash
for i in {1..88}; do
awk '{print $2}' ~/Documents/attempt.$i/pair* > ~/Results/pred.pair*
done
它不保存数字,但只提供一个文件:pred.pair*
谢谢你的建议。
我试图从<和>之间的文件中提取文本,但只从另一种特定模式开始的行中提取文本。
因此,在一个文件中,看起来如下:
XXX Something here
XXX Something more here
XXX <\Lines like this are a problem>
ZZZ something <\This is the text I need>
XXX Don't need any of this
我只想打印<\This is the text I need>。
如果我做了
sed -n '/^ZZZ/p'
我想从成千上万的文件中提取特定的列,并将该列打印到新文件中新的列格式
输入file1:
a e i
b f j
c g k
d h l
输入file2:
l p t
m q u
n r v
o s w
输入file3:
w 1 5
x 2 6
y 3 7
z 4 8
我想从我正在使用的每个文件中提取第二列
awk ' { print $2 } ' > test.txt
现在,每个提取的列都要按列打印到新文件中,这里我有一个查询。
预期输出文件:
e p 1
f q 2
从"schemas.txt“文件中提取用户输入的第三个字段的位置。
schemas="schemas.txt"
for i in ${schemas[@]};
do
awk '{for(i=1;i<=NF;i++)if($i=="$3")print i}'
done
你知道为什么我被困在一个无限循环里吗?
编辑:在下面添加了一个示例。
在schemas.txt中,第二行是“人高体重年龄种族职业”。
假设用户输入"age“作为他们的第三个参数,我希望解析行并返回"4”,因为它是字符串中的第四个单词。
问题:针对特定参数,比较节点的预检查状态和后检查状态的文件。
在社区的一些帮助下,我写了以下解决方案,从pre和post目录中提取信息,并基于"Node-ID“(它恰好是唯一的,也将从文件中提取)。在从Pre/post文件夹中提取数据后,我已经基于node-id创建了文件夹,并将文件转储到这些文件夹中。
我提取数据的代码(从Pre和Post文件夹中提取数据)
FILES=$(find postcheck_logs -type f -name *.log)
for f in $FILES
do
NODE=`cat $f | grep -m 1 ">" | a
我有一个列文件,我想打印所有不包含字符串SOL的行,并且只打印包含SOL但第5列<1.2或>4.8的行。
该文件的结构为: MOLECULENAME ATOMNAME X Y Z
示例:
151SOL OW 6554 5.160 2.323 4.956
151SOL HW1 6555 5.188 2.254 4.690 ----> as you can see this atom is out of the
151SOL HW2 6556 5.115 2.279 5.034 threshold,
很抱歉,如果这是非常基本的东西,但我只是从awk开始,所以我有一个输入文件im管道进入awk,如下所示。格式永不更改(如下所示)
name: Jim
gender: male
age: 40
name: Joe
gender: female
age: 36
name: frank
gender: Male
age: 40
我想列出所有年龄在40岁的名字
我能找到他们就像‘2美元==’40“{打印$2 }‘
但不知道怎么打印名字
我想做一个脚本,它将打印我在一个文件夹和子文件夹中的所有文件的扩展名,计算有多少个文件类型和大小。
Example:
file type | total count | total size
pdf 30 4.0k
txt 90 60.0k
差不多吧。除了尺寸部分,我已经知道该怎么做了。有什么建议吗?
问题
我在一个文件夹中有多个Markdown文件,格式如下.
# Cool Project
* Random Text
* Other information
TODO: This is a task
TODO: This is another task
我写了一个脚本从所有文件中提取所有以TODO开头的字符串..。
ag TODO: ~/myfolder/journal | sed 's/\(^.*:\)\(.*\)/TODO:\2 /g' | sed ''/TODO:/s//`printf "\033[35mTODO:\033[0m"`