linux第二课

文件名的通配符:

[0-9]\[a-z]\[[:digit:]]\[[:alpha:]]\[[:alnum]]\[[:upper:]]\[[:lower:]]\[[:black:]]

rename重命名

# rename .txt .xsl /app

tree

查看结构 -d -L

tr

# ifconfig eth0 |tr a-z A-Z >ip.txt 要先转换再导出,才能保存
# echo ‘error!!!‘ |tr a-z A-Z >error.txt 1>&2  
正确的输出结果是1.错误是2,这个是将正确的转换成错误的输出,正确的输出error!!!已经被导入了error.txt,所以不应该展示,但现在展示是因为正确的转成了错误的输出

df 磁盘

mail发邮件

# mail "hi" |mail -s "hello" [email protected]

tee可以将命令保存一份下来

# echo hello |tee /app/test.txt |tr a-z A-Z

重定向

# tr a-z A-Z < /etc/issue > /tmp/issue.out

做个题

1到100的和

# echo {1..100} |tr " " "+" |bc      bc为运算

chage

chage -l user1 查询密码
chage user1 交互式设置策略 -d yyyy-mm-dd指定密码的上次修改时间
-E yyyy-mm-dd 设置密码过期时间
-I天数 密码过期多少天后账户过期
-m 天数 密码最小存活期
-M 天数 密码最大存活期
-W 天数 密码过期前多少天提醒用户

useradd  查询id +username

-u 指定uid
-g 指定gid
-c 注释
-d 指定家目录 要先存在上级目录,家目录不存在

gpasswd

groupname 设置密码给组
-a user group添加用户到附加组
-d user group 将用户从组内踢掉

umask 抹去什么权限

在umask是002的时候,如下解释
默认权限,directory是777 ,file 是666
那么创建directory时,就会减去002,就是775 rwxrwxr-x
   创建file时,就会减去002,就是664 rw-rw-r--
直接修改umask   umask 064
umask但凡是奇数时,必有x,目录权限是偶数的话,相减时,就得加1

1、tr 转换和删除

 -s  将重复字符合并  
    tr -s  [[:blank:]] :将多个space合成一个,转换成‘:’ 老铁们,blank不带换行,space带换行
-d  删除选定内容
    tr -d [a-zA-Z]

2、head 取首

-n 获取前多少行 
-c 获取前多少字符

3、tail 取尾

-f显示追加的新内容,多用于监控日志

4、cut 抽取

-d 指定分隔符是什么   cut -d:则是以冒号为分隔符,多配合-f使用
-f  取第几个字段      -f 2,5,取2和5    -f 2-5 ,取2到5
-c  按字符切割   cut -c 1-4 /etc/passwd   取passwd 前四个字符

5、wc 收集文本统计数据

wc 等同于-l-w-c全部
-l 计数行数
-w 计数单词数
-c 计数字节数
-m 计数字符数

6、sort 排序

-n 按数字排序
-r 倒序
-f 选项忽略(fold)字符串中的字符大小写
-u 选项(独特,unique)删除输出中的重复行   
-t c 以c作为字段界定符   sort -t: /etc/passwd 配合-k
-k n 以c之后的第n个字段进行排序

7、uniq去重

uniq 
-c: 显示每行重复出现的次数 
-d: 仅显示重复过的行 
-u: 仅显示不曾重复的行 连续且完全相同方为重复

8、grep搜索

grep=grep--color
-v显示不被匹配到的行  grep -v  root /etc/passwd
-i: 忽略字符大小写        grep -i root /etc/passwd 
-n:显示匹配的行号      grep -n root /etc/passwd
-c: 统计匹配的行数        grep -c root /etc/passwd
-o: 仅显示匹配到的字符串  grep -o root /etc/passwd
-q: 静默模式,不输出任何信息  grep -q root /etc/passwd >/app/123.txt
-A #: after, 后#行  grep -2 root /etc/passwd
-B #: before, 前#行 grep -2 root /etc/passwd
-C #:context, 前后各#行 grep -2 root /etc/passwd
-e:实现多个选项间的逻辑or关系 grep –e ‘root‘ -e ‘guanjunhou‘  /etc/passwd 
-w:匹配整个单词 grep -w root /etc/passwd
-E:使用ERE 
-F:相当于fgrep,不支持正则表达式

