Linux常用命令

Linux常用命令

新建命令
新建目录:mkdir [option] 目录名 mkdir linux
新建层级目录: mkdir -p aaa/bbb/ccc
新建文件:touch linux
修改命令
修改文件名:mv aaa bbb
移动文件:mv 源文件 目标文件
复制文件:cp file1 file2
cp -r nginx.conf nginx.conf.20141127
cp -r .conf /etc/nginx/conf.d/
比较文件:diff file1 file2
删除命令
删除文件:rm [option] filename --h可看参数
查看已删除但是未释放空间的文件: lsof | grep deleted
删除已删除但是未释放空间的文件:lsof | grep deleted | awk '{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 2}̲' | xargs -I {}…i-[0-9] :以$i开头后面跟着-[0-9]任意一个数字)
-v:不包括什么:ps -ef grep cpcas| grep -v grep 不统计grep的pid
上传下载
上传文件:rz -be (运行该命令会弹出一个文件选择窗口,从本地选择文件上传到服务器(receive))
下载文件:sz (将选定的文件发送(send)到本地机器)
外网下载:yum install nginx yum下载安装nginx yum install svn
远程拷贝
远程下载:wget $fulftp --ftp-user=aaa --ftp-password=bbb
远程拷贝:scp -r username@ip:filepath localfilepath
scp -r work@192.168.118.10:/opt/web/Linux/
./
远程拷贝限速1M:scp -r -l 1000 data work@10.9.130.52:/opt/scf2/
远程登录:ssh work@192.168.117.110
退出登录:exit
远程拷贝nc传输性能优于scp并且没有权限
从server1拷贝文件到server2上。需要先在server2上,,用nc激活监听
server2上运行: nc -l 1234 > text.txt nc -l 5555 |tar -zxvf - ./
server1上运行: nc 192.168.10.11 1234 < text.txt tar -zcf - ./ |nc $onlineIp 5555
注:server2上的监听要先打开

