我正在尝试从教科书中提出问题,以提高我的linux技能。
问题是:
使用/etc/passwd,提取Kali机器上所有用户的用户和主目录字段,其中的外壳设置为/bin/false。请确保使用Bash一行将输出打印到屏幕上。输出应该类似于下面的清单53:
kali@kali:~$ YOUR COMMAND HERE...
The user mysql home directory is /nonexistent
The user Debian-snmp home directory is /var/lib/snmp
The user speech-dispatcher home director
样本文本
I like Linux
I like Microsoft
I like Solaris
I hate Linux
I hate Microsoft
I hate Solaris
我试图找出一个与regex X匹配但没有regex的行。使用示例文本,我试图得到以下内容。
I like Linux
I like Microsoft and Linux
I like Solaris and Linux
I hate Linux
I hate Microsoft
I hate Solaris
请注意,它只添加到有like而没有Linux的行中。
这一天我一直在努力工作,我从diff awk sed尝试了太多的代码,我可以再次记住我尝试过的代码,
所以我的问题是,我有两个文件(file1和file2)
File1 :
#4 and a row (2)
+1 hello post (5)
10 Years After (6)
21 & Over (8)
50_50 (1)
Almost Christmas (3)
File2:
#4 and a row (2) http://example.com/post1
+1 hello post (5) http://example.com/post2
Not over yet (3
我有一个shell脚本,可以在这样的文件夹中打印appimage文件名
#! /bin/bash
Dir="$HOME/Applications/"
Dir2="$HOME/Downloads/"
cd -P "$Dir"
for f in *.AppImage; do
z=$(echo $f | head -n1 | awk '{print $1;}')
echo $z
done
现在输出如下:
Altus-4.8.5-x86_64.AppImage
GitHubDesktop-linux-3.2.0-linux1.Ap
我有一个文件,它有多行,结构如下:
Text line1: xxxx
Text line2: x
OS: "MacOS"
NotOS: "Linux"
Text line3:
ID: 12345
或
Text line1: xxxx
Text line2: x
OS: "MacOS|Linux|Red Hat|Windows|Ubuntu|CentOS|Fedora"
NotOS: "HP-UX"
Text line3:
ID: 12345
我希望获得在OS字段中有"CentOS“,但在NotOS字段中没有"Lin
样本数据
wolf@linux:~$ awk {print} file.txt
a b
b c
c d
wolf@linux:~$
这很容易做到,因为数据非常小。
wolf@linux:~$ awk 'BEGIN {print " " 1 " " 2} {print NR,$0}' file.txt
1 2
1 a b
2 b c
3 c d
wolf@linux:~$
对于更大的数据有类似的解决方案吗?我正在考虑在BEGIN {print " " 1 " " 2}部件上使用类似于D3的东西,而不是手
我正在尝试写一个命令,它将获得每个平台的最后一个数字,并将它们相加,然后将该数字保存为变量。例如,对于下面随机文件中的"AIX“,我希望能够提取1和115,并将116保存为变量。然后,对于"Linx“,我想保存2、16、18、96和1,并将和保存为另一个变量。
cat randomfile.txt:
AIX,5.5.3-0,1
AIX,6.2.1-0,115
Linux x86-64,6.4.0-0,2
Linux x86-64,6.4.0-1,16
Linux x86-64,7.1.2-0,18
Linux86,6.1.3-4,96
Linux86,6.2.5-0,1
我能