Linux常用命令

一、目录操作

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

 查看目录内的信息

ls    查看目录下的目录名和文件
ll    查看目录下的目录名和文件的详细信息
ls -al    和ll类似

创建目录

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

递归创建目录

mkdir -p temp/nginx 

搜索命令

find / -name 'b'		查询根目录下(包括子目录),名以b的目录和文件;
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 /aa /bbb/aaa		将/目录下的aa目录复制到/bbb目录下,且修改名为aaa;

强制式删除指定目录

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

删除目录

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

查看树状目录结构

tree test01/

 

1、批量操作

需要采用{}进行参数的传入了

mkdir {dirA,dirB}  # 批量创建测试目录
touch dirA/{A1,A2,A3}     # dirA创建三个文件dirA/A1,dirA/A2,dirA/A3

二、文件操作

删除

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

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

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

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

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

"." 表示从当前目录开始递归查找
“ -name '*.exe' "根据名称来查找,要查找所有以.exe结尾的文件夹或者文件
" -type f "查找的类型为文件
"-print" 输出查找的文件目录名
-size 145800c 指定文件的大小
-exec rm -rf {} \; 递归删除(前面查询出来的结果)

split拆分文件

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

 b:值为每一输出档案的大小,单位为 byte。
-C:每一输出档中,单行的最大 byte 数。
-d:使用数字作为后缀。
-l:值为每一输出档的行数大小。
-a:指定后缀长度(默认为2)。

 三、文件内容操作

修改文件内容

vim a.java   	 进入一般模式
i(按键)   		 进入插入模式(编辑模式)
ESC(按键)  		 退出
:wq 			 保存退出(shift+:调起输入框)
:q!			 不保存退出(shift+:调起输入框)(内容有更改)(强制退出,不保留更改内容)
:q				 不保存退出(shift+:调起输入框)(没有内容更改)
dd               删除当前行(编辑模式下)
ndd              删除n行(编辑模式下)
/string          搜索字符串(编辑模式下), 按n查找下一个,N上一个,/str$表示匹配行尾的str, 在查 
                 找模式中加入\c表示大小写不敏感查找,\C表示大小写敏感查找,例如:/foo\c将会查找所
                 有的"foo","FOO","Foo"等字符串
:s               (substitute)命令用来查找和替换字符串,语法::{作用范围}s/{目标}/{替换}/{替换
                 标志}; 例如:%s/foo/bar/g会在全局范围(%)查找foo并替换为bar,所有出现都会被替换                    
                 (g),:s/foo/bar/g 替换当前行,:%s /foo/bar /g 全局替换
:%d              %是匹配所有行,d是删除的意思,改命令将清空打开的文件的内容
:$               跳到文件尾部
:n               跳到n行
u                撤销上一步的操作
ctrl+r           恢复上一步被撤销的操作

文件内容的查看

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

总结下more 和 less的区别:

  1. less可以按键盘上下方向键显示上下内容,more不能通过上下方向键控制显示
  2. less不必读整个文件,加载速度会比more更快
  3. less退出后shell不会留下刚显示的内容,而more退出后会在shell上留下刚显示的内容.
  4. 由于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字符串,大小写敏感,显示行及行号;

四、压缩和解压(tar)

命令格式: tar [参数] 文件
常用参数:
x: 从压缩的文件中提取文件 (解压)
c: 建立新的压缩文件(加压)
t:显示压缩的文件
v: 显示操作过程
z: 通过gzip指令来处理备份文件

示例

tar -czvf test.tar.gz a.c 作用: 压缩 a.c文件为test.tar.gz

tar -tzvf test.tar.gz 作用: 列出test.tar.gz中包含的文件。

tar -xzvf test.tar.gz 作用: 解压文件

tar --exclude=abc/1.txt -zcvf abc.tgz abc 作用: 将文件 abc 进行压缩时,排除1.txt,压缩后的文件名为 abc.tgz

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值