压缩解压命令
压缩:
tar -zcvf /home/work/test.tar.gz ./*
tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg
tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz
rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux
zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux
解压:
tar -xvf file.tar //解压 tar包
tar -xzvf file.tar.gz //解压tar.gz
tar -xjvf file.tar.bz2 //解压 tar.bz2
tar -xZvf file.tar.Z //解压tar.Z
unrar e file.rar //解压rar
unzip file.zip //解压zip
Linux下的定时任务
查看定时任务:crontab -l
定时任务编写: crontab -e
在这里插入图片描述

vi编辑命令
进入vim界面后点击i进入插入模式
点击esc退出插入模式
插入: i:当前光标前插入
a:当前光标后插入
I:行首插入
A:行尾插入
o:当前行后插入新行
O:当前行前插入新行
删除:
dnd:删除当前行起n行 dd删除当前行
cw:删除单词
x:删除当前光标字符
X:删除光标前一个字符
复制:
yny:复制当前行起的n行 yy复制当前行
yw:复制一个单词
p:粘贴至当前行后
P:粘贴至当前行首
替换:
😒/str1/str2/g 替换当前行str1为str2,加g表示替换所有
:m,ns/str1/str2/g 替换第m行至第n行的str1为str2
:%s/str1/str2/g 替换所有行的str1为str2
%s/192/182/g全部替换 %s/10.9.198.122/10.9.193.22/g
gg跳至文件首
ngg跳至第n行
G跳至文件尾
w 跳至下一个单词
b 跳至前一个单词
u 撤销上一步操作
ctrl+r重做前一个指令
ctrl+v进入可视模式
:split filename 文件切割 ctrl+w进行文件切换
:set nonu:删除行号
:set number:设置行号
Linux下的性能查看命令
(相关详细的性能查找方式后续会有专门文章整理梳理)
查看磁盘:df[查看服务器内存使用情况 df -h易看,可读]
查看进程:top[查看服务器的各种指标] shift+p按照cpu排序
查看内存:free -g
监控系统资源:dstat
在这里插入图片描述
查看GC状态:jstat -gcutil 20568
查看当前目录下各个文件占用的内存大小:du -sh *
查看进程的详细信息:ps
查看系统io负载:iostat
查看进程,虚拟内存,磁盘,CPU活动的统计报告:vmstat
查看端口连接数:netstat -an|grep port|wc -l
查看进程打开的连接数:lsof –p pid |wc –l
查看linux最大句柄数:ulimit -n

整体查看:ps -eo pmem,pcpu,rss,vsize,args | sort -k 1 -r | less
在这里插入图片描述

网络操作
检查网络是否联通:ping [option]ip地址
查看自身的网络情况:netstat
netstat -anp | grep pid
netstat -anp|grep 8087 |grep -v TIME_WAIT
netstat -antp |grep 16223 查看链接方
telnet: ip地址 端口
telnet 127.0.0.1 26223 count:查询qps/time:查询请求query
查找端口:lsof -i:8116
停止对应端口:fuser -k 80/tcp
查找机器所有的服务端口:netstat -tulpn
系统权限设置
权限:useradd[添加用户],passwd[添加密码],groupadd[添加组],chown,chmod[文件权限],su,sudo[执行]
chmod -u work +x 给当前用户添加可执行权限
chown work:work /tmp 将tmp目录下的文件全部改成work权限–更改目录
chmod 777 /tmp/test.txt 将test的文件权限设置成都可执行–更改文件
修改权限:chmod 772 文件 chmod -r 772 aa/ 目录 chown -R work:work /opt/web/
rwx:当前用户 rwx:数组 rwx:其他用户
其他命令
清屏指令:clear
建立软连接:
ln -sf aaa.key.online bbb.key 建立软连接,让新建的文件指向 onlie文件
history 100查看历史指令前100条
Linux下的>和>>的区别:
“>” 重定向:直接把内容生成到指定文件,会覆盖源文件中的内容,还有一种用途是直接生成一个空白文件,相当于touch命令
”>>”追加:尾部追加,不会覆盖掉文件中原有的内容
2>&1 &
bash中0,1,2三个数字分别代表STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO,即标准输入(一般是键盘),标准输出(一般是显示屏,准确的说是用户终端控制台),标准错误(出错信息输出)。
输入输出重定向:cat>cat.txt 输入重定向:在命令中指定具体的输入来源 ls<ls.txt 输出重定向:指定具体的输出目标以替换默认的标准输出
默认输入只有一个(0,STDIN_FILENO),而默认输出有两个(标准输出1 STDOUT_FILENO,标准错误2 STDERR_FILENO)。因此默认情况下,shell输出的错误信息会被输出到2,而普通输出信息会输出到1。但是某些情况下,我们希望在一个终端下看到所有的信息(包括标准输出信息和错误信息)这时就用2>&1 & ( 2>&1就是用来将标准错误2重定向到标准输出1中的。此处1前面的&就是为了让bash将1解释成标准输出而不是文件1。至于最后一个&,则是让bash在后台执行)
date的使用:
Linux下输出date日志:
echo >date client_errlog.log.$(date +"%Y%m%d") date
–color 标红查找的内容

练习题

1、在/home/work/dump目录下创建一个test文件夹
mkdir -p /home/work/dump/test
2、在/home/work/dump/test文件夹中创建一个config.xml文件
cd /home/work/dump/test ;
touch config.xml
3、修改/home/work/dump/test 文件下的config.xml文件的执行权限,让其当前用户具有可读可写可执行权限,其他均只有只读权限
chmod 744 /home/work/dump/test/config.xml
4、将/home/work/dump/test目录下的全部文件变成work属主权限
chown work:work /home/work/dump/test/*
5、查看/home/work/dump/test目录下的各个文件占用的内存大小
cd /home/work/dump/test
du -sh *
6、查看/home/work/dump/test目录下的隐藏文件
ls -a /home/work/dump/test/
7、修改/home/work/dump/test目录下的config.xml文件名为scf_config.xml
mv config.xml scf_config.xml
8、cat/tail/less/more/head命令的区别
cat:全文打开,将文件内容全部显示
tail:获取实时数据
less:可以上下翻,从头开始显示
more:只能向下翻;从头开始显示
head:显示文件的前几行
9、以命令的方式将config.xml下载到自己的桌面上
cd /home/work/dump/test/
sz config.xml
10、上传和下载文件的命令
上传文件:rz -be
下载文件:sz
11、将/home/work/dump/test目录下所有文件打包成online.tag.gz
tar -zcvf online.tag.gz /home/work/dump/test/*
12、解压online.tag.gz文件
tar -zxvf online.tag.gz
13、以work权限远程拷贝192.168.137.2机器上/home/work/dump
/test目录下的所有文件到当前目录下
scp -r work@192.168.137.2:/home/work/dump/test/* ./
14、查看Linux下系统的内存、磁盘、cpu负载的指令
内存:free
磁盘:df
负载:top
15、如何查看定时任务,如何编辑定时任务
查看:crontab -l
编辑:crontab -e
16、查看当前机器的所有启动的tomcat进程
ps -ef |grep tomcat
17、查看当前机器的8080端口是否被占用
netstat -anp |grep 8080
lsof -i:8080
18、Linux下的>和>>的区别
‘’>"重定向:直接把内容生成到指定文件,会覆盖源文件中的内容,还有一种用途是直接生成一个空白文件,相当于touch命令
">>"追加:尾部追加,不会覆盖掉文件中原有的内容
19、在vim模式下如何查找“imc”字段
:/imc
20、在vim模式下如何批量替换:将123字段全部改成qwe
:/123/qwe/g
21、在vim模式下显示当前文件的所有行号
:set number
22、在vim模式下光标快速定位到当前行首,行尾
行尾:A
行首:I
23、统计log文件中Exception出现的个数
cat log|grep ‘Exception’|wc -l
24、实时查看进程消耗资源:
top -b -d 1|grep process_name
25、实时查看最新日志滚动:
tail -f log|grep error &>debug
26、查看网络端口占用:
netstat -tnlpa|grep port_num
27、在形如‘xxx(yyy)’的字符串中提取yyy字符串:
echo “xxx(yyy)” | grep -F ‘[()]’ ‘{print $2}’
echo “xxx(yyy)” |grep -oE ‘(.)’ |grep -oP '\w
echo “xxx(yyy)” |grep -oP ‘(?<=[(])\w*’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值