一、目录操作

pwd    查看当前工作目录
clear    清除屏幕
cd ~   当前用户目录
cd /   根目录
cd -   上一次访问的目录
cd ..   上一级目录

查看目录内信息

ll    查看当前目录下内容(LL的小写)

创建目录

mkdir aaa  在当前目录下创建aaa目录,相对路径;
mkdir ./bbb  在当前目录下创建bbb目录,相对路径;
mkdir /ccc  在根目录下创建ccc目录,绝对路径;

递归创建目录(会创建里面没有的目录文件夹)

mkdir -p temp/nginx 

搜索命令

find / -name 'b'  查询根目录下(包括子目录),名以b的目录和文件;
find / -name 'b*'  查询根目录下(包括子目录),名以b开头的目录和文件; 

重命名

mv 原先目录 文件的名称   mv tomcat001 tomcat 

剪切命令(有目录剪切到制定目录下,没有的话剪切为指定目录)

mv /aaa /bbb      将根目录下的aaa目录,移动到bbb目录下(假如没有bbb目录,则重命名为bbb);
mv bbbb usr/bbb  将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为bbb;
mv bbb usr/aaa   将当前目录下的bbbb目录,移动到usr目录下,并且修改名称为aaa;

复制目录

cp -r /aaa /bbb   将/目录下的aaa目录复制到/bbb目录下,在/bbb目录下的名称为aaa
cp -r /aaa /bbb/aaa  将/目录下的aa目录复制到/bbb目录下,且修改名为aaa;

强制式删除指定目录

rm -rf /bbb   强制删除/目录下的bbb目录。如果bbb目录中还有子目录,也会被强制删除,不会提示;

删除目录

rm -r /bbb   普通删除。会询问你是否删除每一个文件

二、文件操作删除

rm -r a.java  删除当前目录下的a.java文件(每次回询问是否删除y:同意)

强制删除

rm -rf a.java  强制删除当前目录下的a.java文件
rm -rf ./a*   强制删除当前目录下以a开头的所有文件;
rm -rf ./*   强制删除当前目录下所有文件(慎用);

创建文件

touch testFile

递归删除.pyc格式的文件

find . -name '*.pyc' -exec rm -rf {} ;

打印当前文件夹下指定大小的文件

find . -name "*" -size 145800c -print

递归删除指定大小的文件()

find . -name "*" -size 145800c -exec rm -rf {} ;

递归删除指定大小的文件,并打印出来

find . -name "*" -size 145800c -print -exec rm -rf {} ;

"." 表示从当前目录开始递归查找

“ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件

" -type f "查找的类型为文件

"-print" 输出查找的文件目录名-size 指定文件的大小

-exec rm -rf {} ; 递归删除(前面查询出来的结果)

split拆分文件

split命令:可以将一个大文件分割成很多个小文件grep上下几行,有时需要将文件分割成更小的片段,比如为提高可读性,生成日志等。

使用split命令将上面创建的date.file文件分割成大小为10KB的小文件:

[root@localhost split]# split -b 10k date.file 
[root@localhost split]# ls
date.file  xaa  xab  xac  xad  xae  xaf  xag  xah  xai  xaj

文件被分割成多个带有字母的后缀文件,如果想用数字后缀可使用-d参数,同时可以使用-a 来指定后缀的长度:

[root@localhost split]# split -b 10k date.file -d -a 3
[root@localhost split]# ls
date.file  x000  x001  x002  x003  x004  x005  x006  x007  x008  x009

为分割后的文件指定文件名的前缀:

[root@localhost split]# split -b 10k date.file -d -a 3 split_file
[root@localhost split]# ls
date.file  split_file000  split_file001  split_file002  split_file003  split_file004  split_file005  split_file006  split_file007  split_file008  split_file009

使用-l选项根据文件的行数来分割文件,例如把文件分割成每个包含10行的小文件:

split -l 10 date.file

三、文件内容操作(查看日志,更改配置文件)修改文件内容

vim a.java    进入一般模式
i(按键)     进入插入模式(编辑模式)
ESC(按键)    退出
:wq    保存退出(shift+:调起输入框)
:q!   不保存退出(shift+:调起输入框)(内容更改)
:q    不保存退出(shift+:调起输入框)(没有内容更改)

文件内容的查看

cat a.java  查看a.java文件的最后一页内容;
more a.java  从第一页开始查看a.java文件内容,按回车键一行一行进行查看,
                    按空格键一页一页进行查看,q退出;
less a.java  从第一页开始查看a.java文件内容,按回车键一行一行的看,
                    按空格键一页一页的看,支持使用PageDown和PageUp翻页,q退出;

总结下more 和 less的区别:

less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示

less不必读整个文件,比more更快

less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容.

由于more不能后退.

实时查看文件后几行(实时查看日志)

tail -f a.java   查看a.java文件的后10行内容;

前后几行查看

head a.java    查看a.java文件的前10行内容;
tail -f a.java   查看a.java文件的后10行内容;
head -n 7 a.java  查看a.java文件的前7行内容;
tail -n 7 a.java  查看a.java文件的后7行内容;

文件内部搜索指定的内容

grep under 123.txt   在123.txt文件中搜索under字符串,大小写敏感,显示行;
grep -n under 123.txt  在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;
grep -v under 123.txt  在123.txt文件中搜索under字符串,大小写敏感,显示没搜索到的行;
grep -i under 123.txt  在123.txt文件中搜索under字符串,大小写敏感,显示行;
grep -ni under 123.txt  在123.txt文件中搜索under字符串,大小写敏感,显示行及行号;

终止当前操作

Ctrl+c和Ctrl+z都是中断命令,但是作用却不一样。

ctrl+z
ctrl+c

重定向功能

可以使用 > 或 < 将命令的输出的命令重定向到test.txt文件中(没有则创建一个)

echo 'Hello World' > /root/test.txt

版权声明:本文为CSDN博主「」的原创文章grep上下几行,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注