我在Linux shell中有包含以下详细信息的文件
Sam , apple
jhon , banana
Sam , apple
jhon , banana
Sam , mango
jhon , banana
jhon , apple
Sam , apple
Sam , papaya
使用我的Linux命令,我可以得到如下结果
cat /names/fav.log | cut -d "," -f 1|sort |uniq -c | sort -rn
结果
Sam 5
jhon 4
但我需要第二列的uniq计数。如下所示
Required result
我对BASH脚本比较陌生。我希望有人能帮忙。我有两个文件。文件1是包含某些服务器属性的.csv文件。
cmdb_ci_linux_server.csv
"CLS000","csl000","Linux SuSe","9","HP"
"CLS001","cls001","Linux SuSe","9","VMware, Inc."
"CLS002","cls002","Linux Red Hat
我对Linux非常陌生,我已经发现了很多关于如何在文件中进行字符计数的有用信息,但是Linux/终端中是否有一种方法可以根据每一行特定字符发生的次数对文本文件进行排序呢?
例如:
baseball
aardvark
a man a plan a canal panama
cat
bat
bill
按字母"a“的出现次数排序:
a man a plan a canal panama
aardvark
baseball
cat
bat
bill
对于"cat“和"bat”一次出现"a“的情况,我不关心等号行的顺序是否被颠倒,只是对按字符频率排列的一般行感兴趣。
我有一些linux的文件。例如2,我需要在一个文件中打乱文件。
例如
$cat file1
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
和
$cat file2
linea one
linea two
linea three
linea four
linea five
linea six
linea seven
linea eight
然后,我将这两个文件混洗,可以得到类似以下内容:
linea eight
line 4
linea five
line 1
linea three
line 8
linea seven
line
在linux文件系统中找到重复文件夹的最快方法是什么?
这是我的主意,我知道它没有效率。
这里是它的小代码:
start from on directory named d1
put file names in d1 into an array.
for i in array
do
node=`find -iname $i`
father=father of node
check if the $father is that specific directory.
done
还没完成呢。
做这件事最有效的方法是什么?
我可以在python中做到这一点,但是我想知道我是否可以在Linux中做到这一点。
我有一个这样的文件
name1 text text 123432re text
name2 text text 12344qp text
name3 text text 134234ts text
我想通过一个特定的用户名来查找第三列中所有不同类型的值,比如name 1。
grep name1文件名给了我所有的行,但是必须有某种方法来列出所有不同类型的值?(我不想显示相同用户名的重复值)
我正在尝试捕获linux中"sort -c“的输出。我试着将它重定向到一个文件中,使用了tee命令,但两者都没有帮助。有什么建议吗?
例如:
roor>cat db | sort -c
sort: -:319: disorder: 1842251880: aa bb bc dd ee
以下操作无法给出输出
roor>cat db | sort -c > fileName
roor>cat db | sort -c |tee fileName
示例文件:
>cat file
111 aa as sdasd
222 sadf dzfasf af
33
我有一个目录,里面有很多PDF文件名中有空格。 file 1.pdf
file 2.pdf
file 3.pdf
# And so on 我在该目录中运行了此命令。 pdftk `ls -v` cat output combined-report.pdf 但是终端产生了一堆像这样的错误。 Error: Unable to find file.
Error: Failed to open PDF file:
file
Error: Unable to find file.
Error: Failed to open PDF file:
1.pdf 如何使用pdftk或Arch
我有两个文件A和B。我想查找A中不在B中的所有行。使用标准linux实用程序在bash/中执行此操作的最快方法是什么?这是我到目前为止尝试过的:
for line in `cat file1`
do
if [ `grep -c "^$line$" file2` -eq 0]; then
echo $line
fi
done
它是有效的,但速度很慢。有没有更快的方法来做这件事?
我有一个Linux shell脚本,输出如下(名称和分数字段长度是可变的,字段由空格分隔):
Name Gender Age Score
John Smith M 24 1110
Alice Darby F 30 2220000
test = [('John Smith','M',24,1110),('Alice Darby','F',30,2220000)]
有没有更好的方法呢?
编辑以删除不必要地使用"cat“命令.
我有一个Linux脚本,它从CSV文件中读取数据,并根据文件中每一行的最后一列执行操作。
输入文件具有以下基本格式:
asdf,foo
1234,foo
qwerty,bar
zxcv,baz
7890,bar
最初的Linux脚本如下所示:
sed s/.*,//g $1 | sort -u | while read item
do
# Do stuff with $item
done
我很难将Linux脚本转换为在Windows环境中运行,使用GnuWin32版本的cat、sed和sort。到目前为止,我尝试过的是:
for /f
我有一个命令,它可以处理文本文件,计数所有出现的单词,然后按如下方式打印出来:
user@box $˜ magic-command-i-forgot | with grep | and awk | sort ./textfile.txt
66: the
54: and
32: I
16: unix
12: bash
5: internet
3: sh
1: GNU/Linux
所以它不逐行搜索,而是逐字逐句地搜索,它对所有的单词都是这样做的,而不仅仅是一个单词。我很久以前就在网上找到了它,但我找不到,也记不起来。