9、字符匹配、通配符(符号匹配一大片~)

 .   匹配任意单个字符 
 []  匹配指定范围内的任意单个字符 
 [^] 匹配指定范围外的任意单个字符
 [:alnum:] 字母和数字 
 [:alpha:] 代表任何英文大小写字符,亦即 A-Z, a-z 
 [:lower:] 小写字母 
 [:upper:] 大写字母 
 [:blank:] 空白字符(空格和制表符) 
 [:space:] 水平和垂直的空白字符(比[:blank:]包含的范围广) 
 [:cntrl:] 不可打印的控制字符(退格、删除、警铃...) 
 [:digit:] 十进制数字 
 [:xdigit:]十六进制数字 
 [:graph:] 可打印的非空白字符 
 [:print:] 可打印字符 
 [:punct:] 标点符号

匹配次数

 * 匹配前面的字符任意次,包括0次 贪婪模式:尽可能长的匹配 grep root*
 .* 任意长度的任意字符 
 \? 匹配其前面的字符0或1次 
 \+ 匹配其前面的字符至少1次 
 \{n\} 匹配前面的字符n次 
 \{m,n\} 匹配前面的字符至少m次,至多n次 
 \{,n\} 匹配前面的字符至多n次 
 \{n,\} 匹配前面的字符至少n次

位置锚定:定位出现的位置

 ^ 行首锚定,用于模式的最左侧 
 $ 行尾锚定,用于模式的最右侧 
 ^PATTERN$  用于模式匹配整行 
 ^$  空行 
 ^[[:space:]]*$  空白行 
 \< 或 \b 词首锚定,用于单词模式的左侧 
 \> 或 \b 词尾锚定;用于单词模式的右侧 
 \<PATTERN\> 匹配整个单词

练习题:

* 1、找出ifconfig “网卡名” 命令结果中本机的IPv4地址

# ifconfig eth0 |head -2 |tail -1 |cut -d: -f2 |cut -d" " -f1

* 2、查出分区空间使用率的最大百分比值

#df -h |tr -s " " % |cut -d% -f5 |sort -nr |head -1

* 3、查出用户UID最大值的用户名、UID及shell类型

# cat /etc/passwd |cut -d: -f1,3,7 |sort -t: -k2 -n |tail -1

* 4、查出/tmp的权限,以数字方式显示

# stat /tmp | head -4 |tail -1 | cut -d ‘(‘ -f 2 | cut -d ‘/‘ -f 1
# stat -c %a /tmp/

* 5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小

# netstat -nt | tr -s ‘ ‘ | cut -d ‘ ‘ -f5 |grep -v "Add\|server" |cut -d: -f1 |sort |uniq -c
 练习题:head tail cat cut
1、找出ifconfig “网卡名” 命令结果中本机的IPv4地址 
2、查出分区空间使用率的最大百分比值
3、查出用户UID最大值的用户名、UID及shell类型
4、查出/tmp的权限,以数字方式显示
5、统计当前连接本机的每个远程主机IP的连接数,并按从大 到小排序
# ifconfig eth0 |head -2|tail -1|cut -d: -f2|tr -d [a-zA-Z]
# df |tr -s " " :|cut -d: -f5|head -2|tail -1
# cat /etc/passwd |sort -nt: -k3|tail -1|cut -d: -f1,3,7
# stat /tmp|head -4|tail -1|cut -d‘(‘ -f2 |cut -d"/" -f1
# netstat -nt |tr -s ‘ ‘ :|sort -nrt: -k3|head -1|cut -d: -f5

练习题:grep

1、显示/proc/meminfo文件中以大小s开头的行(要求:使用两 种方法)
2、显示/etc/passwd文件中不以/bin/bash结尾的行
3、显示用户rpc默认的shell程序
4、找出/etc/passwd中的两位或三位数
5、显示CentOS7的/etc/grub2.cfg文件中,至少以一个空白 字符开头的且后面存非空白字符的行 
6、找出“netstat -tan”命令的结果中以‘LISTEN’后跟任意多 个空白字符结尾的行 
7、显示CentOS7上所有系统用户的用户名和UID
8、添加用户bash、testbash、basher、sh、nologin(其shell 为/sbin/nologin),找出/etc/passwd用户名同shell名的行
# grep "^[sS]" /proc/meminfo
# grep -i "^s" /proc/meminfo
# grep "^S\|^s" /proc/meminfo
# grep -e ^s -e ^S  /proc/meminfo
# grep -v "/bin/bash$" /etc/passwd
# grep "^rpc\>" etc/passwd |cut -d: -f7
# grep "[[:digit:]]\{2,3\}" /etc/passwd
# cat grub.conf |grep "^[[:space:]]\+[^[:space:]]
# netstat -tan |grep "LISTEN[[:space:]]\+"
# cat /etc/passwd | cut -d ‘:‘ -f 1,3 | grep "\<[1-4]\?[0-9]\?[0-9]\>"
# cat /etc/passwd |grep "\(^.*\)\>.*\<\1$"
# cat /etc/passwd |egrep "(^.*)\>.*/\1$"

