1.1 tr
[root@oldgirl ~]# cat test.txt
Welcome to oldboy training.
we are excellent.
[root@oldgirl ~]# tr "w""9" < test.txt
Welcome to oldboy training.
9e are excellent.
[root@oldgirl ~]# tr w 9 < test.txt
Welcome to oldboy training.
9e are excellent.
所有字符都尽量加双引号。
问题:
[root@oldgirl ~]# cat test.txt
Welcome to oldboy training.
we are excellent.
让每个字符一行。
1.2 grep
root@oldgirl ~]# cat test.txt
Welcome to oldboy training.
we are excellent.
[root@oldgirl ~]# grep "oldboy"test.txt
Welcome to oldboy training.
[root@oldgirl ~]# grep -v"oldboy" test.txt
we are excellent.
[root@oldgirl ~]# cat test.txt
Welcome to oldboy training.
we are excellent.
[root@oldgirl ~]# grep -i "w"test.txt
Welcome to oldboy training.
we are excellent.
[root@oldgirl ~]# grep "w" test.txt
we are excellent.
[root@oldgirl ~]# grep -iv "w"test.txt
[root@oldgirl ~]# grep "oldboy"test.txt
Welcome to oldboy training.
oldboy1
[root@oldgirl ~]# grep -o"oldboy" test.txt
oldboy
oldboy
[root@oldgirl ~]# grep -E"to|are" test.txt
Welcome to oldboy training.
we are excellent.
[root@oldgirl ~]# egrep "to|are"test.txt
Welcome to oldboy training.
we are excellent.
考题:在/data目录下创建oldboy.txt,并增加"I am studying linux."一行内容。
该题有多种解题方法,下面来一一分析讲解。
方法1:
[root@oldgirl ~]# ls -ld /data
ls: cannot access /data: No such file ordirectory
[root@oldgirl ~]# mkdir /data -p
[root@oldgirl ~]# ls -ld /data
drwxr-xr-x. 2 root root 6 Mar 13 10:20/data
[root@oldgirl ~]# vim /data/oldboy.txt
I am studying linux.
[root@oldgirl ~]# cat /data/oldboy.txt
I am studying linux.
方法2:
[root@oldgirl ~]# mkdir -p /data
[root@oldgirl ~]# echo "I am studyinglinux." >/data/oldboy.txt
[root@oldgirl ~]# cat /data/oldboy.txt
I am studying linux.
方法3:
cat>/data/oldboy.txt <
I am studying linux.
I am studying linux.
I am studying linux.
EOF
#<==EOF成对出现,后面这个顶格。
1.3重定向符号的核心知识
>或1>标准输出重定向,箭头方向就是数据流向,
把左边的数据流向到右边,会清空右边之前的数据。
清空前备份:
[root@oldgirl ~]# cp test.txt{,.ori}
[root@oldgirl ~]# cp test.txt test.txt.ori
清空文件:
[root@oldgirl ~]# >test.txt
[root@oldgirl ~]# cat test.txt
echo "I am studying linux.">/data/oldboy.txt
>>或1>>追加输出重定向,内容追加到文件尾部。
[root@oldgirl ~]# echo "I am studyinglinux." >>/data/oldboy.txt
[root@oldgirl ~]# cat /data/oldboy.txt
I am studying linux.
I am studying linux.
I am studying linux.
<或0<标准输入重定向,箭头方向就是数据流向,
standard input, writing to standard output.
标准 输入 写 到 标准 输出
[root@oldboyedu ~]# tr "am""01"
I 01 studying linux.
I 01 studying linux.
I 01 studying linux.
I 01 studying linux..
<<或0<<追加输入重定向,箭头方向就是数据流向,
2> 标准错误输出重定向,箭头方向就是数据流向,把左边的【报错】输出到右边(覆盖)。
2>> 标准错误追加输出重定向,箭头方向就是数据流向,把左边的【报错】输出到右边(追加)。
固定定义:
数字1 标准输出(standard output)
数字0 标准输入(standard input)
数字2 错误输出(error output)
1.3.1补重定向
[root@fxh ~]# cat test.txt #查看test.txt里的文件内容
dede
aa
bb
[root@fxh ~]# echo cc>test.txt #替换test.txt里的文件内容
[root@fxh ~]# cat test.txt
cc
[root@fxh ~]# echo ee>>test.txt #给test.txt文件里追加东西
[root@fxh ~]# cat test.txt
cc
ee
[root@fxh ~]# cat>>test.txt<
> kk
> gg
> edd
[root@fxh ~]# cat test.txt
cc
ee
kk
gg
[root@fxh ~]# cat >test.txt<
> vv
> edd
[root@fxh ~]# cat test.txt
vv
[root@fxh ~]#
1.4文件属性
[root@oldboyedu ~]# ls -lhi
total 24K
33631870 -rw-r--r--. 1 root root 4 Mar 13 11:29 a.txt
33631871 -rw-r--r--. 1 root root 30 Mar 13 11:28 b.txt
16777289 drwxr-xr-x. 2 root root 64 Mar 7 11:57 data1
33631866 -rw-r--r--. 1 root root 712 Mar 1115:58 grep.txt
33631863 -rw-r--r--. 1 root root 12 Mar 13 11:23 oldboy.txt
16964029 drwxr-xr-x. 2 root root 6 Mar 7 10:56 test
33631865 -rw-r--r--. 1 root root 24 Mar 13 11:46 test.txt
33631864 -rw-r--r--. 1 root root 54 Mar 13 10:26 test.txt.ori
1 2 3 4 5 6 7 8 9 10
共10列
第一列:inode索引节点编号(相当于人的身份证、家庭住址,全国唯一);
系统读取文件时首先通过文件名找到inode号码,然后才能读取到文件内容。
第二列:文件类型及权限。这一列共11个字符,
其中第一个字符为文件类型,
随后的9个字符为文件的对应权限,
最后一个字符点号“.”是和selinux有关的一个标识;
第三列:硬连接数
第四列:属主:文件的拥有者,用户
第五列:属组:文件属于的组,用户组
第六列:大小
第七列:月份
第八列: 日
第九列:时间
第十列:文件名