linux知识点
一.linux中查找文件内容的命令(ls ,find ,locate,cat,more,less,grep ,head,tail)
1.find(用的较多)
1.以名字查找
find / -name passwd
find /data/ -name “*.txt””:查找/data/目录以.txt结尾的文件(注意使用通配符是时需要加引号)
2.以类型查找
find /bin -type l
b - 块设备文件 。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。(记住)
f - 普通文件。
find/data/- type l:查找/data/目录下的链接文件
3.按照时间来查找
-mtime -mmin
-ctime -cmin
-atime -amin
-mtime -n +n 按照文件的更改时间来查找文件, - n表示文件更改时间距现在n天以内,+ n表示文件更改时间距现在n天以前
find /tmp -mtime +7 -ls`
4.按照文件大小来查找(size)
5.多种方式进行混合运算、
find /tmp ( -size +1k -a -size -10M -a -mmin -30 -a -type f ) -ls
find \( -size +1k -a -size -10M -a -mmin -30 -a -type f \) -exec rm -rf {} \
注意:需要使用圆括号括起来,并且开头需要进行空行
a:and o:or !:非
find工具-perm参数
Find /data/ -perm 755:查找/data/目录权限为755的文件或者目录
exec表示执行{}表示前面的那个一串, \代表结束标记
find ./ -maxdepth 1 -name "*.sh" -exec rm -r {} \;
find /tmp \( –type f -a -mtime -1 -a -size +5k \) -exec rm -f {} \;
cat: 连接几个文件
从键盘创建文件
查看文件
二。通配符
-
*:代表任意长度的字符串
-
?:代表任意单个字符;
-
[c1-c2] :表示匹配c1到2中得任意一个
-
#:配置文件注释;
-
|:管道;
-
~:当前用户的家目录;
-
-:上一次所在的路径;
-
$:变量前面需要加的符号;
-
/:路径分隔符;
三;输入输出重定向以及管道符以及打包压缩文件
1:输入输出重定向
> >> :输出重定向
< << :输入重定向
echo -e "1 apple\n 2 pear\n 3 banana"
其中-e表示输出转义字符
echo -e "1 apple\n 2 pear\n 3 banana" >> fruit.txt
tr是translate的简写,它可以用一个字符串来替换另一个字符串
sort是linux中用于文本排序的命令
2:管道符(|)
与管道符经常连用得命令有grep ,cut ,head ,tail ,top ,less,more, wc ,tr, sort
cut: 文本切割
wc:文本统计
cat ~/install.log |cut -c1,2
表示切割主目录下名为install.log得文件得第一列和第二列字符
ls -al /bin /sbin 2> /dev/null |wc -l
表示统计目录里包含字母l的行数
ls -al ~|cut -c 1 |grep "d" |wc -l
先找到根目录下的所有文件,然后切割出第一列,查找出包含d的行,然后统计包含l的行数
3;打包和压缩
gzip 压缩文件的默认后缀名是.gz
gzip解压文件时默认会删除压缩
gzip命令可以调节文件压缩的比例。
用gzip命令压缩文件后,默认会删除源文件
tar -cf all.tar *.jpg
这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
# tar -tf all.tar
这条命令是列出all.tar包中所有文件,-t是列出文件的意思
# tar -xf all.tar
这条命令是解出all.tar包中所有文件,-x是解开的意思
tar中使用-z这个参数来调用gzip。下面来举例说明一下:
# tar -czf all.tar.gz *.jpg
这条命令是将所有.jpg的文件打成一个tar包,并且将其用gzip压缩,生成一个gzip压缩过的包,包名为all.tar.gz
# tar -xzf all.tar.gz
这条命令是将上面产生的包解开。
gzip:压缩文件
gzip [filename1] [filename2]
.解压缩文件
在gzip命令中使用’d’标志。
$ gzip -d [filename]