练习题:

1. Linux文件权限一共10位长度,分成四段,第三段表示的内容是: C

A 文件类型 B 文件所有者的权限 
C 文件所有者所在组的权限 D 其他用户的权限
# stat /app/123.txt       (-rw-r--r--)

2. 一个文件名字为rr.Z,可以用来解压缩的命令是:C

A tar B gzip C compress D uncompress

3. 在shell中变量的赋值有四种方法,其中,采用name=12的方法称:A

A 直接赋值 B使用read命令 
C 使用命令行参数 D使用命令的输出

4. 哪个命令可以从文本文件的每一行中截取指定内容的数据: D

A cp B dd C fmt D cut 
# cut -d: -f7 /etc/passwd

5. Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用哪个命令:  C

A cat B more C less D menu 
# cat\|more\|less etc/passwd

6. 对名为fido的文件用chmod 551 fido 进行了修改,则它的许可权是:D

A -rwxr-xr-x B -rwxr–r– C -r–r–r– D -r-xr-x--x  
-r-xr-x--x  (rwx=421)

7. 用ls –al 命令列出下面的文件列表, 哪个文件是符号连接文件: D

A -rw-rw-rw- 2 hel-s users 56 Sep 09 11:05 hello 
B -rwxrwxrwx 2 hel-s users 56 Sep 09 11:05 goodbey 
C drwxr–r– 1 hel users 1024 Sep 10 08:10 zhang
D lrwxr–r– 1 hel users 2024 Sep 12 08:12 cheng 
软连接前带l,索引还是1,硬链接索引+1

8. 在重新启动Linux系统的同时把内存中的信息写入硬盘,应使用哪个命令实现:D

A # reboot 
B # halt 
C # init 3 
D # shutdown –r now

9. 关闭linux系统(不重新启动)可使用哪个命令:B

A Ctrl Alt Del B halt C shutdown -r now D reboot

10.在vi编辑器中的命令模式下,键入哪个可在光标当前所在行下添加一新行:B

A 〈a〉; B 〈o〉; C 〈I〉; D A

11.在vi编辑器中的命令模式下,删除当前光标处的字符使用哪个命令:A

A 〈x〉; B 〈d〉;〈w〉; C 〈D〉; D 〈d〉;〈d〉;

12.在vi编辑器中的命令模式下,重复上一次对编辑的文本进行的操作,可使用哪个命令:C

A 上箭头 B 下箭头 C 〈.〉; D 〈*〉;

13.用命令ls -al显示出文件ff的描述如下所示,由此可知文件ff的类型为 : A

-rwxr-xr– 1 root root 599 Cec 10 17:12 ff 
A 普通文件 B 硬链接 C 目录 D 符号链接  (-普通文件d目录l“小写L”连接)

14.删除文件命令为:D

A mkdir B rmdir C mv D rm

15对文件进行归档的命令为:D

A dd B cpio C gzip D tar

16.改变文件所有者的命令为:C

A chmod 
B touch 
C chown 
D cat

17.在给定文件中查找与设定条件相符字符串的命令为:A

A grep 
B gzip 
C find 
D sort

18.建立一个新的空文件可以使用的命令为:D

A chmod 
B more 
C cp 
D touch

19.在下列命令中,不能显示文本文件内容的命令是:D

A more 
B less 
C tail 
D join

20. 设超级用户root当前所在目录为:/usr/local,键入cd命令后,用户当前所在目录为 :  B

A /home 
B /root 
C /home/root 
D /usr/local

21. 将光盘CD-ROM(hdc)安装到文件系统的/mnt/cdrom目录下的命令是:C

A mount /mnt/cdrom 
B mount /mnt/cdrom /dev/hdc 
C mount /dev/hdc /mnt/cdrom 
D mount /dev/hdc

22.将光盘/dev/hdc卸载的命令是:A

A umount /dev/hdc 
B unmount /dev/hdc 
C umount /mnt/cdrom /dev/hdc 
D unmount /mnt/cdrom /dev/hdc

23.在/home/stud1/wang目录下有一文件file,使用以下哪个可实现在后台执行命令,此命令将file文件中的内容输出到file.copy文件中:C

A cat file 〉;file.copy 
B cat 〉;file.copy 
C cat file > file.copy & 
D cat file 〉;file.copy &
时间: 2024-08-10 23:13:00

linux第二课的相关文章

跟阿铭学linux &nbsp; 第二课 &nbsp; Linux 文件和目录管理

2.1 系统目录结构 /root/.ssh/authorized_keys <man  tree>   查看指令的说明 <yum install -y tree > 安装tree 命令 <tree -L 2>      以树型显示目录,显示两层 Linux常用目录结构 /bin          存放常用的命令 /boot       启动时使用的核心文件 /dev        外部设备文件-鼠标.键盘等 /etc         系统配置文件 /home     用

跟阿铭学linux &nbsp; 第二课 &nbsp; Linux 文件和目录管理(2)-指令

PATH < echo $PATH>  //显示你的环境变量值 PATH 这个就是变量名, echo是用于在控制台显示信息的命令 $在这里是取得某个变量的值, PATH就是变量名 合起来就是在控制台显示PATH环境变量的值 [[email protected] ~]# echo $PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin < PATH=$PATH:/tmp/>         将/tmp路径加入

linux 第二课

一.命令行基础 命令格式基本用法命令字 [选项] - [参数1] [参数2]-[ ] 表示里面的内容可有可无在执行一个命令的时候,命令字必须存在,选项和参数可有可无命令字 选项 参数之间必须有空格 各组件解析选项:用来调控执行方式单个字符一般用-单词一般用--eg:# ls -l# ls --help*参数:命令的操作对象,如文档的存放路径.用户名等2.命令行编辑技巧tab键功能:命令或者路径的补齐,如果输入的内容唯一标识某一个命令或者路径,tab一次会自动补齐.如果不唯一则tab2次显示出以输

Linux学习笔记 第二课

Linux第二课 一.yum命令使用 二.查看CentOS版本和内核 三.grub添加密码,自定义title,修改进度条   四.单用户模式   五.救援模式   六.Liunx启动过程                 一.yum 命令使用 1.[[email protected]~]# yum list 2.[[email protected]~]# yum -y intall rpm1 rpm2......     //  -y 不询问安装 3.[[email protected]~]# y

【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握

内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:"小编,你为什么每次都要起这么非主流的标题呢?不能愉快地玩耍么?" 小编:"那我问你,老子他为什么要写<道德经>咧?" 读者:"为什么咧?" 小编:"因为老子愿意!" 开个小玩笑轻松一下 O(∩_∩)O~ 没办法,不能不激动,因为我们终于来到了这一刻,

【Linux探索之旅】第三部分第二课:流、管道、重定向,三管齐下

内容简介 1.第三部分第二课:流.管道.重定向,三管齐下 2.第三部分第三课预告:监视系统活动,滴水不漏 流.管道.重定向,三管齐下 这一课我们来学一些非常有用的内容,而且相当有意思,而且内容很多,而且有可能颠覆你的三<观>(毕竟三管齐下,不颠覆三观也难). 今天的标题中的三个名称,听上去就怪怪的.什么流,管道,重定向,都啥玩意啊.不过希望学完这课,大家能够有拨云见雾的感觉. 到目前为止,我们已经学习了不少Linux的命令了,也已经比较熟悉命令行的用法了.其最基本用法是这样的: 在终端输入命令

【Linux探索之旅】第一部分第二课:下载Linux,免费的噢

 内容简介 1.第一部分第二课:下载Linux,免费的噢 2.第一部分第三课预告:测试并安装Ubuntu 下载Linux,免费的噢 大家好,上一课我们认识了非常"霸气侧漏"的Linux操作系统. 也知道了它的吉祥物:企鹅,叫Tux(燕尾服的意思),而且它是一只雄性的企鹅,爷们,24K纯滴.(这个不重要好不,小编...) 我们还提到了什么是操作系统,Linux的历史和不同的Linux发行版.也确定了我们后续课程要使用的Linux发行版:Ubuntu.幸好,在各个Linux发行版(每个发

Kali Linux Web 渗透测试视频教程— 第二课 google hack 实战

Kali Linux Web 渗透测试— 第二课 代理简介 文/玄魂 课程地址: http://edu.51cto.com/course/course_id-1887.html 目录 shellKali Linux Web 渗透测试—... 1 第二课代理简介... 1 课程目录... 2 Proxy基本原理... 2 正向代理(Forward Proxy)3 反向代理(reverse proxy)... 3 透明代理(transparente proxy)... 3 Kali linux中的代

Linux探索之旅 | 第五部分第二课:一入Shell深似海,酷炫外壳惹人爱

-- 简书作者 谢恩铭 转载请注明出处 内容简介 前言 Shell是什么? 我们的第一个Shell脚本 运行Shell脚本 总结 第五部分第三课预告:变量在手,Shell不愁 1. 前言 上一课是 Linux探索之旅 | 第五部分第一课:Vim岂是池中物,宝剑锋从磨砺出 . 现在,我们已经学习了 Vim 这样强大的文本编辑器.相信我,Vim 对我们之后的课程会非常有用. 这一课我们可以进入第五部分的重心了:Shell 编程. 什么是Shell呢? 首先,shell 是英语"壳,外壳"的